CMD:localizar(playerid, params[])
{
new id,string[90], Float: Pos[3];
if(sscanf(params), "d", id) return 1;
if(!IsPlayerConnected(id)) return 1;
format(string, sizeof(string), "Vocк localizou ID:%d",id);
GetPlayerPos(id, Pos[0], Pos[1], Pos[2]);
SetPlayerCheckpoint(playerid, Pos[0], Pos[1], Pos[2], 3.0);
return SendClientMessage(playerid,-1, string);
}
PHP код:
|
new Timer[MAX_PLAYERS];
new Float:Pos[3];
public OnPlayerEnterCheckpoint(playerid)
{
DisablePlayerCheckpoint(playerid);
SendClientMessage(playerid, -1, "Vocк chegou ate ele");
return 1;
}
CMD:localizar(playerid, params[])
{
new id,string[90];
if(sscanf(params), "d", id) return 1;
if(!IsPlayerConnected(id)) return 1;
format(string, sizeof(string), "Vocк localizou ID:%d",id);
GetPlayerPos(id, Pos[0], Pos[1], Pos[2]);
SetPlayerCheckpoint(playerid, Pos[0], Pos[1], Pos[2], 3.0);
Timer[playerid] = SetTimerEx("LocalizarP1", 1500, true, "i", id);
SetPVarFloat(playerid,"xpos",Pos[0]), SetPVarFloat(playerid,"ypos",Pos[1]), SetPVarFloat(playerid,"zpos",Pos[2]);
SendClientMessage(playerid,-1, string);
return 1;
}
forward LocalizarP1(playerid);
public LocalizarP1(playerid)
{
SetTimerEx("LocalizarP2", 100, false, "i", playerid);
return 1;
}
forward LocalizarP2(playerid);
public LocalizarP2(playerid)
{
SetPlayerCheckpoint(playerid, GetPVarFloat(playerid,"xpos"), GetPVarFloat(playerid,"ypos"), GetPVarFloat(playerid,"zpos"), 3.0);
return 1;
}
mas para ficar aparecendo no mapa sem que seja com um checkpoint, que fique sу no radar creio que se usa:
SetPlayerMarkerForPlayer |
new
timerCP[MAX_PLAYERS],
bool: Localizando[MAX_PLAYERS];
public OnPlayerDisconnect(playerid, reason)
{
KillTimer(timerCP[playerid]);
return true;
}
CMD:localizar(playerid, params[])
{
if(sscanf(params, "s[10]", params))
return SendClientMessage(playerid, -1, "/localizar <id/desligar>");
if(!strcmp(params, "desligar"))
{
KillTimer(timerCP[playerid]);
Localizando[playerid] = false;
DisablePlayerCheckpoint(playerid);
}
else {
static id_player;
id_player = strval(params);
if(!IsPlayerConnected(id_player) || playerid == id_player)
return SendClientMessage(playerid, -1, "ID Invбlido");
if(Localizando[playerid])
return SendClientMessage(playerid, -1, "Vocк jб estб localizando alguйm. Digite: /localizar desligar");
Localizando[playerid] = true;
timerCP[playerid] = SetTimerEx("AtualizarCP", 1000, true, "ii", playerid, id_player);
}
return true;
}
AtualizarCP(playerid, id_player);
public AtualizarCP(playerid, id_player)
{
if(!IsPlayerConnected(id_player))
{
KillTimer(timerCP[playerid]);
Localizando[playerid] = false;
DisablePlayerCheckpoint(playerid);
return false;
}
static Float: posx, Float: posy, Float: posz;
GetPlayerPos(id_player, posx, posy, posz);
SetPlayerCheckpoint(playerid, posx, posy, posz, 5.0);
return true;
}
PHP код:
|