Szerző Téma: [STOCK] GetPlayerID + Nev függvény  (Megtekintve 2555 alkalommal)

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
[STOCK] GetPlayerID + Nev függvény
« Dátum: 2013. június 23. - 09:44:55 »
+3 Show voters
Sziasztok!
Itt, a Fórumon a GetPlayerID-t sehol sem találtam, ezért felételezem, még nincs fent, így kitettem nektek ide. Még régebben csináltam, és mind a mai napig használom. Pár perc volt megírni, majd tesztelni. Egyébként most rakok ki ide elõször kódot, remélem haszna is lesz. Nem is írok többet, hiszen minek? Na jó, még írok egy kicsit, a felesleges kommentek elkerülése végett...
Felmerülõ kérdések
Mûködik?
Igen, mûködik. Legalábbis az én tesztjeim alapján. Ha bármi féle hibát találtok a kódban, azt nyugodtan osszátok meg velem, és kijavítom, hogy ne legyen kint rossz kód. Alább látható a teszt is, amelyhez az egyik készülõ módom eddig bekerült NPC-jit használtam, amelyben amúgy is szükségem van egy mûködõképes GetPlayerID-re.
\"a1_2013_11_21_wj0dvjnqwr.jpg\"
 
printf(\"\\n\\nBrandon ID-je:\\t\\t%d\", GetPlayerID(\"Brandon\")); // 7 az ID-je
printf(\"\\n\\nsajtxdd ID-je:\\t\\t%d\", GetPlayerID(\"sajtxdd\")); // -1 az ID-je
printf(\"\\n\\nAaron ID-je:\\t\\t%d\", GetPlayerID(\"Aaron\")); // 14 az ID-je
printf(\"\\n\\nNatasha ID-je:\\t\\t%d\", GetPlayerID(\"Natasha\")); // 13 az ID-je
printf(\"\\n\\nJack ID-je:\\t\\t%d\", GetPlayerID(\"Jack\")); // 0 az ID-je
printf(\"\\n\\nGordonLC ID-je:\\t\\t%d\", GetPlayerID(\"GordonLC\")); // 1 az ID-je
printf(\"\\n\\nGordon ID-je:\\t\\t%d\", GetPlayerID(\"Gordon\")); // 4 az ID-je
printf(\"\\n\\nGord ID-je:\\t\\t%d\\n\\n\", GetPlayerID(\"Gord\")); // -1 az ID-je

 
Ez a teszt persze nem garantálja, hogy soha az életben nem lesz vele semmi nemû hiba, azonban ettõl függetlenül a feljebb látható teszt teljes mértékben sikeresnek mondható.
Ha rákeresek, kidobja ezt a találatot: http://wiki.sa-mp.com/wiki/GetPlayerID - Akkor meg minek ez a cucc?
Mint írja is a hivatalos wiki, ez egy külön hozzáadandó funkció.
 
Important Note: This is a custom function, which can be found in Useful_Functions.[/quote]
Hogyan használjam? Kapok egy példát?
Használata egyszerû: név alapján lekérdezed a játékos ID-jét. Például:
 
GetPlayerID(\"Dfoglalo\");

 
Így lekérdeztem az ID-met, mert a nevem SAMP-on Dfoglalo. Ezt be lehet építeni sok helyre, akár egy egyszerû parancsba is, pl: /id-m, és kiírja ezen függvény segítségével az ID-det. Habár ott a playeridt is kiírva megkaphatná az ember a saját ID-jét, szóval ez nem a legjobb példa a dologra, de megteszi.
Na ennyi már tényleg elég. Jöjjenek hát a függvények.
A Nev függvény; a játékos nevének lekérdezésére, egyszerûen.
 
stock Nev(playerid)
{
new Neve[MAX_PLAYER_NAME];
GetPlayerName(playerid, Neve, sizeof(Neve));
return Neve;
}

 
A GetPlayerID függvény; a játékos ID-jének lekérdezése, név alapján.
 

stock GetPlayerID(LekertNev[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
   if(!strcmp(LekertNev, Nev(i)))
   {
      return i;
   }
}
}
return -1;
}

 
Használjátok egészséggel!
 
Dfoglalo
« Utoljára szerkesztve: 2013. november 21. - 18:52:53 írta Dfoglalo »

Nem elérhető BoOy

  • 3209
  • 2013-as év szkriptere
    • Profil megtekintése
[STOCK] GetPlayerID + Nev függvény
« Válasz #1 Dátum: 2013. november 21. - 20:40:45 »
0 Show voters
Nagyon jó lett. Gratulálok ;)

[STOCK] GetPlayerID + Nev függvény
« Válasz #2 Dátum: 2013. november 21. - 20:50:26 »
0 Show voters
NPC-nél jól jön ez a kis egyszerû kód. :D
« Utoljára szerkesztve: 2013. november 21. - 20:52:30 írta bbTamas »

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
[STOCK] GetPlayerID + Nev függvény
« Válasz #3 Dátum: 2013. november 21. - 21:41:22 »
0 Show voters
Köszi :D Remélem tényleg teljes mértékben jó, nem csak a tesztem volt sikeres. :P

[STOCK] GetPlayerID + Nev függvény
« Válasz #4 Dátum: 2013. november 21. - 21:43:07 »
0 Show voters
A sscanf \"u\" paramétere ugyanezt csinálja.
 

stock GetPlayerID(name[])
{
   new
       playerid;
   sscanf(name, \"u\", playerid);
   return playerid;
}

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
[STOCK] GetPlayerID + Nev függvény
« Válasz #5 Dátum: 2013. november 21. - 21:49:10 »
0 Show voters
Az a paraméter nálam valamiért hajlamos :rolleyes: bebugolni a 16. ID-tõl, azaz a 15-ös ID-tõl fölfele, azért nem is nagyon használom, de az is egy megoldás. :)
« Utoljára szerkesztve: 2013. november 21. - 22:33:49 írta Dfoglalo »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal