CMD:Fogo(playerid, params[]) { if(!NivelRequerido(playerid, 2)) return 1; if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "Use /fogo [ID]", "Use o comando para colocar fogo em um jogador."); new Float:X, Float:Y, Float:Z; GetPlayerPos(ID, X, Y, Z); CreateExplosion(X, Y, Z, 1, 5); MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} colocou fogo no jogador %s", Nome(playerid), Nome(ID)); return 1; }
//No topo do GM
forward ProxDetectorS(Float:radi, playerid, targetid);
No final do GM
public ProxDetectorS(Float:radi, playerid, targetid)
{
if(IsPlayerConnected(playerid)&&IsPlayerConnected(targetid))
{
new Float:posx, Float:posy, Float:posz;
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
//radi = 2.0; //Trigger Radius
GetPlayerPos(targetid, posx, posy, posz);
tempposx = (oldposx -posx);
tempposy = (oldposy -posy);
tempposz = (oldposz -posz);
//printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
}
return 0;
}
CMD:Fogo(playerid, params[])
{
if (ProxDetectorS(5.0, playerid, giveplayerid))// o 5.0 e a distancia minina para o comando ser usado
{
if(!NivelRequerido(playerid, 2)) return 1;
if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "Use /fogo [ID]", "Use o comando para colocar fogo em um jogador.");
new Float:X,
Float:Y,
Float:Z;
GetPlayerPos(ID, X, Y, Z);
CreateExplosion(X, Y, Z, 1, 5);
MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} colocou fogo no jogador %s", Nome(playerid), Nome(ID));
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Voce esta longe do player");
}
return 1;
}
Olhe se ja existe essa forward no seu GM
pawn Код:
pawn Код:
|
(1204) : error 017: undefined symbol "giveplayerid" Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 1 Error.
public OnPlayerCommandText(playerid, cmdtext[])
{
new giveplayerid, moneys, idx;
new giveplayerid;
CMD:Fogo(playerid, params[]) {
new
Float:p[3],
T_ID;
if(!NivelRequerido(playerid, 2)) return 1;
if(sscanf(params, "u", T_ID)) return MensagemDupla(playerid, "Use /fogo [ID]", "Use o comando para colocar fogo em um jogador.");
GetPlayerPos(T_ID, p[0], p[1], p[2]);
if(IsPlayerInRangeOfPoint(playerid,30,p[0],p[1],p[2])) return SendClientMessage(playerid, 0xC0C0C0AA, "Vocк estб muito proximo do player.");
CreateExplosion(p[0], p[1], p[2], 1, 5);
MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} colocou fogo no jogador %s", Nome(playerid), Nome(T_ID));
return 1;
}