Pentru inceput, vreau ca toti sa intelegeti ce este o optimizare.
OPTIMIZÁRE, optimizări, s. f. 1. Alegerea și aplicarea soluției (economice) optime (dintre mai multe posibile). 2. (Mat.) Raționament sau calcul care permite găsirea valorilor unuia sau mai multor parametri corespunzând maximului unei funcții. – Cf. fr. optimiser, optimisation.
YSI Library
YSI Library (se poate cauta pe google sub forma "ysi.inc samp") ne ajuta sa optimizam gamemode-ul. Aceasta librarie contine y_timers (YSI Timers),
y_iterate (YSI Iterators), y_commands (YSI Commands) si multe altele. YSI Commands este un procesor de comenzi mai rapid ca zcmd sau altele.
DIALOG
Dialog-urile se pot optimiza. Dupa calculele mele, un dialog facut pe if(dialogid == 1) nu este foarte rapid asa cum este switch.
EXAMPLE:
if(dialogid == 1) {
if(listitem == 1) {
SendClientMessage(playerid, -1, "Tutorial optimizare")
}
}
Schimbam in:
switch(dialogid) {
case 1: {
switch(listitem) {
case 1: SendClientMessage(playerid, -1, "Tutorial optimizare")
}
}
}
ARRAY
new string[1024];
Aceasta este definit ca un array pentru ca are [x], x insemnand numarul de caractere al array-ului.
Array-urile pentru mesaje in chat "SendClientMessage" sau "SendClientMessageToAll" nu au rost sa fie mai mare de 144 de caractere, chat-ul suporta maxim 144 de caractere. Daca o sa facem cum am facut eu, array-ul va manca multi biti.
Array-urile pentru dialog-uri au voie sa depaseasca acest numar pentru ca nu este un mesaj pe chat.