Započeo malitoni
•10. Feb. 2020.• ZaključanoPar sitnih saveta koji će svima pomoći (nadam se)
2,717
pregleda
18
postova
Hustler
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
66
Postovi:
3
Teme:
Pridružio se:Feb. 2020
10. Feb. 2020.
- Savet -
Nije me dugo bilo i primetio sam da dosta vas ovde ne koristi neke fine stvari koje dosta ubrzavaju vreme pisanja koda tj. potrebno vam je manje vremena za to, primer iz nekog random SA moda:
forward AdminGameMaster(color, const string[]);
public AdminGameMaster(color, const string[])
{
foreach(new i : Player)
{
if(PlayerInfo >= 1|| PlayerInfo >= 1)
{
SendClientMessage(i, color, string);
}
}
}
// I posle
new string;
format(string, sizeof(string), "Poruka od %s", GetName(playerid));
AdminGameMaster(-1, string);
Ovo bi moglo da bude mnogo drugačije:
stock AdminGameMaster(color, const string[], {Float,_}:...)
{
if(numargs() > 2)
{
foreach(new i : Player)
{
if(PlayerInfo >= 1 || PlayerInfo >= 1)
{
va_SendClientMessage(i, color, string, ___(2));
}
}
}
else
{
foreach(new i : Player)
{
if(PlayerInfo >= 1 || PlayerInfo >= 1)
{
SendClientMessage(i, color, string);
}
}
}
return 1;
}
// I sada:
AdminGameMaster(0xFF0000FF, "Poruka od %s", GetName(playerid));
Takodje, kad smo vec kod ovog parčeta koda, ovo bi moglo malo (mnogo, zavisi od broja igrača na serveru) brže da radi:
#include
new Iterator:Admins;
public OnAccountLoaded(const playerid) // Recimo da ovo pozivate kada se igrac uloguje
{
if (PlayerInfo > 0) {
Iter_Add(Admins, playerid); // Dodajmo igraca u iterator Admins
}
}
public OnPlayerDisconnect(playerid, reason)
{
if (PlayerInfo > 0) {
Iter_Remove(Admins, playerid); // Maknimo taj ID igraca iz iteratora
}
}
YCMD:setadmin(playerid, const params[])
{
new tagetID, level; // Necu celu CMD pisati sada, podrazumeva se da dole ima sve tj. kod vas
// Kod
if (level <= 0) { // Namerno <=, vi dodajte zastite ostale
// Kod
Iter_Remove(Admins, targetID);
}
else {
// Kod
Iter_Add(Admins, targetID);
}
return COMMAND_OK;
}
// I sada kada sam sve objasnio (valjda)
stock AdminGameMaster(color, const string[], {Float,_}:...)
{
if(numargs() > 2)
{
foreach( new i : Admins ) { // Ime iteratora sa linije broj 3
va_SendClientMessage(i, color, string, ___(2));
}
}
else
{
foreach( new i : Admins ) { // Ime iteratora sa linije broj 3
SendClientMessage(i, color, string);
}
}
return 1;
}
// Sada umesto da npr loopujemo kroz 1000 igrača, mi loopujemo samo kroz one koji postoje u iteratoru (mnogo brže nego u primeru gore da uvek loopujemo kroz SVE igrače dok ovako loopujemo samo kroz slotove iteratora)OG Legend
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
2,576
Postovi:
36
Teme:
Pridružio se:Avg. 2016
10. Feb. 2020.
Stil pisanja koda treba biti individualan , u ostalom stil pisanja koda nije vazan ukoliko funkcija , komanda , sistem ili slicno radi normalno sto je najvaznije u celoj prici programiranja ne samo pawno nego i bilo koji drugi programski jezik 😉
Hustler
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
66
Postovi:
3
Teme:
Pridružio se:Feb. 2020
10. Feb. 2020.
#THEV1NNY_ wrote on February 10, 2020, 4:34 pm:
Stil pisanja koda treba biti individualan , u ostalom stil pisanja koda nije vazan ukoliko funkcija , komanda , sistem ili slicno radi normalno sto je najvaznije u celoj prici programiranja ne samo pawno nego i bilo koji drugi programski jezik 😉
Ko ovde pominje stil? 😄
Ja kažem da je mnogo lakše i brže ovako (performanse servera UP).
Ja nikome nisam rekao "E nemoj tako", zato se zove Savet a ne Naredba, dal' ces ti mene poslusati ili ne kgjb 😛
Svakako ovako je najbolje, posebno za Iteratore 🙂
Forum Don
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosAktivan Član
119 / 250 XP
Početnik(2)
10,490
Postovi:
765
Teme:
Pridružio se:Maj 2015
10. Feb. 2020.
#THEV1NNY_ wrote on February 10, 2020, 4:34 pm:
Stil pisanja koda treba biti individualan , u ostalom stil pisanja koda nije vazan ukoliko funkcija , komanda , sistem ili slicno radi normalno sto je najvaznije u celoj prici programiranja ne samo pawno nego i bilo koji drugi programski jezik 😉
Enforcer
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
345
Postovi:
8
Teme:
Pridružio se:Okt. 2017
10. Feb. 2020.
#THEV1NNY_ wrote on February 10, 2020, 4:34 pm:
Stil pisanja koda treba biti individualan , u ostalom stil pisanja koda nije vazan ukoliko funkcija , komanda , sistem ili slicno radi normalno sto je najvaznije u celoj prici programiranja ne samo pawno nego i bilo koji drugi programski jezik 😉
ne slazem se bas toliko sa tobom o tome da treba biti individualan, losa praksa 'kod nas' sto se PAWN-a tice je npr sto lupaju 'forward + public' u istu liniju, bad code pracite ono bzvz ako je nesto lose i moze biti brze zasto ne bi bilo brze?
@tema i ja sam skoro saznao za `numargs` native i cini mi se da moze biti mnogo mnogoo koristan, i ne znam ako nisam ranije skontao za to 😄
OG Legend
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
2,576
Postovi:
36
Teme:
Pridružio se:Avg. 2016
11. Feb. 2020.
omcho wrote on February 10, 2020, 11:54 pm:
ne slazem se bas toliko sa tobom o tome da treba biti individualan, losa praksa 'kod nas' sto se PAWN-a tice je npr sto lupaju 'forward + public' u istu liniju, bad code pracite ono bzvz ako je nesto lose i moze biti brze zasto ne bi bilo brze?
@tema i ja sam skoro saznao za `numargs` native i cini mi se da moze biti mnogo mnogoo koristan, i ne znam ako nisam ranije skontao za to 😄
@tema i ja sam skoro saznao za `numargs` native i cini mi se da moze biti mnogo mnogoo koristan, i ne znam ako nisam ranije skontao za to 😄
Pa pazi bad code pada u drugi plan ukoliko funkcija , komanda ili sistem rade bez problema 😉
Neko je navikao na stariji sistem neko na noviji sistem pisanja sa novim opcijama ali ako ti umes da se snadjes u tom code-u i ako opet kao sto kazem code se pretvori u to da sistem radi onda ne treba menjati 🙂
Npr ja sam navikao da code pisem bez tih numargsa i iteratora i opet mi sistemi rade normalno 😄
Enforcer
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
345
Postovi:
8
Teme:
Pridružio se:Okt. 2017
11. Feb. 2020.
#THEV1NNY_ wrote on February 11, 2020, 12:03 am:
Pa pazi bad code pada u drugi plan ukoliko funkcija , komanda ili sistem rade bez problema 😉
Neko je navikao na stariji sistem neko na noviji sistem pisanja sa novim opcijama ali ako ti umes da se snadjes u tom code-u i ako opet kao sto kazem code se pretvori u to da sistem radi onda ne treba menjati 🙂
Npr ja sam navikao da code pisem bez tih numargsa i iteratora i opet mi sistemi rade normalno 😄
Neko je navikao na stariji sistem neko na noviji sistem pisanja sa novim opcijama ali ako ti umes da se snadjes u tom code-u i ako opet kao sto kazem code se pretvori u to da sistem radi onda ne treba menjati 🙂
Npr ja sam navikao da code pisem bez tih numargsa i iteratora i opet mi sistemi rade normalno 😄
sistemi ti rade normalno, ali rade sporije nego sa iteratorima recimo...
Hustler
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
66
Postovi:
3
Teme:
Pridružio se:Feb. 2020
11. Feb. 2020.
Aaron wrote on February 11, 2020, 7:19 am:
OK su savjeti. Trebali bi pomoći početnicima, ali drugi put stavi više savjeta jer radi par njih se ne isplati otvarat temu. Pohvale za uloženi trud.
Ako @Galardo bude dozvolio da apdejtam ovo, sve moze 😄
#THEV1NNY_ wrote on February 11, 2020, 12:03 am:
Pa pazi bad code pada u drugi plan ukoliko funkcija , komanda ili sistem rade bez problema 😉
Neko je navikao na stariji sistem neko na noviji sistem pisanja sa novim opcijama ali ako ti umes da se snadjes u tom code-u i ako opet kao sto kazem code se pretvori u to da sistem radi onda ne treba menjati 🙂
Npr ja sam navikao da code pisem bez tih numargsa i iteratora i opet mi sistemi rade normalno 😄
Neko je navikao na stariji sistem neko na noviji sistem pisanja sa novim opcijama ali ako ti umes da se snadjes u tom code-u i ako opet kao sto kazem code se pretvori u to da sistem radi onda ne treba menjati 🙂
Npr ja sam navikao da code pisem bez tih numargsa i iteratora i opet mi sistemi rade normalno 😄
Uvrede bez baki ali nisam baš video da imaš server sa 500+ igraca 😄
Ovo pomaze mnogo ako imaš igrace, ovo tebi tehnicki nikada nece trebati
EDIT: Postoji loša praksa i dobra praksa, pa sam skontaj na sta mislim...
Zašto bi ti format poruku koja nema args posle stringa? Besmisleno je i dzaba vuce performance dole
Morate biti prijavljeni da biste odgovorili na ovu temu.
Prijava

