13.05.2012, 20:24
Errado! essa funзao manda mensagem pra qm esta perto e nгo imobiliza! Oq ta verificando a distacia й a funзгo 'GetClosestPlayer'.
Espero que funcione!
pawn Код:
if(strcmp(cmd, "/imo", true) ==0)
{
if(IsPlayerConnected(playerid))
{
if(!IsACop(playerid))
{
SendClientMessage(playerid, COLOR_GREY, "Vocк nгo й um Policial.");
return true;
}
if(OnDuty[playerid] != 1)
{
SendClientMessage(playerid, COLOR_GREY, "Vocк nгo Bateu o cartгo.");
return true;
}
new PTtmP[24], PTIndeX; PTtmP = strtok(cmdtext, PTIndeX);
if(!strlen(PTtmP)) return SendClientMessage(playerid, COLOR_GREY, "/imo [id]");
if(gTeam[playerid] == 2 || IsACop(playerid) || IsAGOV(playerid))
{
if(IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, COLOR_GREY, "Nгo й possivel imobilizar de dentro do carro.");
return true;
}
new suspect = strval(PTtmP);
if(IsPlayerConnected(suspect))
{
if(PlayerCuffed[suspect] > 0)
{
SendClientMessage(playerid, COLOR_GREY, "Suspeito Imobilizado.");
return true;
}
if(GetDistanceBetweenPlayers(playerid,suspect) < 3)
{
if(IsPlayerInAnyVehicle(suspect))
{
SendClientMessage(playerid, COLOR_GREY, "O suspeito estб em um carro, faзa ele descer antes.");
return true;
}
if(IsACop(suspect))
{
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo pode dar imo em Policiais.");
return true;
}
GetPlayerName(suspect, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "Vocк foi imobilizado por %s por 20 segundos.", PlayerName(playerid));
SendClientMessage(suspect, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "Vocк imobilizou o(a) %s por 20 segundos.", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "%s Imobilizou %s, para nгo fugir.", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
GameTextForPlayer(suspect, "~r~Imobilizado", 2500, 3);
Controle(suspect, 0);
SetPlayerAttachedObject(suspect, 4, 19418, 6, -0.031999, 0.024000, -0.024000, -7.900000, -32.000011, -72.299987, 1.115998, 1.322000, 1.406000);
SetPlayerSpecialAction(suspect, SPECIAL_ACTION_CUFFED);
PlayerCuffed[suspect] = 1;
PlayerCuffedTime[suspect] = 20;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Ele nгo estб perto de Vocк!");
return true;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Vocк nгo й um Oficial !");
}
}
return true;
}