-
GetPlayerPoolSize
Lekérdezi a legnagyobb létrehozott playerid számát.
Szükséges kliens/szerver verzió: 0.3.7 RC2 vagy újabb.
Paraméterei
(Nincsenek paraméterei)
Visszatérése | A legnagyobb létrehozott playerid számával. |
Példa
for(new i = 0; i <= GetPlayerPoolSize(); i++)
{
if(IsPlayerConnected(i))
{
SetPlayerHealth(i,100.0);
}
}
Kapcsolódó funkciók
GetVehiclePoolSize
Forrás: http://wiki.sa-mp.com/wiki/GetPlayerPoolSize
-
Megjegyzés/Érdekesség/Észrevétel: Nem tudom hogy azóta javítva lett, ((vagy csak nekem csinál olyat,)) hogy mikor újraindítom a szervert, az első játékos mikor fellép, a GetPlayerPoolSize() fgv. nem működik megfelelően az OnPlayerConnect() fgv. alatt. Annak ellenére hogy a visszaadott értéke =0.
!De ha a játékos kilép, és újra belép/vagy más akkor már megfelelően működik.
-
És tényleg. Először lehívja az OnPlayerConnect eljárást aztán változik meg PlayerPool mérete. gj kye.
Mondjuk nem nagy meglepetés, mert van pár funkció amivel hasonló problémákkal ütközik, mint például a Kick funkció.
-
M[K]_Sh1ft_ date=1451838022]
Megjegyzés/Érdekesség/Észrevétel: Nem tudom hogy azóta javítva lett, ((vagy csak nekem csinál olyat,)) hogy mikor újraindítom a szervert, az első játékos mikor fellép, a GetPlayerPoolSize() fgv. nem működik megfelelően az OnPlayerConnect() fgv. alatt. Annak ellenére hogy a visszaadott értéke =0.
!De ha a játékos kilép, és újra belép/vagy más akkor már megfelelően működik.
Azèrt van ez mert a player id 1 ember esetèn 0 és a 0 értek a poolsize-ban 1re ugrik 0ról. Tehàt vagy képtelen érzékelni 1 embert vagy a script hibás mert i < pool érték kell mert ha egyenlőt is adunk az 2 értéket fog szàmolni. Mikor meghívja az érték 1 lesz de az i =0 értékkel meg 2 számolást végez. Tehát i = 1 <= pool vagy i = 0 < poll.
Lehetséges javítás:
for(new i = 0; i < GetPlayerPoolSize(); i++)
for(new i = 0; i < GetPlayerPoolSize()+1; i++)
Vagy
for(new i = 1; i <= GetPlayerPoolSize(); i++)
for(new i = 1; i <= GetPlayerPoolSize()+1; i++)
Amíg nem javítják +1 értéket kell adni.