Arrest command help -
Face9000 - 05.05.2012
Hello,i've this command:
pawn Код:
CMD:ar(playerid, params[])
{
new playername[MAX_PLAYER_NAME];
new name[MAX_PLAYER_NAME];
new giveplayerid;
GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
GetPlayerName(giveplayerid, name, sizeof(name));
if(sscanf(params, "u", giveplayerid)) return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /ar [ID/PartOfName]");
if(!IsPlayerConnected(giveplayerid))
{
SendClientMessage(playerid,red,"Invalid ID or the player is not connected.");
return 1;
}
if(GetPlayerWantedLevel(playerid) >= 4)
{
new s[150];
format(s, sizeof(s), "You have been arrested by %s (%d).",playername,playerid);
SendClientMessage(giveplayerid,red,s);
new pm[150];
format(pm, sizeof(pm), "~r~Arrested by %s (%d)",playername,playerid);
GameTextForPlayer(giveplayerid,pm,4000,5);
new am[150];
format(am, sizeof(am), "You have arrested %s (%d) and got 5000$ as arrest bonus!",name,giveplayerid);
SendClientMessage(playerid,red,am);
new am2[150];
format(am2, sizeof(am2), "Suspect %s (%d) has been arrested by %s (%d).",name,giveplayerid,playername,playerid);
SendClientMessageToAll(red,am2);
new gam[150];
format(gam, sizeof(gam), "~b~%s (%d) arrested! Well done! You got 5000$ as arrest bonus!",name,giveplayerid);
GameTextForPlayer(playerid,gam,4000,5);
GivePlayerMoney(playerid,5000);
SetPlayerScore(playerid,1);
SetPlayerSpecialAction(giveplayerid,SPECIAL_ACTION_HANDSUP);
ResetPlayerWeapons(giveplayerid);
}
return 1;
}
It works almost good but i've some problem.
If others id except 0,use this command,everything works.
If i use this command against others ids (and im ID 0),it shows "Playername has arrested Playername",with same name and same id.What's wrong?
AW: Arrest command help -
Rimeau - 05.05.2012
pawn Код:
new giveplayerid;
GetPlayerName(giveplayerid, name, sizeof(name));
At this point, giveplayerid will always be 0
But I'm a little confused, why is the arresting player required to have a wanted level higher than 4...?
Re: Arrest command help -
Shadow_ - 05.05.2012
pawn Код:
COMMAND:ar(playerid, params[])
{
new
pName[MAX_PLAYER_NAME],
tName[MAX_PLAYER_NAME],
targetid,
string[128]
;
if(sscanf(params, "u", targetid)) SendClientMessage(playerid, COLOR_WHITE, "USAGE: /ar <playerid>");
else
{
GetPlayerName(playerid, pName, sizeof(pName));
GetPlayerName(targetid, tName, sizeof(tName));
if(IsPlayerConnected(targetid))
{
if(GetPlayerWantedLevel(targetid) >= 4)
{
format(string, sizeof(string), "You have been arrested by %s (%d).", pName, playerid);
SendClientMessage(targetid, red, string);
format(string, sizeof(string), "~r~Arrested by %s (%d)", pName, playerid);
GameTextForPlayer(targetid, string, 4000, 5);
format(strng, sizeof(string), "You have arrested %s (%d) and recieved $5000 as a bonus!", tName, targetid);
SendClientMessage(playerid, red, string);
format(string, sizeof(string), "Suspect %s (%d) has been arrested by %s (%d).", tName, targetid, pName, playerid);
SendClientMessageToAll(red, string);
format(string, sizeof(string), "~b~%s (%d) arrested, Well Done! You have recieved $5000 as a bonus.", tName, targetid);
GameTextForPlayer(playerid, string, 4000, 5);
GivePlayerMoney(playerid, 5000);
SetPlayerScore(playerid, GetPlayerScore(playerid)+1);
SetPlayerSpecialAction(targetid, SPECIAL_ACTION_HANDSUP);
ResetPlayerWeapons(targetid);
}
else return SendClientMessage(playerid, -1, "ERROR: Player does not have wanted level 4+");
}
else return SendClientMessage(playerid, -1, "ERROR: Invalid playerid.");
}
return 1;
}
@Rimeau - It was obviously a mistake.
Re: Arrest command help -
Face9000 - 05.05.2012
Thank you Shadow_,it's fixed now.
Re: Arrest command help -
Shadow_ - 06.05.2012
No problem, Thanks for the rep.