[POMOC]IsObjectInRangeOfPoint

Započeo Belajac, Januar 28, 2013, 16:53:45 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim:CLRP
Detaljan opis problema:
Imamo ovako
if(IsPlayerInRangeOfPoint(playerid, 7.0, 2695.6880, -1704.6300, 11.8438))
da li postoji nesto slicno za objecte npr. ovako
if(IsObjectInRangeOfPoint(playerid, 7.0, 2695.6880, -1704.6300, 11.8438))
[/code]
tako da ako je object na toj kordinati ,igracu izadje npr. neki text.

Nasao sam ovo:
stock Float:GetDistanceBetweenPoints(Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2) //By Gabriel "Larcius" Cordes
{
    return floatadd(floatadd(floatsqroot(floatpower(floatsub(x1,x2),2)),floatsqroot(floatpower(floatsub(y1,y2),2))),floatsqroot(floatpower(floatsub(z1,z2),2)));
}

Ali neznam kako da ga iskoristim,ubacim to u skriptu ali kako dalje?
Poslednja Izmena: Januar 28, 2013, 18:18:02 POSLE PODNE od Belajac


Ne postoji nikakav takva nativna funkcija, a za ovu funkciju za koju imaš kod, ako ju želiš koristiti samo ju ubaciš na kraj moda i koristiš ju.

Last nick: Paradox

Ne postoji native funkcija, no vrlo jednostavno je možeš sam napraviti. Evo ti moj primjer, nabrzinu sam ga napravio, pa editiraj kako želiš.


IsObjectInRangeOfPoint( _objectid, Float:_radius, Float:_X, Float:_Y, Float:_Z  ) { // Parametre sam ti posložio da su slični ko u IsPlayerInRangeOfPoint

new

Float:X,
Float:Y,
    Float:Z; // Varijable za trenutnu poziciju objekta, _objectid-a

    GetObjectPos( _objectid, X, Y, Z ); // Funkcija za dobivanje pozicije

    if(( floatabs ( _X - X ) < _radius ) && ( floatabs ( _Y - Y ) < _radius ) && ( floatabs( _Z - Z ) < _radius )) return true; // Ovo ti je jednostavna matematika, na sličnom principu radi IsPlayerInRangeOfPoint.
return false;
}