Szerző Téma: IsPlayerInRangeOfPoint kérdés.  (Megtekintve 908 alkalommal)

IsPlayerInRangeOfPoint kérdés.
« Dátum: 2012. március 15. - 10:39:06 »
0 Show voters
Egy nagyon egyszerû kérdésem lenne felétek, de nagyon kezdõ vagyok PAWNO terén, szóval légyszi ne hordjatok le.
Nos. Csak annyit szeretnék, hogy ha a megadott pozíció 30méteres környékén van a player, akkor egy egyszerû SendClientMessage-et dobjon.
Egy ismerõsöm ezt írta:
 
public OnPlayerUpdate(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 30, 1480.612, -1743.773, 13.546)){
                        SendClientMessage(playerid, 0x1E84D7FF, \"Pozícióban vagy.\");
}
return 1;
}

 
De ha ottvagyok a pozícióban, akkor floodol ezerrel.
Légyszi segítsetek :) :angel:
« Utoljára szerkesztve: 2012. március 15. - 11:09:07 írta itachi »

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
IsPlayerInRangeOfPoint kérdés.
« Válasz #1 Dátum: 2012. március 15. - 10:41:31 »
0 Show voters
Talán,
 
public OnPlayerUpdate(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 30, 1480.612, -1743.773, 13.546))
   {
         SendClientMessage(playerid, 0x1E84D7FF, \"Pozícióban vagy.\");
         return 1;
   }
   return 1;
}

 
de ahogy átgondoltam nembiztos hogy jó :D van másik ötletem is, de elõtte teszteld ezt.  ;)

IsPlayerInRangeOfPoint kérdés.
« Válasz #2 Dátum: 2012. március 15. - 10:49:18 »
0 Show voters
Ígysem jó :no: . Szóval az a probléma, hogy ha a pozíciónál vagyok, akkor ha mozgok floodloja, hogy pozícióban vagy. Gondolom a public funkcióval van a baj.

Nem elérhető rewan

  • 960
    • Profil megtekintése
IsPlayerInRangeOfPoint kérdés.
« Válasz #3 Dátum: 2012. március 15. - 10:52:51 »
0 Show voters
[pawn]new pozicioban[MAX_PLAYERS];
public OnPlayerUpdate(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 30, 1480.612, -1743.773, 13.546) && pozicioban[playerid] != 1)
   {
         SendClientMessage(playerid, 0x1E84D7FF, \"Pozícióban vagy.\");
         pozicioban[playerid] = 1;
         return 1;
   }
   return 1;
}[/pawn]
Próbáld meg így, egy változó segítségével.

IsPlayerInRangeOfPoint kérdés.
« Válasz #4 Dátum: 2012. március 15. - 10:58:14 »
0 Show voters
Ez már alakul :D. Csak még egy olyan kéne, hogyha kimegyünk belõle és visza, akkoris kiírja.  ^-^

Nem elérhető rewan

  • 960
    • Profil megtekintése
IsPlayerInRangeOfPoint kérdés.
« Válasz #5 Dátum: 2012. március 15. - 11:04:23 »
0 Show voters
new pozicioban[MAX_PLAYERS];
public OnPlayerUpdate(playerid)
{
    if(IsPlayerInRangeOfPoint(playerid, 30, 1480.612, -1743.773, 13.546) )
   {
         if(pozicioban[playerid] == 1) return 1;
         SendClientMessage(playerid, 0x1E84D7FF, \"Pozícióban vagy.\");
         pozicioban[playerid] = 1;
         return 1;
   }
    else if(pozicioban[playerid] == 1) pozicioban[playerid] = 0;
   return 1;
}

 
Próbáld ezt.
Szólj ha valami nem jó. :)

IsPlayerInRangeOfPoint kérdés.
« Válasz #6 Dátum: 2012. március 15. - 11:08:30 »
0 Show voters
Tökéletesen mûködik, nagyon szépen köszönöm :)  :thumbsup: :D

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal