Sziasztok srácok.
Az a helyzet, hogy egy meghíváson alapuló bandarendszert írok amihez mindent megírtam már kivéve ezzel az egy parancsal lenne bajom.
Most kezdtem újra a scriptelgetést, és nem tudok rájönni, mit cseszhettem el.
Az a lényeg hogy /inv [id] parancsal lehetne meghívni játékost, DE..
én a játékban akármilyen id-t irok, be ha fent van az illetõ ha nincs fent,
csak ezt ismétli a parancs..
[insane][banda]: Helyes használat: /inv [id]
Csak ezt az egy sort. például beírom: /inv 4 \\ akkor is ezt adja ki, ha fent van egy 4-es idjü játékos ha nincs fent. :s
CMD:inv(playerid, params[])
{
new targetid;
if(sscanf(params,\"u\", targetid)) return SendClientMessage(playerid, COLOR_RED, \"[insane][banda]: Helyes használat: /inv [id]\");
if(Pi[playerid][bANDAID] < 1) return SendClientMessage(playerid, COLOR_RED,\"[insane][banda]: Te nem vagy bandatag sem bandavezér\");
if(Pi[playerid][bANDARANG] < 4) return SendClientMessage(playerid, COLOR_RED,\"[insane][banda]: Te nem vagy bandavezér vagy bandavezér helyettes\");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, \"[insane][banda]: Ilyen ID-jû játékos nincs a szerveren\");
if(Pi[targetid][Meghivva] > 0) return SendClientMessage(playerid, COLOR_RED,\"[insane][banda]: Ezt a játékos már meghívás alatt áll\");
if(Pi[targetid][bANDAID] > 0) return SendClientMessage(playerid, COLOR_RED,\"[insane][banda]: Ez a játékos már bandatag valahol\");
//Meghívó fél ellenõrzése
if(Pi[playerid][bANDAID] == 1)
{
Pi[targetid][Meghivva] = 1;
} else
if(Pi[playerid][bANDAID] == 2)
{
Pi[targetid][Meghivva] = 2;
}
new targetname[MAX_PLAYER_NAME],
playername[MAX_PLAYER_NAME];
GetPlayerName(playerid,playername,sizeof(playername));
GetPlayerName(targetid,targetname,sizeof(targetname));
new targetmsg[128],
playermsg[128];
format(playermsg,sizeof(playermsg),\"[insane][banda]: Meghívtad %s-t a bandádba. Várj a válaszára\",targetname);
format(targetmsg,sizeof(targetmsg),\"[insane][banda]: %s meghívott a bandájába. Ha szeretnél csatlakozni: /elfog ( 3 perced van )\",playername);
SendClientMessage(playerid,COLOR_AQUA,playermsg);
SendClientMessage(targetid,COLOR_AQUA,targetmsg);
return 1;
}
Segítsetek kérlek.
Dupla hozzászólás automatikusan összefûzve. ( 2013. október 10. - 21:30:32 )
Témát zárom. Megoldottam. hála AmF-nek!
Akit érdekel és ebbe a hibába van, frissitse az sscanf pluginját és a függvénykönyvtárát is!