Legközelebbi kordináta.

Indította Szasza, 2014. augusztus 28. - 14:45:29

Előző téma - Következő téma

Szasza

Van pl. 3. db kordinátám .. hogy tudom lekérdezni melyik van hozzám a legközelebb?

SnooP

http://wiki.sa-mp.com/wiki/GetPlayerDistanceFromPoint\" rel=\"external nofollow\">http://wiki.sa-mp.com/wiki/GetPlayerDistanceFromPoint
Remélem ezzel sikerülni fog, ha nem akkor szólj és leírom pontosan :)

rayle

A koordinátákat írd be a tömbbe, és mûködnie kell.
stock LegkozelebbiKoordinata(playerid, Float:tav) // tav - milyen távolságban keresse
{
    new Float: mostanitav, Float: elmentett = 555555.5, id = -1;
    new Float: koordinatak[3][3] = {
        {x, y, z}, // 1. koordináta
        {x, y, z}, // 2. koordináta
        {x, y, z} // 3. koordináta
    };
    for(new x = 0; x < sizeof(koordinatak); x++)
    {
        mostanitav = GetPlayerDistanceFromPoint(playerid, koordinatak
  • , koordinatak
  • [1], koordinatak
  • [2]);
        if(mostanitav < elmentett && mostanitav < tav)
        {
            mostanitav = elmentett;
            id = x;
        }
    }
    return id;
}

Szasza

Ide:
 

if(mostanitav < elmentett && mostanitav < tav)
{
            mostanitav = elmentett;
            id = x;
    SetPlayerCheckpoint(playerid,koordinatak
  • , koordinatak
  • [1], koordinatak
  • [2],5);
}

 
Beleírtam ugye a checkponitot de mindig csak 1 cp-t mutat akárhol állok

rayle

new Float: koordinatak[3][3] = {
        {x, y, z}, // 1. koordináta
        {x, y, z}, // 2. koordináta
        {x, y, z} // 3. koordináta
    };

 
Itt kell az x, y, z t behelyettesíteni a te koordinátáidra. Pl:
 
new Float: koordinatak[3][3] = {
        {193.31, 391.135, 9132.12}, // 1. koordináta
        {392.214, 1295.21, 9125.2}, // 2. koordináta
        {821.123, 351.213, 125.12} // 3. koordináta
    };

 
Ez csak egy példa, azokat a koordinátákat írd bele amelyek között szeretnéd megtalálni a játékoshoz legközelebb lévõt. A többi részt hagyd úgy.