GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: justrics - 2012. november 13. - 00:21:46

Cím: Bilincselés id szerint
Írta: justrics - 2012. november 13. - 00:21:46
Sziasztok írtam egy bilincselõs parancsot amit ugyebár csak rendõr tud használni, viszont jelenleg magát blincseli meg az volna a kérésem tõletek, hogy ha tudtok segíteni abban, hogy hogyan lehet megcsinálni azt, hogy id alapján bilincseljen meg valakit, és, hogy id alapján tudja levenni a bilincset. Plusz megköszönném, ha helyeselnétek is, hogy jól írtam meg vagy valahol hiba van. :) Itt a kód:
 
CMD:bilincs(playerid,params[])
{
if(GetPlayerTeam(playerid) == Rendor)
{
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CUFFED);
}
else
SendClientMessage(playerid,PIROS,\"Nem vagy rendõr te nem használhatsz bilincset\");
return 1;
}
CMD:elenged(playerid,params[])
{
if(GetPlayerTeam(playerid) == Rendor)
{
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
}
else
SendClientMessage(playerid,PIROS,\"Nem vagy rendõr te nem vehetedle a bilincset\");
return 1;
}

 
Elõre is köszönöm! :)
Cím: Bilincselés id szerint
Írta: Kovacs_Richard - 2012. november 13. - 07:34:00
CMD:bilincs(playerid,params[])
{
if(GetPlayerTeam(playerid) == Rendor)
{
    new giveplayerid;
    if(sscanf(params,\"r\",giveplayerid) || !IsPlayerConnected(giveplayerid)) { return SendClientMessage(playerid,PIROS,\"Használat: /bilincs [játékos id / név]\"); }
SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_CUFFED);
      }
    else SendClientMessage(playerid,PIROS,\"Nem vagy rendõr te nem használhatsz bilincset\");
return 1;
}

 
remélem a másik parancs megírása menni fog :)
ha távolságot is szeretnél beállítani:
http://wiki.sa-mp.com/wiki/IsPlayerInRangeOfPoint
Cím: Bilincselés id szerint
Írta: justrics - 2012. november 13. - 09:04:06
Köszönöm szépen a gyors választ!
Még esetleg annyit megtennél, hogy elmagyarázod mi micsoda benne? Mert van amit nem értek, hogy mit csinál.
Cím: Bilincselés id szerint
Írta: ZyZu. - 2012. november 13. - 09:14:58
if(sscanf(params,\"r\",giveplayerid) >> A játékos ID -jét hívja le vagyis amit te beírtál /bilincs ID -be az r lehívja..
!IsPlayerConnected(giveplayerid)) >> Játékos ha csatlakozva van -e akkor bilincseljen csak.
return SendClientMessage(playerid,PIROS,\"Használat: /bilincs [játékos id / név]\"); >> Ezt írja ki ha nem írsz be ID -t csak /bilincs
giveplayerid >> változó
Cím: Bilincselés id szerint
Írta: Kovacs_Richard - 2012. november 13. - 10:08:20
new giveplayerid;

 
változó létrehozása amiben a megbilincselt játékos ID-ját fogjuk tárolni
 
if(sscanf(params,\"r\",giveplayerid) || !IsPlayerConnected(giveplayerid))

 
http://forum.sa-mp.com/showthread.php?t=120356
ha az sscanf függvény visszatérési értéke nem 0 VAGY a \"megadott játékos\" nincs csatlakozva
 
sscanf(params,\"r\",giveplayerid)

 
params stringbõl leválasztasz 1 játékos id-t amit a giveplayerid-ban fogsz eltárolni
( ha nincs olyan játékos ami passzolna a beadott azonosítóval ( ID vagy név részlet ) a params-ban akkor INVALID_PLAYER_ID-t ( 0xFFFF = 65535 ) rendel hozzá a változóhoz )
 
{ return SendClientMessage(playerid,PIROS,\"Használat: /bilincs [játékos id / név]\"); }

 
üzenet kiírása a parancs küldõnek