Üzenetek megjelenítése

Ez a szekció lehetővé teszi a felhasználó által írt összes hozzászólás megtekintését. Vedd figyelembe, hogy csak azokba a fórumokba írt hozzászólásokat látod, amelyekhez hozzáférésed van.


Témák - Robi222

Oldalak: [1] 2 3 ... 5
1
Segítségkérés / MySQL Login Hiba
« Dátum: 2016. július 06. - 11:05:09 »
Hali!
Próbálgatom a bejelentkezés rendszert megcsinálni, mivel a regisztráció már működik, viszont ez nem akar menni.
Ez szerver oldalon van, ez maga a bejelentkezés:
 

function onLogin ( player, user, pass )
local login = mysql_query(handler,\"SELECT * FROM accounts WHERE pName = \'\"..mysql_escape_string( handler, user )..\"\' AND pPassword = \'\"..mysql_escape_string( handler, sha256(pass) )..\"\';\")
if login then
local rows = mysql_num_rows(login)
if rows == 1 then
   outputChatBox(\"* You successfully logged in your account!\", player, 255, 255, 255)
else
   outputChatBox(\"* Login failed!\", player, 255, 255, 255)
end
mysql_free_result(login)
end
end
addEvent( \"onLogin\", true )
addEventHandler( \"onLogin\", getRootElement(), onLogin )

 
Majd ezzel meghívom kliens oldali szkriptben:
 

triggerServerEvent ( \"onLogin\", getRootElement(), getLocalPlayer())

 
Viszont mikor beírom pl. hogy /login admin
akkor ilyen errort ír ki a konzol ablakba:
 

bad argument 1# to \'mysql_escape_string\' (mysql handler expected, got userdata)

 
Ez mitől lehet ? :( Előre is köszönöm!

2
Segítségkérés / MTA Gui készítés
« Dátum: 2016. július 06. - 08:44:46 »
Jó Reggelt! :)
Olyan kérdésem lenme, hogy GUI-t mivel ajánlott készíteni? Úgy értem dxGui vagy mivel ? esetleg valami segítséget is küldhettek nem gond ha angol, előre is köszi! :)

3
Segítségkérés / MySQL Regisztráció hiba ?
« Dátum: 2016. július 04. - 15:23:05 »
Hali!
Próbálgatok összebarkácsolni MTA -ban egy alap MySQL Reg/Log rendszert, de nem jön össze. Így próbáltam, a modul betölt, amikor beírom pl. hogy \"/register admin\" akkor a \"mysql_escape_string\" -re dobja az errort a konzolban,valami olyasmit hogy \"1# bad argument\". MySQLre kapcsolódik, mysql kapcsolódási adatokat is jól megadtam. Mi lehet a gond ? :( Nagyon megköszönném annak aki segít. :)
 

local MYSQL_HOST = \"host\"
local MYSQL_DATABASE = \"db\"
local MYSQL_USER = \"user\"
local MYSQL_PASSWORD = \"pass\"
local MYSQL_PORT = 3306
handler = dbConnect(\"mysql\",\"dbname=\"..MYSQL_DATABASE..\";host=\"..MYSQL_HOST, MYSQL_USER,MYSQL_PASSWORD,\"charset=utf8\")
if handler then
outputServerLog(\"MySql CONNECTED!\")
else
outputServerLog(\"Mysql NOT CONNECTED!\")
end
function RegisterPlayer(playerSource, commandName, _password)
  local name = mysql_escape_string(handler, getPlayerName(playerSource)) -- Escape the strings to avoid SQL-Injection
  local password = mysql_escape_string(handler, _password)
 
  local query = \"INSERT INTO accounts SET pName=\'\" .. name .. \"\', pPassword=MD5(\'\" .. password .. \"\')\"
  if (mysql_query(handler, query)) then
    outputChatBox(\"Account created successfuly with id #\" .. mysql_insert_id(handler), playerSource)
  else
    outputChatBox(\"An error has occured when trying to create your account.\", playerSource)
  end
end
addCommandHandler(\"register\", RegisterPlayer)

4
Segítségkérés / Kocsi betöltés hiba
« Dátum: 2016. június 03. - 11:53:18 »
Hali!
Jelenleg azt akarom megcsinálni, hogy a kocsikat MySQL -be mentse illetve töltse be. /jarmu parancsal létrehoz egyet,be illeszti MySQL táblába ez megy is. Viszont a betöltés már nem működik, nem spawnolja le a kocsikat.
OnGameModeInitnél meghívom a
 
loadVehicles();

 
Ami így nézki:
 
loadVehicles()
{
new query[128];
format(query,sizeof(query),\"SELECT * FROM sveh\");
mysql_function_query(dbhandle,query,true,\"OnQueryFinish\",\"i\",THREAD_LOAD_VEHICLES);
return 1;
}

 
OnQueryFinish -be pedig így tölti be:
 

public OnQueryFinish(resultid, extraid, ConnectionHandle)
{
new num_rows, num_fields;
if(resultid != THREAD_NO_RESULT)
{
cache_get_data(num_rows, num_fields);
}
switch(resultid)
{
    case THREAD_LOAD_VEHICLES:
    {
        if(num_rows)
        {
      new v;
      for(new i = 0; i < num_rows ; i++)
      {
         cInfo[vID] = cache_get_field_content_int(i,\"id\",dbhandle);
         cInfo[vModel] = cache_get_field_content_int(i,\"VehModel\",dbhandle);
         cInfo[vPosX] = cache_get_field_content_float(i,\"VehX\",dbhandle);
         cInfo[vPosY] = cache_get_field_content_float(i,\"VehY\",dbhandle);
         cInfo[vPosZ] = cache_get_field_content_float(i,\"VehZ\",dbhandle);
         cInfo[vRot]  = cache_get_field_content_float(i,\"VehRot\",dbhandle);
         cInfo[vCol1] = cache_get_field_content_int(i,\"VehCol1\",dbhandle);
         cInfo[vCol2] = cache_get_field_content_int(i,\"VehCol2\",dbhandle);
         CreateVehicle(cInfo[vModel],cInfo[vPosX],cInfo[vPosY],cInfo[vPosZ],cInfo[vRot],cInfo[vCol1],cInfo[vCol2],-1);
         cInfo[vID]++;
         v++;
         printf(\"Jarmuvek betoltve: %d\", v);
      }
   }
   printf(\"Jarmuvek betoltve: 0\");
}
}
return 1;
}

 
Na most nem spawnolja le a kocsikat,tehát nem akarja beolvasni. Mi lehet a gond ? :( Előre is köszönöm.

5
RP/RPG kérések / Járművek betöltése MySQL táblából
« Dátum: 2015. július 14. - 18:18:02 »
Hali!
Sokat próbálkoztam már ezzel, hogy amit beírok MySQL táblába hogy hányas jármű ID,milyen pozícióba azt töltse be a szerverre és hozza létre, meg is volt csak a rendszámot és tulaj -t nem töltötte be, mivel üres stringeket töltött be. Ezért arra szeretnék kérni valakit,hogy meg e tudja nekem írni azt, hogy betöltse a Jármű ID-t,tulaj-t,rendszámot és X,Y,Z pozíciót, aztán a többit én már kibővitem, csak ennyi kéne. Előre is nagyon szépen köszönöm, aki segít annak megy a +! :)

6
Archívum / GuiCreateEdit gondok
« Dátum: 2015. július 07. - 21:07:52 »
Hali!
Próbáltam két edit -et rákapcsolni egy \"loginTab\"-ra (guiCreateTab), de valahogy nem sikerül mert ahogy rákapcsolom nem látom a két editet,ha leveszem a \"loginTab\"-ról akkor látom.
Így oldottam meg,kliens oldalon:
 

TabPanel = guiCreateTabPanel(X,0.330,Width,0.045,true, logRegPanel)
loginTab = guiCreateTab(\"Bejelentkezés\", TabPanel)
registerTab = guiCreateTab(\"Regisztráció\", TabPanel)
editLogName = guiCreateEdit( 0, 0, 0.15, 0.03, \"\", true,loginTab )
guiEditSetCaretIndex( editLogName, 0 )
editLogPass = guiCreateEdit( 0, 0, 0.15, 0.03, \"\", true,loginTab )
guiEditSetCaretIndex( editLogPass, 0 )

 
Mi lehet a gond ? Előre is köszönöm!

7
Segítségkérés / Jármű beolvasás MySQL, nem működik
« Dátum: 2015. július 02. - 12:18:36 »
Hali!
Jármű beolvasást próbálom megcsinálni MySQL -ből, mivel ott tárolnám a járműveket, már régóta próbálgatom, de nem nagyon akar működni. Addig megy,hogy beolvassa a pozíciót,létrehozza,stb, viszont a \"Tulaj,Rendszám,Üzemanyag,Jármű HP\" ezeket nem jól olvassa be.
Ez az ENUM:
 

enum carInfo
{
vID,
vTulaj[32],
vRendszam[32],
vModel,
Float:vPosX,
Float:vPosY,
Float:vPosZ,
Float:vRot,
vCol1,
vCol2,
KmSzamlalo,
Float:VehHP,
VehFuel
};
new cInfo[50][carInfo];

 
GameModeInitnél ez meghívódik:
 

loadVehicles()
{
new query[128];
format(query,sizeof(query),\"SELECT * FROM sveh\");
mysql_function_query(dbhandle,query,true,\"OnQueryFinish\",\"i\",THREAD_LOAD_VEHICLES);
return 1;
}

 
OnQueryFinish -be pedig betölti és létrehozza:
 

public OnQueryFinish(resultid, extraid, ConnectionHandle)
{
new num_rows, num_fields;
if(resultid != THREAD_NO_RESULT)
{
cache_get_data(num_rows, num_fields);
}
switch(resultid)
{
    case THREAD_LOAD_VEHICLES:
    {
        if(num_rows)
        {
      new v;
      for(new i = 0; i < num_rows ; i++)
      {
         cInfo[vModel] = cache_get_field_content_int(i,\"cID\",dbhandle);
         cInfo[vTulaj] = cache_get_field_content(i, \"Tulaj\", KocsiTulaj);
         cInfo[vRendszam] = cache_get_field_content(i, \"Rendszam\", KocsiRendszam);
         cInfo[vPosX] = cache_get_field_content_float(i,\"VehX\",dbhandle);
         cInfo[vPosY] = cache_get_field_content_float(i,\"VehY\",dbhandle);
         cInfo[vPosZ] = cache_get_field_content_float(i,\"VehZ\",dbhandle);
         cInfo[vRot]  = cache_get_field_content_float(i,\"VehRot\",dbhandle);
         cInfo[vCol1] = cache_get_field_content_int(i,\"VehCol1\",dbhandle);
         cInfo[vCol2] = cache_get_field_content_int(i,\"VehCol2\",dbhandle);
         cInfo[KmSzamlalo] = cache_get_field_content_int(i,\"KmSzamlalo\",dbhandle);
         cInfo[VehHP] = cache_get_field_content_float(i,\"VehHP\",dbhandle);
         cInfo[VehFuel] = cache_get_field_content_int(i,\"Uzemanyag\",dbhandle);
         CreateVehicle(cInfo[vModel],cInfo[vPosX],cInfo[vPosY],cInfo[vPosZ],cInfo[vRot],cInfo[vCol1],cInfo[vCol2],-1);
         SetVehicleHealth(i,Float:cInfo[VehHP]);
         SetVehicleNumberPlate(i,KocsiRendszam);
         v++;
         printf(\"Jarmuvek betoltve: %d\", v);
 
      }
   }
   printf(\"Jarmuvek betoltve: 0\");
}
}
return 1;
}

 
A MySQL-be van 3 sor,első sorba 420as Jármű ID (taxi),a második 401 azaz manana,illetve a harmadik sorba pedig 400-as ID van ami Landstalker.
Na most, 420-as járműnek azt a rendszámot tölti be ami a második sorba van. Ami második sorba van jármű model ID, annak pedig a harmadik sor rendszámát tölti be. Ilyen gondom van, nagyon szépen megköszönném ha valaki tudna segíteni, előre is köszönöm szépen! :)

8
Segítségkérés / String ellenőrzés,hogyan ?
« Dátum: 2015. július 01. - 12:19:57 »
Hali!
Van nekem egy \"pItem1\" nevű stringem a mód elején létrehozva, ezt én leszeretném ellenőrizni valahol,például ha a pItem1 string értéke \"Üres\" akkor történjen XY.. Ezt szeretném megoldani,csak nem tudom hogyan. Előre is köszönöm! :)
Így próbáltam,de valamiért nem úgy megy ahogy kell:
 

if(strcat(pItem2, \"asd\"))

9
RP/RPG kérések / Ház betöltés gond
« Dátum: 2014. október 19. - 11:55:11 »
Hali!
Próbálkozok a ház rendszerrel,viszont valamiért nem tölti be az adatokat,MySQL R39.2 -õt használok,MySQL -re sikeresen csatlakozik.
MySQL Logban ennyit ír:
 

[11:51:01] [WARNING] cache_get_data - no active cache

 
Itt pedig a betöltés,a LoadHouses() meghívódik OnGameModeInit -nél.
 

public LoadHouses()
{
new num_fields,num_rows;
for(new i=1; i<=MAX_HOUSES; i++)
{
format(gQuery,256, \"SELECT * FROM shouses WHERE ID = \'%i\'\", i);
mysql_function_query(dbhandle,gQuery,false,\"\",\"\");
cache_get_data(num_rows,num_fields,dbhandle);
    if(num_rows == 0) break;
else if(num_rows != 0)
    {
        new lString[256];
   switch(hInfo[Owned])
   {
       case 0:
       {
           format(lString, sizeof(lString), \"House Owned: No\\nHouse Owner: None\\nHouse Price: $%i\", hInfo[Price]);
               hInfo[Label] = CreateDynamic3DTextLabel(lString, COLOR_BLUE, hInfo[OX], hInfo[OY], hInfo[OZ]+0.5, 20.0);
         hInfo[icon] = CreateDynamicMapIcon(hInfo[OX], hInfo[OY], hInfo[OZ], 31, -1);
         hInfo[EnterPickup] = CreateDynamicPickup(1273, 23, hInfo[OX], hInfo[OY], hInfo[OZ], -1, -1, -1, 20.0);
         hInfo[ExitPickup] = CreateDynamicPickup(1273, 23, hInfo[iX], hInfo[iY], hInfo[iZ], -1, -1, -1, 20.0);
      }
      case 1:
      {
          format(lString, sizeof(lString),\"House Owned: Yes\\nHouse Owner: %s\\nHouse Price: $%i\\nHouse Locked: %s\", hInfo[Owner], hInfo[Price], (hInfo[Locked] == 1) ? (\"Yes\") : (\"No\"));
               hInfo[Label] = CreateDynamic3DTextLabel(lString, COLOR_RED, hInfo[OX], hInfo[OY], hInfo[OZ]+0.5, 20.0);
          hInfo[icon] = CreateDynamicMapIcon(hInfo[OX], hInfo[OY], hInfo[OZ], 32, -1);
         hInfo[EnterPickup] = CreateDynamicPickup(1273, 23, hInfo[OX],hInfo[OY], hInfo[OZ], -1, -1, -1, 20.0);
         hInfo[ExitPickup] = CreateDynamicPickup(1273, 23, hInfo[iX], hInfo[iY], hInfo[iZ], -1, -1, -1, 20.0);
      }
   }
   CreatedHouses++;
}
}
printf(\"[House System] %i hazak betoltve.\", CreatedHouses);
return 1;
}

 
Mi lehet a hiba ? Elõre is köszi!

10
Archívum / Project - Life in Los Angeles
« Dátum: 2014. október 06. - 22:24:32 »
\"serverlogo.png\"
 
Általános Információk
Kliens verzió: 0.3z

Játékzóna:
Los Angeles (Los Santos)

Szerver IP Cím:
Hamarosan...

Weboldal:
Hamarosan...

Facebook:
https://www.facebook.com/lla.samp

TS3 IP:
Hamarosan...
Admin Tagokról
Raptor (én) - Tulajdonos,Scripter,Grafikus (képek,videók a szerverhez)

David144 - Tulajdonos,Mapper,Ötletgazda


Gripen - Segédscripter,Webfejlesztõ


Zsoller - TeamSpeak3 Admin,Configer

Mind a 4-en ismerjük egymást személyesen,mink adminok,ugyan abban a faluban lakunk,szóval nagyon jóban vagyunk,így minél jobban próbáljuk megcsinálni a szervert,hogy a lehetõ legtöbbet nyújtsuk a játékosoknak,lehetõ legjobb legyen a játékélmény és megpróbálunk létrehozni egy nagyon jó közösséget.
Szerver Történet
A Szervert 2014 Augusztus utolsó hetében kezdtük el fejleszteni,egyik barátommal \'David144\' -el illetve \'Gripen\' -nel. Sokszor próbálkoztam már mondom elkezdek egy saját,egyedi RP Módot,viszont sosem jött össze vagy 1 hét után abbahagytam. Most valahogy máshogy álltam hozzá a dolgokhoz,és folyamatosan csak fejlõdik és fejlõdik a szerver. Célunk az, hogy egy jó RP Szervert hozzunk össze,jó társasággal és jó közösséggel,mert szerintem már mindenkinek elege van a sok See Editbõl,ezért megpróbáljuk a lehetõ legtöbbet kihozni a szerverbõl.
Rendszerek,leírások
Hoszting,Játék szerver bérlés
Sokat gondolkoztunk, hogy honnan béreljünk majd szervert. Végül a VPS mellett döntöttünk, hogy miért ? Teljes rendszergazdai hozzáférést kapunk,mi rakjuk fel a szervert,a pluginokat,olyan operációs rendszerrel kérjük amilyennel csak akarjuk. Szóval nem lesznek gondok az FTP -vel,a pluginokkal,mindent úgy állítunk be, ahogy mi akarunk,még akár a szerver max. létszámot is és mindez,aligha drágább egy sima játékszerver hosztingtól.
Adatmentés
Mikor elkezdtük írni a szervert,Dini regisztráció/bejelentkezést raktam be,kezdésként. Mikor már több minden került be,gondoltam, hogy ez így nem lesz jó,mindent fájlba menteni/fájlból olvasni. Ezért át lett alakítva az egész mód MySQL -esre,amit sikerült is. Így a szerver a legújabb MySQL Regisztrációs Rendszert/Bejelentkezést használja,hogy a lehetõ leggyorsabban tudja menteni/betölteni az adatokat.
Karakter kezelés,UCP
Gripen -nek köszönhetõen sikerült megoldani azt is,hogy weboldalon létrehozol egy karaktert,majd ha adminok elfogadják betudsz lépni,illetve a karakter adataidat is megtudod tekinteni a weboldalon. Karakter létrehozás elõtt pedig ki kell töltened egy RP Tesztet. Amikor tudjuk biztosra, hogy a szerver mikor nyit meg,ekkor megrendeljük a hosztingtól a szervert,pontosabban VPS -t,a szerverhez kapunk 1 darab .hu domain címet is,így a szervernek lesz rendes weboldala is,amit Gripen fog elkészíteni,pontosabban már el is kezdte.
Kezdés
Elõször egy Shamal repülõben kezdel,itt 1 percet kell várnod míg megérkezel Los Angelesbe,mikor eltûnik a képernyõ közepérõl a textdraw,akkor kiszállhatsz a repülõbõl. Itt bemész a reptérre ahol átveszed a csomagjaid ( /csomagatvesz ) ekkor megkapod a kezdõ \'500$\' -t illetve az irataidat,ekkor kimehetsz a reptérrõl és elkezdheted a játékot. Illetve,ha nincs hálózsákod randomba spawnolsz padoknál,ha pedig van hálózsákod akkor ott kezdesz ahol kiléptél.
Táska Rendszer
Ezt még nem kezdtük el,majd megtervezzük ezt is,hogy hogy legyen és elkészítjük,ezzel még nem foglalkoztunk nagyon,de valószínûleg lesz egy \'/taska\' amivel megtudod nézni a táskád tartalmát,használni/eldobni tárgyakat.
Frakciós Munkák
Minél jobb és minél részletesebben szeretnénk kidolgozni a frakció rendszert,azaz frakciók dolgait,erre fektetjük a legnagyobb hangsúlyt.
Legális Frakciók Bemutatása
Los Angeles Police Department (LAPD) - Los Angeles Rendõrfõkapitánysága,õk tartják rendben,biztonságban a várost,igazoltatnak,járõröznek szerte Los Angelesben.

Los Angeles Special Weapons And Tactics (LA SWAT) - Õk Los Angeles kommandósai,az LAPD -nek az alosztálya,szóval ez nem egy külön frakció,ha bankrablás van akkor õk ki mennek.


Los Angeles Medical Service (LAMS) - Los Angeles Mentõszolgálata,ha valaki megbetegszik,akkor õket hívják ki,ha autóbaleset van,szintén õket hívják ki,õk tartják egészségben a város lakosait.


Los Angeles Service Co. - Ha valakinek a kocsijában felforrik a víz,elromlik valami,motor cserére van szükség,akkor hozzájuk mennek szereltetni,autó vontatási szolgáltatással is rendelkeznek,ha valahol az úton lerobban az autó.

Los Angeles Taxi Co. - Ha nincs kocsid,vagy nem szeretneå sokat gyalogolni,akkor hívd õket! Bárhova elvisznek,egész Los Angelesbe,ahova kéred.
Illegális Frakciók Bemutatása
A Szerveren 2 maffia lesz és 2 banda,úgy gondoltuk elõször,mert felesleges lenne olyan sok szerintünk,illegálnak a feladata,fegyvereket szerezni,összerakni,eladni,füvet termeszteni,terjeszteni,eladni,szóval itt csak az illegál frakciók nevét sorolom fel.
Russian Maffia - Orosz Maffia

Luen - Kínai Maffia


Rollin\' Heightz PurpZ - Amerikai,néger banda (lilák)


Kék banda

Mellékállások Bemutatása
Nálunk úgy lesznek a mellékállások,hogy lesz egyenlõre 2 cég ahova a városházán lehet jelentkezni egyik a \'Karbantartó\' cég másik pedig a \'Szállítmányozási\',ezeken belül lehet elvállalni munkát tehát így fog kinézni:

Karbantartó Cég,elvállalható munkák ezen belül:


Úttisztító

Kukás


Villanyszerelõ


Szállítmányozási Cégen belül:




Árufuvarozó


Üzemanyag szállító


Cement Szállító


Még pár mellékállás befog kerülni,de nincs még konkrét ötletünk,szóval amint eszünkbe jut egy új és jó mellékállás megcsináljuk szerverre.

Admin Rendszer
Az admin rendszerünk is kész van már majdnem,már csak pár parancs hiányzik és tényleg kész lesz. Jelenleg 5 admin szint van a szerveren.
Moderátor

Adminsegéd


Adminisztrátor


Webfejlesztõ


Játékfejlesztõ

Autó Rendszer
Ebbe is elég sok munkát fektetünk,fõleg a dizájnba,pontosabban a mûszerfal,kocsi vásárlás,meg egyebek. Lent lesznek róla képek,amiket fog jelezni: Sebesség,Motorfordulatszám,megtett km,kézifék behúzva/kiengedve van,olajcsere szükséges/vagy nem,lámpák lekapcsolva vagy felkapcsolva,üzemanyagszint jelzõ és üzemanyag jelzõlámpa ha már kevés,illetve még egy érdekesség,motor vízhõfok mérõ is lesz,ezt nem részletezném, hogy mire ha több minden kész lesz,lesz egy videó is amiben elég sok minden be lesz mutatva,majd abban meglátjátok. Természetesen az Autó Rendszer is MySQL -el lesz megoldva. Jogosítványt a vizsgaközpontban tudod lerakni,ahol megcsinálod a KRESZ vizsgát,majd bármikor megcsinálhatod AM (Robogó),A (Motorkerékpár - korlátlan),illetve B (személygépkocsi) kategóriára,egyenlõre ez a 3 jogosítvány kategória lesz,idõvel lesz berakva még Kisteherautóra,teherautóra,traktorra is.
Ház/Albérlet Rendszer
Lesz jó pár ház,amit meg lehet venni,ha kevés pénzed van és nem szeretnél házat venni akkor bérelhetsz is akár,szerte Los Angelesben. A Városházán lehet majd befizetni a rezsit,számlákat,amit 1 héten 1x azaz Vasárnap kell befizetned.
Képek
\"sa-mp-000.png\"
\"sa-mp-004fe475.png\"
\"sa-mp-0002.png\"
\"sa-mp-001.png\"
\"sa-mp-00283034.png\"
Intro videó a szerverrõl
 

Nagyjából ennyi lenne,sok minden van amit még itt nem említettem,például Pénztárca,Telefon Rendszer,Drog/Fegyver Rendszer,csak ezeket még nem részleteztem,a leírást folyamatosan bõvítem,van itt pár kép is az eddigi fejlesztésekrõl,illetve egy Intro videó amit saját magam készítettem.

Köszönöm hogy elolvastad! :)

11
Segítségkérés / undefined symbol - PlayerTextDrawSetString
« Dátum: 2014. október 03. - 10:13:10 »
Hali!
A Játékosnak szeretném átállítani a TextDraw -ot,de értelmetlenül ezt az errort írja:
 

asd.pwn(1363) : error 017: undefined symbol \"PlayerTextDrawSetString\"

 
Erre a sorra:
 

PlayerTextDrawSetString(playerid, Kmh, vehspeed);

 
public OnPlayerUpdate alatt használtam a függvényt,így néz ki a kód részlet:
 

public OnPlayerUpdate(playerid)
{
new vehspeed[128];
if(IsPlayerInAnyVehicle(playerid))
{
format ( vehspeed , sizeof(vehspeed) , \"Speed: %d Km/h\" , GetvSpeed ( GetPlayerVehicleID ( playerid ) ) ) ;
//TextDrawSetString (Kmh ,vehspeed ) ; // ez van most,ez mûködik,csak egész szervernek frissíti a szöveget,én csak azt akarom hogy csak játékosnak
PlayerTextDrawSetString(playerid, Kmh, vehspeed); //erre pedig írja az undefined symbolt
        }
      return 1;
}

 
Azt nem értem,hogy miért undefined symbol mikor ez egy alap,SAMP -os függvény ?
0.3z SAMP Verziót használok,mi lehet a hiba ? Elõre is köszi!

12
Szkript kérések / Jármû lementés MySQL
« Dátum: 2014. szeptember 26. - 08:06:12 »
Hali!
Már tegnap óta ezt próbálom megcsinálni,de sehogy se bírok rájönni,ezért inkább azt kérném hogy valaki lenne oly szíves,hogy megírja helyettem.
Szóval jármûveket akarok lementeni MySQL -be de valahogy nem ment el semmit.
Szóval egy parancs meg hívja a \'VehicleSaveAll\' -t:
 

CMD:vehicles(playerid, params[])
{
VehicleSaveAll();
printf(\"Jarmuvek elmentve!\");
return 1;
}

 
itt a \'VehicleSaveAll\' stock rész:
 

stock VehicleSaveAll()
{
new vehicles = 0;
    //for(new i = 0; i < MAX_VEHICLES ; i++) // Loop through the maximum amount of vehicles allowed by sa-mp.
    for(new jarmuID = 1;jarmuID<500;jarmuID++)
{
VehicleGet(jarmuID);
        VehicleSave();
vehicles++;
    }
    printf(\"Jarmuvek mentve: %d\", vehicles); // Print out how many vehicles has been saved.
return 1;
}

 
Ez meghívja ugye a VehicleGet és VehicleSave -t
 

stock VehicleGet(jarmuID)
{
    GetVehiclePos(jarmuID,cInfo[jarmuID][vPosX],cInfo[jarmuID][vPosY],cInfo[jarmuID][vPosZ]);
    // Get the current position of that vehicle and assign it to our system\'s vehicle information.
    GetVehicleZAngle(jarmuID, cInfo[jarmuID][vRot]);
    // Get the current rotation of that vehicle and assign it to our system\'s vehicle information.
return 1;
}
stock VehicleSave()
{
new query[1024];
for(new jarmuID = 1;jarmuID<500;jarmuID++)
    {
format(query,sizeof(query),\"UPDATE sveh SET VehX=\'%f\',VehY=\'%f\',VehZ=\'%f\',VehRot=\'%f\' WHERE ID=\'%d\'\",cInfo[jarmuID][vPosX],cInfo[jarmuID][vPosY],cInfo[jarmuID][vPosZ],cInfo[jarmuID][vRot],cInfo[jarmuID][vID]);
mysql_function_query(dbhandle,query,true,\"\",\"\");
printf(\"Jarmuvek elmentve!\");
SendClientMessageToAll(COLOR_WHITE,\"(( Jármûvek elmentve! ))\");
}
return 1;
}

 
Majd ezzel töltöm be az autókat a mysqlbõl,ez meghívódik mikor elindul a játékmód:
 

public OnQueryFinish(resultid, extraid, ConnectionHandle)
{
new num_rows, num_fields;
if(resultid != THREAD_NO_RESULT)
{
cache_get_data(num_rows, num_fields);
}
switch(resultid)
{
    case THREAD_LOAD_VEHICLES:
    {
   new vehicles = 0;
        if(num_rows)
        {
            for(new i = 0; i < num_rows; i++)
             {
         new jarmuID;
         cInfo[jarmuID][vID] = cache_get_field_content_int(i,\"ID\",dbhandle);
         cInfo[jarmuID][vModel] = cache_get_field_content_int(i,\"VehModel\",dbhandle);
         cInfo[jarmuID][vPosX] = cache_get_field_content_float(i,\"VehX\",dbhandle);
         cInfo[jarmuID][vPosY] = cache_get_field_content_float(i,\"VehY\",dbhandle);
         cInfo[jarmuID][vPosZ] = cache_get_field_content_float(i,\"VehZ\",dbhandle);
         cInfo[jarmuID][vRot] = cache_get_field_content_float(i,\"VehRot\",dbhandle);
         cInfo[jarmuID][vCol1] = cache_get_field_content_int(i,\"VehCol1\",dbhandle);
         cInfo[jarmuID][vCol2] = cache_get_field_content_int(i,\"VehCol2\",dbhandle);
         CreateVehicle(cInfo[jarmuID][vModel],cInfo[jarmuID][vPosX],cInfo[jarmuID][vPosY],cInfo[jarmuID][vPosZ],cInfo[jarmuID][vRot],cInfo[jarmuID][vCol1],cInfo[jarmuID][vCol2],-1);
         vehicles++;
      }
   }
   printf(\"Jarmuvek betoltve: %d\", vehicles);
}
}
return 1;
}

 
Ez pedig az a parancs amivel tudok lerakni autót (teszt végett a parancsot majd kiszedem):
 

CMD:jarmu(playerid, params[])
{
new Float:pPosX;
new Float:pPosY;
new Float:pPosZ;
new query[512];
new jarmuID;
GetPlayerPos(playerid, pPosX,pPosY,pPosZ);
format(query,sizeof(query),\"INSERT INTO sveh (VehModel,Tulaj,Rendszam,VehX,VehY,VehZ,VehRot,VehCol1,VehCol2,KmSzamlalo,VehHP) VALUES (\'420\',\'Állam\',\'SA-789AO\',\'%f\',\'%f\',\'%f\',\'0\',\'6\',\'6\',\'0\',\'1000\')\",pPosX,pPosY,pPosZ);
mysql_function_query(dbhandle,query,false,\"\",\"\");
CreateVehicle(420,pPosX,pPosY,pPosZ,0,6,6,-1);
cInfo[jarmuID][vID]++;
return 1;
}

 
Aki segít annak megy a plusz,mert nagyon fontos lenne nekem,elõre is köszönöm szépen. :)

13
RP/RPG kérések / Jármû lementés gondok
« Dátum: 2014. szeptember 25. - 19:32:57 »
Hali!
Úgy akarom megcsinálni a szerveremre,hogy MySQL táblába mentsen minden jármûvet és onnan is töltse be,a betöltés meg van,csak a mentés valahogy nem megy,a koórdinátát nem menti le,de szerintem azzal lesz a gond,hogy nem tudja hogy hova mentse le.
Tehát így néz ki:
itt az enum:
 

enum carInfo
{
vID,
vModel,
Float:vPosX,
Float:vPosY,
Float:vPosZ,
Float:vRot,
vCol1,
vCol2
};
new cInfo[MAX_VEHICLES][carInfo];

 


CMD:vehicles(playerid, params[])
{
VehicleSaveAll();
printf(\"Jarmuvek elmentve!\");
return 1;
}

 
Ezzel meghívom a \'VehicleSaveAll\' -t
Ez meg hívja a VehicleGet és VehicleSave -t:
 

stock VehicleSaveAll()
{
    new index = 0;
    for(new i = 0; i < MAX_VEHICLES ; i++)
    {
VehicleGet(index);
        VehicleSave(index);
index++;
    }
    printf(\"Jarmuvek mentve: %d\", index);
return 1;
}

 
Itt pedig a VehicleSave és VehicleGet:
 

stock VehicleGet(jarmuID)
{
    GetVehiclePos(cInfo[jarmuID][vID],cInfo[jarmuID][vPosX],cInfo[jarmuID][vPosY],cInfo[jarmuID][vPosZ]);
    GetVehicleZAngle(cInfo[jarmuID][vID], cInfo[jarmuID][vRot]);
   
return 1;
}
stock VehicleSave(jarmuID)
{
new query[1024];
format(query,sizeof(query),\"UPDATE sveh SET VehX=\'%f\',VehY=\'%f\',VehZ=\'%f\',VehRot=\'%f\' WHERE ID=\'%d\'\",cInfo[jarmuID][vPosX],cInfo[jarmuID][vPosY],cInfo[jarmuID][vPosZ],cInfo[jarmuID][vRot],cInfo[jarmuID][vID]);
mysql_function_query(dbhandle,query,true,\"\",\"\");
printf(\"Jarmuvek elmentve!\");
SendClientMessageToAll(COLOR_WHITE,\"(( Jármûvek elmentve! ))\");
return 1;
}

 
VehicleGet lekéri a koórdinátát és a forgást (Rotationt),VehicleSave egy jármûvet ment csak le,a VehicleSaveAll -nál pedig for ciklussal lementem az összes jármûvet.
Mi lehet itt a gond ? Elõre is köszi annak aki segít.
EDIT: Azt elfelejtettem hozzá tenni,hogy az elsõ autót amit lerakok egy parancsal,annak a koórdinátáját már elmenti,viszont a többit nem,mintha nem jó ID -re mentené le a többi kocsikat.

14
Segítségkérés / Taxi hívókódszám bug
« Dátum: 2014. szeptember 24. - 22:15:13 »
Hali!
Olyat csináltam,hogy ha kihívom a taxisok kapnak egy üzenetet hogy \"Valaki taxit hívott,híváskód száma: 1\" és akkor /taxielfogad 1 ,viszont ha a szerveren valaki megint hív taxit akkor a szám már 2 lesz,és azt tudják elfogadni.
A Kiírás,hívás minden megy,csak a /taxielfogad [híváskódszám] parancs bugos,tehát mikor valaki taxit hív akkor:
 

hivasid++;

 
Itt pedig a /taxielfogad parancs:
 

CMD:taxielfogad(playerid, params[])
{
if(pInfo[playerid][pFrakcio] == 4)
{
if(pInfo[playerid][pSzolgalatban] == 1)
{
new str[128],hivasidinput;
new vehicleid = GetPlayerVehicleID(playerid);
hivasid = id;
if(GetVehicleModel(vehicleid) == 438 || GetVehicleModel(vehicleid) == 420)
{
if(sscanf(params,\"d\",hivasidinput)) return SendClientMessage(playerid,COLOR_WHITE,\"(( Használat: /taxielfogad [Hívás kódszáma] ))\");
if(hivasidinput == hivasid)
{
SendClientMessage(hivasid,COLOR_WHITE,\"(( A Taxisok fogadták a hívásod! Maradj a pozíciódon! ))\");
SetPlayerMapIcon( playerid, 0, TaxiHivasPosX, TaxiHivasPosY, TaxiHivasPosZ, 0, COLOR_ULTRARED, MAPICON_GLOBAL );
format(str, sizeof(str), \"(( Sikeresen elfogadtad %d számú hívást! Pozíció jelölve a térképen! ))\",hivasid);
SendClientMessage(playerid,COLOR_WHITE,str);
micon[playerid] = true;
}
else
{
SendClientMessage(playerid,COLOR_WHITE,\"(( Érvénytelen hívókód szám! ))\");
}
}
else
{
SendClientMessage(playerid,COLOR_WHITE,\"(( Nem ülsz taxiban! ))\");
}
}
else
{
SendClientMessage(playerid,COLOR_WHITE,\"(( Nem vagy szolgálatban! ))\");
}
}
else
{
SendClientMessage(playerid,COLOR_WHITE,\"(( Nem vagy taxis! ))\");
}
return 1;
}

 
Ebbe mi lehet a hiba ? elõre is köszi a választ.

15
RP/RPG kérések / Telefon rendszer bug
« Dátum: 2014. szeptember 24. - 11:32:00 »
Hali!
Csinálgatom a telefon rendszeremet,ami már majdnem kész csak még pár bug van benne,ezeket szeretném kijavítani.
Az elsõ bug: tegyük fel van két játékos,mind a kettõnek van telefonja,ha \'A\' játékossal felhívom a \'B\' játékost,akkor aki felvette azaz a \'B\' játékos ha õ vele írok a chatbe,akkor az \'A\' játékos nem látja azt amit írok,helyette a \'B\' játékos kétszer látja a chatben egymás után azt amit írok,például: \"[Telefonban] XY Mondja: asd\"
Azt szeretném megtudni, hogy mi lehet a hiba oka,ha kicsit értelmetlenül írtam le akkor kérdezzetek,így tudtam csak leírni.
OnPlayerText rész:
 

public OnPlayerText(playerid, text[])
{
    new icchat[128];
new telefonchat[128];
    if(!pInfo[playerid][pLoggedin]) return SendClientMessage(playerid, COLOR_ULTRARED,\"(( Nem írhatsz a chatbe míg be nem jelentkezel! ))\");
    if (CallerLine[playerid] != INVALID_PLAYER_ID)
{
format(telefonchat, sizeof(telefonchat), \"[Telefonban] %s mondja: %s\", GetName(playerid), text);
SendClientMessage(CallerLine[playerid], COLOR_YELLOW, telefonchat); //elküldjük a szöveget annak a játékosnak akivel beszélünk
ProxDetector(20.0, playerid, telefonchat, COLOR_WHITE); //annak a körzetében elküldjük a szöveget aki telefonál
SetPlayerChatBubble(playerid, telefonchat, COLOR_WHITE, 20.0, 6000);
}
else
{
    format(icchat, sizeof(icchat), \"%s mondja: %s\", GetName(playerid), text);
ProxDetector(20.0, playerid, icchat, COLOR_WHITE);
    SetPlayerChatBubble(playerid, icchat, COLOR_WHITE, 20.0, 10000);
}
    return 0;
}

 
Stock rész ami meghívódik akkor amikor az egyik játékos felhívja a másikat:
 

stock HivoSzam(playerid,number)
{
id = INVALID_PLAYER_ID;
foreach(Player, i)
{
    if (pInfo[pLoggedin] && pInfo[pHivoszamElotag] && pInfo[pTelefonSzam] == number)
    {
        id = i;
        break;
}
}
if (id != INVALID_PLAYER_ID)
{
    new string[128];
SendClientMessage(playerid,COLOR_WHITE,\"(( Kicsöng... ))\");
SendClientMessage(playerid,COLOR_WHITE,\"(( Ha leakarod tenni: /telefonlerak ))\");
format(string, sizeof(string), \"(( Csörög a telefonod! Ha felakarod venni: /telefonfelvesz [Hívó: %s] ))\", GetName(playerid));
SendClientMessage(id, COLOR_WHITE, string);
        format(string, sizeof(string), \"* Valakinek csörög a telefonja.\");
ProxDetector(20.0,playerid, string, COLOR_PURPLE);
BeingCalled[id] = playerid;
SetPlayerAttachedObject(playerid, 6, 330, 6);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USECELLPHONE);
return 1;
}
else SendClientMessage(playerid, COLOR_ULTRARED, \"(( Hívott számon az elõfizetõ nem kapcsolható! ))\");
return 1;
}

 
Itt pedig az a parancs amivel felvesszük a telefont:
 

CMD:telefonfelvesz(playerid, params[])
{
if (!pInfo[playerid][pTelefon])
{
SendClientMessage(playerid, COLOR_ULTRARED,\"(( Neked nincs telefonod! ))\");
return 1;
}
if (BeingCalled[playerid] == INVALID_PLAYER_ID)
{
    SendClientMessage(playerid, COLOR_ULTRARED,\"(( Nem csörög a telefonod! ))\");
    return 1;
}
if(pInfo[playerid][pTelefonBeKapcsolva] == 1)
{
BeingCalled[playerid] = playerid;
CallerLine[playerid] = BeingCalled[playerid];
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USECELLPHONE);
BeingCalled[playerid] = INVALID_PLAYER_ID;
SetPlayerAttachedObject(playerid, 6, 330, 6);
}
else
{
SendClientMessage(playerid,COLOR_ULTRARED,\"(( A Telefonod ki van kapcsolva! ))\");
}
return 1;
}

 
Elõre is köszi,aki segít annak megy a +! :)
EDIT: Közben megoldottam,teljesen máshogy.

Oldalak: [1] 2 3 ... 5
SimplePortal 2.3.7 © 2008-2024, SimplePortal