Szerző Téma: Kinti börtönbõl elszökés = visszarakás  (Megtekintve 445 alkalommal)

Kinti börtönbõl elszökés = visszarakás
« Dátum: 2012. November 10. - 17:20:30 »
0 Show voters
Üdv, olyan kérdésem lenne, miként lehetne kivitelezni az alábbi tervet:
Kinti börtönt ha elhagyja a bent lévõ rab, [mondjuk helivel kiviszik] akkor valamennyi táv után visszadobja a börtönbe.
Gondolom az  PlayerToPoint vagy IsPlayerInRangeOfPoint  függvénnyel, ha igen hogyan?
Esetleg van hasonló példa script valahol?
Köszönöm!

Nem elérhető Kovacs_Richard

  • 1743
  • HRP Fejlesztő
  • Discord: Kovacs_Richard#0321
    • Profil megtekintése
    • Hun Role Play Web
Kinti börtönbõl elszökés = visszarakás
« Válasz #1 Dátum: 2012. November 10. - 17:25:54 »
0 Show voters
idõzítõvel periódikusan csekkolod milyen messze van a börtön közepétõl ha jármûben van...
tehát X másodpercenként megnézed milyen messze van és ha messzebb van X távnál akkor visszarakod
gyalog meg WorldBound ajánlott:
http://wiki.sa-mp.com/wiki/SetPlayerWorldBounds
Régóta nem tevékenykedem, mint SA-MP scripter.
HRP Fejlesztő.

Nem elérhető ZyZu.

  • Globális moderátor
  • 8939
  • my turbo diesel forum
  • Discord: ZyZu.
    • Profil megtekintése
Kinti börtönbõl elszökés = visszarakás
« Válasz #2 Dátum: 2012. November 10. - 18:14:59 »
0 Show voters
Inkább a SetPlayerWorldBounds használd ne használd ilyenre a  IsPlayerInRangeOfPoint..
A külömbség az, hogy egy adott négyzetbe tesz téged.. és a Point meg egy adott pontba..
 
SetPlayerWorldB.. amit linkelt Richard az hasznos lesz..
 

/*
         ymax
     |----------|
     |          |
xmin |          | xmax
     |          |
     |----------|
         ymin
*/

Nem elérhető bendor

  • 2949
    • Profil megtekintése
Kinti börtönbõl elszökés = visszarakás
« Válasz #3 Dátum: 2012. November 10. - 18:28:21 »
0 Show voters
new Timer[MAX_PLAYERS];
forward OutOfBound(playerid);
CMD:bortonbezar(playerid,params[])
{
new id;
if(sscanf(params,\"u\",id)) return 0;
Timer[id] = SetTimerEx(\"OutOfBound\", 1000,true,\"i\",playerid);
return 1;
}
CMD:bortonkinyit(playerid,params[])
{
new id;
if(sscanf(params,\"u\",id)) return 0;
KillTimer(Timer[id]);
return 1;
}
public OutOfBound(playerid)
{
if(!IsPlayerInRangeOfPoint(playerid, 50.0, 0.0, 0.0, 5.0))
SetPlayerPos(playerid,0.0,0.0,5.0);
return 1;
}

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal