Szerző Téma: GetMaxPlayers() / MAX_PLAYERS melyik a jobb?  (Megtekintve 1795 alkalommal)

Nem elérhető totar

  • 425
    • Profil megtekintése
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Dátum: 2012. január 22. - 17:00:23 »
0 Show voters
üdv
az lenne a kérdésem, hogy melyik a jobb?
GetMaxPlayers() vagy MAX_PLAYERS?
Mert olvastam vhol, hogy valakinek a MAX_PLAYERS helyett GetMaxPlayers()-t használta, és a cpu használatot csökkentette.
asszem 4332 rõl 534-re ez csak ilyen érzékeltetési arány....
ne ez igaz?
átírjam a MAX_PLAYERS-eket GetMaxPlayers()-re??
itt a link:
http://forum.sa-mp.com/showthread.php?t=180159
valami ilyenmit vettem le...
help pls

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #1 Dátum: 2012. január 22. - 17:15:51 »
0 Show voters
[pawn]#undef MAX_PLAYERS
#define MAX_PLAYERS 50 //50 = ahány slotos a szervered[/pawn]
Ezt berakod a Gm-ed elejébe és akkor felér a GetMaxPlayers() függvénnyel a MAX_PLAYERS definíció..

Gang[St]e[R]

  • Vendég
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #2 Dátum: 2012. január 22. - 17:29:45 »
0 Show voters
Használd a foreach.incet annál jobb nincs.

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #3 Dátum: 2012. január 22. - 17:47:23 »
0 Show voters
\" post=\"215375\" timestamp=\"1327249785\"]
Használd a foreach.incet annál jobb nincs.
 
[/quote]
format(string, sizeof(string), \"Játékosok a szerveren: %d/%d\", playerscount, foreach));
WTF? :D
javítanám:
Használd a foreach függvénykönyvtárat ciklusoknál!

Nem elérhető totar

  • 425
    • Profil megtekintése
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #4 Dátum: 2012. január 22. - 17:51:18 »
0 Show voters
Akkor szerintetek maradjon ez? mert nekem is ez van a modba, csak megtaláltam a topicot...
mert nekem az is a baj, hogy a szeróm tulterheli a sunwell cpu-t, és ezél gondoltam, meg a hiv. forumon is írták...
Szóval értitek
 
Idézetet írta: Pedro date=1327248951\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"15963\" data-ipsquote-contentclass=\"forums_Topic
[pawn]#undef MAX_PLAYERS
#define MAX_PLAYERS 50 //50 = ahány slotos a szervered[/pawn]
Ezt berakod a Gm-ed elejébe és akkor felér a GetMaxPlayers() függvénnyel a MAX_PLAYERS definíció..
 

Gang[St]e[R]

  • Vendég
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #5 Dátum: 2012. január 22. - 20:46:25 »
0 Show voters
a foreach azért jobb, mert ott a MAX_PLAYERS mindig anyi ahány játékos van a szerveren.

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #6 Dátum: 2012. január 22. - 21:05:30 »
0 Show voters
GetMaxPlayers() -> Lefut egy funkció, ami kiolvassa a server.cfg-bõl a maxplayers értéket. ( Szerintem egy változó értékét adja vissza, ami azt a max értéket tárolja )
MAX_PLAYERS -> Egy difinált érték, a preprocessor lecseréli és csak egy szám lesz ott.
Legjobb megoldás a samp.inc-ben annyira átírni, amennyi slotos a szervered és mindenhol a GetMaxPlayers()-ot MAX_PLAYERS-ra cserélni.
Én úgy csinálom, ez a leggyorsabb és legjobb megoldás.
Ciklusra pedig a foreach, abból is a legújabb verzió.

Gang[St]e[R]

  • Vendég
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #7 Dátum: 2012. január 22. - 21:08:51 »
0 Show voters
Lett 0.3d-re foreach?

Nem elérhető Kovacs_Richard

  • 1743
  • HRP Fejlesztő
  • Discord: Kovacs_Richard#0321
    • Profil megtekintése
    • Hun Role Play Web
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #8 Dátum: 2012. január 23. - 02:02:19 »
0 Show voters
MAX_PLAYERID vagy GetMaxPlayers()? én személy szerint egyiket se használnám :) ha tényleg a sebesség csökkentésre mész akkor a leggyorsabb változatot ajánlom...amit szerintem már elõttem is megemlítettek csak kicsit rosszul fogalmazták meg...
\"a foreach azért jobb, mert ott a MAX_PLAYERS mindig anyi ahány játékos van a szerveren.\"
szerintem ez téves, mivel ha tényleg így mûködik akkor egy rakás *****, már bocs :)
a legnagyobb ID-t kell eltárolni fel-le csatlakozásoknál változtatni ezt az értéket :)
ha mondjuk van fent 3 játékos:
ID 0
ID 3
ID 8
akkor is max 8x lép be a ciklus magba mivel a legnagyobb ID 8 :) és a ciklus 1. sorába ezt írd:
[pawn]if(!IsPlayerConnected(i)) { continue; }[/pawn]
és máris átugorja a \"lyukakat\" :)
én személyszerint igy használnám de te döntesz, ennél gyorsabb módszer szerintem nincs, azaz talán 1 akad...
Régóta nem tevékenykedem, mint SA-MP scripter.
HRP Fejlesztő.

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #9 Dátum: 2012. január 23. - 07:06:47 »
0 Show voters
a foreach a leggyorsabb, mivel az nem hívja meg még az IsPlayerConnected()-ot sem. Azt megoldja egy tömb olvasásával, ami sokkal gyorsabb, mint a funkció meghívása.
[pawn]
foreach(Player, i)[/pawn]
Ebbõl ez lesz:
[pawn]for (new i = YSI_gSPlayer; _:i != -1; i = YSI_gAPlayer)[/pawn]

Ennyi. Semmi ellenõrzés.


Ezalá mehet a kódod és fut.
« Utoljára szerkesztve: 2012. január 23. - 07:10:39 írta kurta999 »

Nem elérhető totar

  • 425
    • Profil megtekintése
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #10 Dátum: 2012. január 23. - 14:21:40 »
0 Show voters
Köszönöm a sok választ, de én azt szeretném, hogy gyors legyen, és ne terheljen....
Nekem most így vannak:
 

for(new i = 0; i < MAX_PLAYERS; i++)
{
   if (IsPlayerConnected(i))
   {

 
akkor ennél jobb a kurtáé, vagy a Ricsié?

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #11 Dátum: 2012. január 23. - 18:50:16 »
0 Show voters
foreach(Player, i)
http://sampforum.hu/index.php?topic=12093.0
Ennél NINCS gyorsabb..

Nem elérhető totar

  • 425
    • Profil megtekintése
GetMaxPlayers() / MAX_PLAYERS melyik a jobb?
« Válasz #12 Dátum: 2012. január 23. - 19:58:37 »
0 Show voters
Köszönöm
ezt fogom használni!!!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal