Portal SAMP
[Ajuda] Comando ver id's proximos - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Comando ver id's proximos (/showthread.php?tid=2671)



Comando ver id's proximos - ViniEC7 - 17/08/2022

Opa, alguém sabe qual função uso pra dar um comando "/perto" aí aparecer os id's de jogadores que estão próximos do local que eu dei o comando?


RE: Comando ver id's proximos - CoelhaO_LokaO - 17/08/2022

Pega a posicão do player armazena
e usa o
IsPlayerInRangeOfPoint


new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);

foreach(Player, i){
if (IsPlayerInRangeOfPoint(i, 7.0, x, y, z))
    {
        SendClientMessage(i,0xFFFFFFFF,"voce esta perto");
        SendClientMessage(playerid,0xFFFFFFFF,i);
    }
}


RE: Comando ver id's proximos - xbruno1000x - 17/08/2022

Código:
CMD:perto(playerid)
{
    foreach(new i : Player)
    {
        ProxDetectorS(6.0, playerid, i);
    }
    return 1;
}

ProxDetectorS(Float:raio, playerid, targetid)
{
    if(IsPlayerConnected(playerid) && IsPlayerConnected(targetid))
    {
        new Float:tPos[3], Float:ttPos[3];
        new Float:result[3];
                new string[144];
        GetPlayerPos(playerid, tPos[0], tPos[1], tPos[2]);
        GetPlayerPos(targetid, ttPos[0], ttPos[1], ttPos[2]);
        result[0] = (tPos[0] -ttPos[0]);
        result[1] = (tPos[1] -ttPos[1]);
        result[2] = (tPos[2] -ttPos[2]);
        if (((result[0] < raio) && (result[0] > -raio)) && ((result[1] < raio) && (result[1] > -raio)) && ((result[2] < raio) && (result[2] > -raio)))
        {
            format(string, sizeof(string), "** ID: %d está próximo de você.", targetid);
                    SendClientMessage(playerid, -1, string);
            return 1;
        }
    }
    return 0;
}

Tente assim. Fiz o comando agora, então não testei.


RE: Comando ver id's proximos - ViniEC7 - 17/08/2022

(17/08/2022 17:08)ViniEC7 Escreveu: Opa, alguém sabe qual função uso pra dar um comando "/perto" aí aparecer os id's de jogadores que estão próximos do local que eu dei o comando?

(17/08/2022 19:47)CoelhaO_LokaO Escreveu: Pega a posicão do player armazena
e usa o
IsPlayerInRangeOfPoint


new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);

foreach(Player, i){
if (IsPlayerInRangeOfPoint(i, 7.0, x, y, z))
    {
        SendClientMessage(i,0xFFFFFFFF,"voce esta perto");
        SendClientMessage(playerid,0xFFFFFFFF,i);
    }
}
Cara, testei aqui e deu certo, valeu!!