-
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:
-
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. ;)
-
Í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.
-
[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.
-
Ez már alakul :D. Csak még egy olyan kéne, hogyha kimegyünk belõle és visza, akkoris kiírja. ^-^
-
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ó. :)
-
Tökéletesen mûködik, nagyon szépen köszönöm :) :thumbsup: :D