Ü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.


Üzenetek - DrAkE

Oldalak: 1 ... 84 85 [86] 87 88 ... 135
1276
Beszélgetés / Hogy ejted ki az elõtted szóló nevét?
« Dátum: 2012. február 11. - 10:51:54 »
Deriva

1277
Beszélgetés / Számoljunk el 10.000-ig!
« Dátum: 2012. február 11. - 10:50:48 »
log21,9156194260823610729479337839379e+53
:D:D:D:D:D:D

1278
Beszélgetés / Értékeld a fölötted szóló AVATARját
« Dátum: 2012. február 11. - 10:48:38 »
7/10 :D

1279
Általános / Hamarosan nyí....
« Dátum: 2012. február 10. - 14:18:09 »
A Phoenix RolePlay (azaz mi), nem nagyon fogunk bezárni, mivel VPS-en futunk, sõt ezt kiterjesztjük egy egész játék közösségre is! Sajnos az a baj a mostani szerverekkel, hogy mind editelt, és kevés az olyan ami egyedi. Illetve kevés olyan dolgot létrehozni ami egyedivé teszi a szervert. Hisz ha már valami meg van csinálva a szerveren, akkor egybõl írják, hogy ez See edit, DT edit, GF edit és még sorolhatnám. Mi azért vettünk/bérlünk egy egész VPS-t mivel ezt mi komolyan gondoljuk, és fogjuk is. Remélem minél többen felmentek rá. :D Ugyanakkor a mi szerverünket fél évig \"írtuk\", és lassan másfél hónapja (azaz 1,5 hónapja) már nyitva áll a játékosok számára. Sajnos sokan nem szoktak felmenni rá, és az indokot nem tudni :\\

1280
Segítségkérés / Mysql függvény hiba
« Dátum: 2012. február 09. - 22:24:55 »
Idézetet írta: mauladam date=1328822192\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"16807\" data-ipsquote-contentclass=\"forums_Topic
Köszönöm mindenkinek a segítséget!
Még 1 hiba történt a végén:
 error 035: argument type mismatch (argument 1)

 
