SA-MP Forums Archive
[Ajuda] GetPlayerDistanceFromPoint - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] GetPlayerDistanceFromPoint (/showthread.php?tid=444065)



GetPlayerDistanceFromPoint - iCracker - 15.06.2013

Gostaria vocкs me retirasem uma dъvida, Como eu posso comparar qual o ponto mais perto, usando a funзao,
GetPlayerDistanceFromPoint, Digamos assim, Estou fazendo um sistema de hospital, so que eu quero compara qual o
mais prуximo do Player, para quando ele morrer, ir para o hospital mais prуximo no caso ele captura a cordenada do player,
joga pra uma Float e checar as 6 variaveis que comportaria os valores do Float dos hospitais e obter o mas prуximo do Player como ficaria o elseif?

Exemplo:

PHP код:
new
      
FloatdistanciaGetPlayerDistanceFromPoint(playerid237.9115.61010.2), 
Wike da funзao
https://sampwiki.blast.hk/wiki/GetPlayerDistanceFromPoint


Re: GetPlayerDistanceFromPoint - lucasgolino - 15.06.2013

Use o metodo da bolha!

http://pt.wikipedia.org/wiki/Bubble_sort
http://cafofodoprogramador.blogspot....nguagem-c.html
http://codigofonte.uol.com.br/codigo...bubble-sort%5D
http://www.vivaolinux.com.br/script/...ort-em-vetores
http://mathbits.com/MathBits/CompSci/Arrays/Bubble.htm


Re: GetPlayerDistanceFromPoint - iCracker - 15.06.2013

e um loop muito complexo poderia dar um exemplo de como usalo no meu caso?


Respuesta: GetPlayerDistanceFromPoint - DartakousLien - 15.06.2013

olha a minha mensagem!

para quem estiver interessado vou deixar aqui o exemplo tbm

pawn Код:
//no topo do GM
#define TOTAL_DE_HOSPITAIS 3




//no comando


new Float:poshospital[TOTAL_DE_HOSPITAIS][3] = {
    {0.0,0.0,0.0},//coloca as coordenadas do hospital, voce poderб ausa-las para setar a posicao (veja mais abaixo)
    {0.0,0.0,0.0},
    {0.0,0.0,0.0}
};
new Float:menordistancia=0xFFFFFF;//16777215 em decimal
new Float:distactual;
new hospital;

for(new nh=0;nh!=TOTAL_DE_HOSPITAIS;nh++) {
    distactual = GetPlayerDistanceFromPoint(playerid,poshospital[nh][0],poshospital[nh][1],poshospital[nh][2]);
    if (distactual<menordistancia) {
        menordistancia=distactual;
        hospital=nh;
    }
}

//o hospital mais perto й o "hospital"
//agora voce pode usar por exemplo SetPlayerPos(playerid,poshospital[hospital][0],poshospital[hospital][1],poshospital[hospital][2]);



Re: GetPlayerDistanceFromPoint - iCracker - 15.06.2013

eu entendi so o comeзo como ele calculo a posiзao se ta tudo zerada? tem como explicar melhor mas desde ja
obrigado pela ajuda.


Re: GetPlayerDistanceFromPoint - iCracker - 15.06.2013

deu esses warings

warning 213: tag mismatch
warning 213: tag mismatch
warning 213: tag mismatch
(82 : warning 213: tag mismatch
(82 : warning 213: tag mismatch
(82 : warning 213: tag mismatch
(829) : warning 213: tag mismatch
(829) : warning 213: tag mismatch
(829) : warning 213: tag mismatch
(830) : warning 213: tag mismatch
(830) : warning 213: tag mismatch
(830) : warning 213: tag mismatch
(831) : warning 213: tag mismatch
(831) : warning 213: tag mismatch
(831) : warning 213: tag mismatch
(832) : warning 213: tag mismatch
(832) : warning 213: tag mismatch
(832) : warning 213: tag mismatch


nessas linhas
{1172.5897,-1323.2572,15.4028},//coloca as coordenadas do hospital, voce poderб ausa-las para setar a posicao (veja mais abaixo)
{2029.7606,-1402.9940,17.2528},
{-2664.5527,637.2999,14.4531},
{-316.1042,1053.5287,20.3103},
{1607.4232,1817.7029,10.8203},
{-2202.5264,-2308.6250,31.2086}
};
new Float:menordistancia=0xFFFFFF;//16777215 em decimal
new Float:distactual;
new hospital;

for(new nh=0;nh!=TOTAL_DE_HOSPITAIS;nh++) {
distactual = GetPlayerDistanceFromPoint(playerid,poshospital[nh][0],poshospital[nh][1],poshospital[nh][2]);
if (distactual<menordistancia) {
menordistancia=distactual;
hospital=nh;


Re: GetPlayerDistanceFromPoint - iCracker - 17.06.2013

ajuda aew galera '-' preciso muito disso.


Respuesta: GetPlayerDistanceFromPoint - DartakousLien - 17.06.2013

troque
pawn Код:
new poshospital[TOTAL_DE_HOSPITAIS][3] = {
por
pawn Код:
new Float:poshospital[TOTAL_DE_HOSPITAIS][3] = {



Re: Respuesta: GetPlayerDistanceFromPoint - Lucas_Pawno - 17.06.2013

Quote:
Originally Posted by DartakousLien
Посмотреть сообщение
troque
pawn Код:
new poshospital[TOTAL_DE_HOSPITAIS][3] = {
por
pawn Код:
new Float:poshospital[TOTAL_DE_HOSPITAIS][3] = {
Testei aqui e funcionou