Sor:
if(!strcmp(GetData(\"jatekosok\", \"s\", \"jelszo\", \"nev\", PlayerName(playerid)), MD5_Hash(inputtext))){

 

Csak ismételni tudom magam :D
 

stock GetData(tabla[], tipus, mezo[], feltetelmezo[], ertek[])
{
format(query, 256, \"SELECT %s FROM `%s` WHERE %s = \'%s\'\", mezo,tabla,feltetelmezo,ertek);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
mysql_free_result();
new tarolo[256];
    sscanf(sor, \"s[256]\", tarolo);
switch(tipus)
{
case 1: {return tarolo;}
case 2: {return strval(tarolo);}
case 3: {return floatstr(tarolo);}
case 4: {return boolstr(tarolo);}
}
}

 

case 1: {return tarolo;} // ez nem tartozik a hibásak közé, csak gondoltam a switch minden tagját bemásolom.
109 - case 2: {return strval(tarolo);}
110 - case 3: {return floatstr(tarolo);}
111 - case 4: {return boolstr(tarolo);}

 
Ezek a sorok kapnak errort:
 
109 - error 079: inconsistent return types (array & non-array)
110 - error 079: inconsistent return types (array & non-array)
111 - error 079: inconsistent return types (array & non-array)

 
Nem tudom mi lehet a gond, csak gondolom, hogy a visszatérések nem jók, de már nagyon sokféle képpen próbáltam. Ahol használom ott a tipus nem felel meg a vártnak.
Ja és lenne még egy kérdésem.
Mit lehet ellene tenni, ha a SpawnPlayer kickel?
 


stock GetData(tabla[], tipus[], mezo[], feltetelmezo[], ertek[])
{
format(query, 256, \"SELECT %s FROM `%s` WHERE %s = \'%s\'\", mezo,tabla,feltetelmezo,ertek);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
mysql_free_result();
new tarolo[256];
sscanf(sor, \"s[256]\", tarolo);
switch(tipus[0])
{
case \'s\': return format(tarolo, sizeof(tarolo), \"%s\", tarolo);
case \'d\', \'i\': return format(tarolo, sizeof(tarolo), \"%d\", strval(tarolo));
case \'f\': return format(tarolo, sizeof(tarolo), \"%f\", floatstr(tarolo));
case \'b\': return format(tarolo, sizeof(tarolo), \"%b\", boolstr(tarolo));
}
return 1;
}

 
Gondolom a \"tipus\" változó miatt lesz.

1281
Segítségkérés / Mysql függvény hiba
« Dátum: 2012. február 09. - 21:52:32 »
Idézetet írta: mauladam date=1328818805\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"16807\" data-ipsquote-contentclass=\"forums_Topic
Sziasztok!
2-3 napja feltettem egy kérdést, kaptam is rá választ, azt hittem úgy menni fog, de végül nem sikerült.
Már sok féle módon próbáltam megoldani, de nem sikerül.
Ahelyett, hogy elmagyaráznám, milyen függvény, inkább bemásolom, így érthetõbb is lesz.
 
stock GetData(tabla[], tipus, mezo[], feltetelmezo[], ertek[])
{
format(query, 256, \"SELECT %s FROM `%s` WHERE %s = \'%s\'\", mezo,tabla,feltetelmezo,ertek);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
mysql_free_result();
new tarolo[256];
    sscanf(sor, \"s[256]\", tarolo);
switch(tipus)
{
case 1: {return tarolo;}
case 2: {return strval(tarolo);}
case 3: {return floatstr(tarolo);}
case 4: {return boolstr(tarolo);}
}
}

 

case 1: {return tarolo;} // ez nem tartozik a hibásak közé, csak gondoltam a switch minden tagját bemásolom.
109 - case 2: {return strval(tarolo);}
110 - case 3: {return floatstr(tarolo);}
111 - case 4: {return boolstr(tarolo);}

 
Ezek a sorok kapnak errort:
 
109 - error 079: inconsistent return types (array & non-array)
110 - error 079: inconsistent return types (array & non-array)
111 - error 079: inconsistent return types (array & non-array)

 
Nem tudom mi lehet a gond, csak gondolom, hogy a visszatérések nem jók, de már nagyon sokféle képpen próbáltam. Ahol használom ott a tipus nem felel meg a vártnak.
Ja és lenne még egy kérdésem.
Mit lehet ellene tenni, ha a SpawnPlayer kickel?
 


stock GetData(tabla[], tipus[], mezo[], feltetelmezo[], ertek[])
{
format(query, 256, \"SELECT %s FROM `%s` WHERE %s = \'%s\'\", mezo,tabla,feltetelmezo,ertek);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
mysql_free_result();
new tarolo[256];
sscanf(sor, \"s[256]\", tarolo);
switch(tipus[0])
{
case \'s\': return format(tarolo, sizeof(tarolo), \"%s\", tarolo);
case \'d\', \'i\': return format(tarolo, sizeof(tarolo), \"%d\", strval(tarolo));
case \'f\': return format(tarolo, sizeof(tarolo), \"%f\", floatstr(tarolo));
case \'b\': return format(tarolo, sizeof(tarolo), \"%b\", boolstr(tarolo));
}
return 1;
}

1282
Klánok / LMD alias Los Miembros Divinos/Last Mental Dynasty
« Dátum: 2012. február 09. - 17:35:22 »
Az is lehet hogy Deriva = P3ng3.

1283
Segítségkérés / Mi is az a ZCMD?
« Dátum: 2012. február 09. - 17:32:47 »
Ez egy olyan funkció, amivel gyorsabban fellehet dolgozni a parancsokat, illetve a \"paramétereket\" is egyszerûen lehet kezelni.

1284
Szkript kérések / /goto id
« Dátum: 2012. február 09. - 17:08:21 »
Idézetet írta: Flash date=1328797863\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"16763\" data-ipsquote-contentclass=\"forums_Topic

    if(strcmp(cmdtext, \"/goto\", true) == 0)
    {
new celid, string[128], Float:hely[3], nev[MAX_PLAYER_NAME][2];
if(!strlen(params)) return SendClientMessage(playerid, COLOR_LIGHTBLUE, \"HASZNÁLAT: /goto (játékosid/név)\");
else if(!IsPlayerConnected(celid) && celid == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, \"HIBA: Nincs ilyen játékos a szerveren, vagy az adott játékos te vagy!\");
GetPlayerPos(celid, hely[0], hely[1], hely[2]); SetPlayerInterior(playerid, GetPlayerInterior(celid));
SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(celid));
if(GetPVarInt(celid, \"goto\") == 1)
{
if(GetPlayerState(playerid) == 2)
{
    SetVehiclePos(GetPlayerVehicleID(playerid),hely[0]+2, hely[1], hely[2]); LinkVehicleToInterior(GetPlayerVehicleID(playerid), GetPlayerInterior(celid));
    SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), GetPlayerVirtualWorld(celid)); GetPlayerName(playerid, nev[0], sizeof(nev)); GetPlayerName(celid, nev[1], sizeof(nev));
    format(string,sizeof(string),\"%s elteleportált hozzád!\", nev[0]); SendClientMessage(celid, COLOR_LIGHTBLUE, string);
            format(string,sizeof(string),\"Elteleportáltál %s-hez(hoz)!\", nev[1]); SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    return 1;
}else{
    SetPlayerPos(playerid, hely[0], hely[1], hely[2]); SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(celid)); SetPlayerInterior(playerid, GetPlayerInterior(celid));
}
}else{
    format(string,sizeof(string),\"%s letiltotta a gotozást!\", nev[1]);
    SendClientMessage(playerid, COLOR_RED, string);
}
return 1;
}
    if(strcmp(cmdtext, \"/setgoto\", true) == 0)
    {
if(GetPVarInt(playerid, \"goto\") == 0) {
    SetPVarInt(playerid, \"goto\", 1);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, \"Engedélyezted a gotozást magadhoz!\");
}else{
    SetPVarInt(playerid, \"goto\", 0);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, \"Letiltottad a gotozást magadhoz!\");
}
return 1;
}

 


Csak annyi lett volna a dolgot, hogy átírod a CMD:goto(playerid, params[]) -t if(strcmp(cmdtext, \"/goto\", true) == 0) -ra :D
 
[/quote]
Ha nem értettek hozzá, akkor minek írtok hülyeséget?
U.I.: Mindjárt leírom!
 

GetCommandParams(cmdtext);
if(!strcmp(cmdtext, \"/goto\", true))
{
new celid, string[128], Float:hely[3], nev[MAX_PLAYER_NAME][2];
if(isnull(par)) return SendClientMessage(playerid, COLOR_LIGHTBLUE, \"HASZNÁLAT: /goto (játékosid/név)\");
else if(!IsPlayerConnected(celid) && celid == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, \"HIBA: Nincs ilyen játékos a szerveren, vagy az adott játékos te vagy!\");
GetPlayerPos(celid, hely[0], hely[1], hely[2]); SetPlayerInterior(playerid, GetPlayerInterior(celid));
SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(celid));
if(GetPVarInt(celid, \"goto\") == 1)
{
   if(GetPlayerState(playerid) == 2)
   {
      SetVehiclePos(GetPlayerVehicleID(playerid),hely[0]+2, hely[1], hely[2]);                                                                                  LinkVehicleToInterior(GetPlayerVehicleID(playerid), GetPlayerInterior(celid));
      SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), GetPlayerVirtualWorld(celid)); GetPlayerName(playerid, nev[0], sizeof(nev)); GetPlayerName(celid, nev[1], sizeof(nev));
      format(string,sizeof(string),\"%s elteleportált hozzád!\", nev[0]); SendClientMessage(celid, COLOR_LIGHTBLUE, string);
      format(string,sizeof(string),\"Elteleportáltál %s-hez(hoz)!\", nev[1]); SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
      return 1;
   }else{
      SetPlayerPos(playerid, hely[0], hely[1], hely[2]); SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(celid)); SetPlayerInterior(playerid, GetPlayerInterior(celid));
   }
}else{
    format(string,sizeof(string),\"%s letiltotta a gotozást!\", nev[1]);
    SendClientMessage(playerid, COLOR_RED, string);
}
return 1;
}
if(!strcmp(cmdtext, \"/setgoto\", true))
{
if(GetPVarInt(playerid, \"goto\") == 0)
{
   SetPVarInt(playerid, \"goto\", 1);
   SendClientMessage(playerid, COLOR_LIGHTBLUE, \"Engedélyezted a gotozást magadhoz!\");
}else{
   SetPVarInt(playerid, \"goto\", 0);
   SendClientMessage(playerid, COLOR_LIGHTBLUE, \"Letiltottad a gotozást magadhoz!\");
}
return 1;
}

 
A parancs mûködéséhez az alábbi include is szükséges!
http://sampforum.hu/index.php?topic=20289.msg217336;topicseen#msg217336

1285
RP/RPG kérések / Include kérelem!
« Dátum: 2012. február 08. - 16:35:43 »

1286
Off Telep / Adj egy pofont a majomnak
« Dátum: 2012. február 08. - 16:06:14 »
Szerintem nyertem:
\"gyorsasag.png\"

1287
Segítségkérés / Mi hiányzik?
« Dátum: 2012. február 07. - 20:15:36 »
Idézetet írta: Zsoma date=1328607991\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"16702\" data-ipsquote-contentclass=\"forums_Topic

format(PlayerInfo[playerid][Nev1], sizeof(PlayerInfo[playerid][Nev1]), \"%s\", inputtext);

 
>
 
error 001: expected token: \"]\", but found \"-identifier-\"
warning 215: expression has no effect
error 001: expected token: \";\", but found \"]\"
error 029: invalid expression, assumed zero
fatal error 107: too many error messages on one line

 
 :question:  ???
 

format(PlayerInfo[playerid][Nev1], MAX_PLAYER_NAME, \"%s\", inputtext);

 
U.I.: Rosszat írtam :S

1288
Segítségkérés / Adattípusnak megfelelõ érték..
« Dátum: 2012. február 07. - 19:46:20 »
Idézetet írta: mauladam date=1328636499\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"16721\" data-ipsquote-contentclass=\"forums_Topic
Sziasztok!
Van egy mysql függvényem GetData(playerid, tabla[], mezo[]):
 
stock GetData(playerid, tabla[], mezo[])
{
new fformat[256];
format(query, 500, \"SELECT %s FROM `%s` WHERE nev = \'%s\'\", mezo, tabla, PlayerName(playerid));
mysql_query(query);
mysql_store_result();
mysql_fetch_row(sor);
if(mysql_num_rows() == 1){
mysql_free_result();
if(!sscanf(sor, \"s[256]\", sztring)) return sztring;
if(!sscanf(sor, \"d\", integer)) { format(fformat, 256, \"%d\", integer); }
if(!sscanf(sor, \"f\", ffloat)) {  format(fformat, 256, \"%f\", ffloat); }
if(!sscanf(sor, \"l\", boolean)) { format(fformat, 256, \"%s\", boolean); }
return fformat;
}
return fformat;
}

 
Ezt csak így tudtam megoldani...
Az a gond vele, hogy így mindenképpen sztringet kapok vissza, ami nem túl elõnyös, ha mondjuk SetPlayerPos függvényt szeretnék használni, mivel annak a paraméterei, a playerid, és a koordináták.
Az a kérdésem, hogy tudnám megoldani, hogy mindíg adattipusnak megfelelõ értékeket kapjak?
 
Új argumentum:
tipus
Aztán:
 

switch(tipus)
{
case \'f\': //asdasdasd
case \'s\': //asdasdasd
case \'b\': //asdasdasd
case \'d\': //asdasdasd
}

1289
SA-MP: Szerverfejlesztés / A játékos neve elsõ felének megállapítása.
« Dátum: 2012. február 06. - 22:40:07 »
Idézetet írta: ɐʞzssǝlosz date=1328494426\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"16442\" data-ipsquote-contentclass=\"forums_Topic


 

 

new nev[16] = \"Teszt_Nev\";
print(nev); //kiírja az alábbit: Teszt_Nev
new
    i = -1;
while((++i < strlen(nev)))
if(nev == \'_\')
   nev = \' \';
print(nev); //kiírja az alábbit: Teszt Nev

 
Illetve az sscanfos kód nem valami jó, mivel tegyük fel akinek három tagos neve van (pl: John_W_Smith) akkor az alábbit fogja kiírni: John W_Smith. Így ezzel a kóddal átfutunk a nevén egy ciklussal és ha az \"i\" tag egyenlõ \"_\"-vel akkor kicseréljük \" \"-re (azaz szóközre).
 


Minek túl bonyolítani?
 
[/quote]
 
[/quote]
@1ST_Chr
Nem tudom számodra ezen mi a bonyolult, de sscanf már bonyolult, a first verzió ebben a témában meg túl sok native funkciót használ (amiben szintén belsõ ciklusok vannak), emiatt már bonyolultabb.
DrAke megoldása meg egyetlen for ciklussal végzi a dolgát. (lehet rajt egyszerûsíteni még. (tipp: strlen nélkül)) (persze ez nem tér vissza a lehetséges vezetéknév tartalmával csak kicseréli az _(alsóvonal)-kat, szóközre)
Bármelyik szöveg részt vissza lehet kapni, függetlenül attól, mennyi _ (alsóvonal) szerepel a karakterláncban.
Még az strtok függvényt is fel lehet használni egy kis módosítással. (delimiter paraméter kibõvítéssel).
 
[/quote]
Még egyszerûbb:
 

print(\"Betöltve!\");
new nev[16] = \"Teszt_Nev\";
print(nev);
new
    i = 0;
while(((nev == \'_\') ? (nev = \' \') : (nev = nev))) i++;
print(nev);

1290
Segítségkérés / Tag mismach
« Dátum: 2012. február 06. - 19:55:37 »
Idézetet írta: Benceee date=1328552637\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"16682\" data-ipsquote-contentclass=\"forums_Topic
ÜDv.
 
format(Query,100,\"SELECT * FROM felh WHERE nev=\'%s\'\",JatekosNeve(playerid));
mysql_query(Query);
mysql_store_result();
new Float:log[3];
if(mysql_retrieve_row())
{
mysql_get_field(\"lx\", log[0]);
PlayerInfo[playerid][lx] = float(log[0]);
}
mysql_free_result();

 
Erre a két sorra:
 
mysql_get_field(\"lx\", log[0]);
PlayerInfo[playerid][lx] = float(log[0]);

 
Tag micmach warningot ír. Mi a baja?
 
Nem kell a float() függvény, anélkül is jó!

Oldalak: 1 ... 84 85 [86] 87 88 ... 135
SimplePortal 2.3.7 © 2008-2024, SimplePortal