Hellau dragucilor

Ca tot cereti de foarte mult timp si cerinta asta este si pe ARENA si SURF am decis sa o fac intr-un final. Chestia asta a fost sa zicem asa "motivul" pentru care imi era "lene" sa ma apuc sa lucrez mai mult la server deoarece stiam ca o sa dureze destul de mult pana realizez sistemul. (dar spre suprinderea mea am terminat sistemul de la 0 destul de repede cu teste cu tot si doar ieri m-am apucat de el) Deoarece toate pluginurile care exista pe nett de genul (2 la numar parca) erau buguite si cu mult cod pus acolo degeaba (desigur nu imi placeau cum functionau si e mai greu cum am mai zis sa lucrezi pe codul cuiva mai ales cand are peste 3.5k de linii ca trebuie sa cauti si sa legi sa intelegi ce fac toate variabilele etc. adica sa intelegi stilul lui de codare) am decis sa fac eu acest sistem de la 0 si probabil a fost cea mai buna decizie sa fac asa deoarece pierdeam mai mult timp daca stateam sa editez deja ceva existent + asa am mai exersat si eu .

Am facut si introducerea, acum sa trecem la sistem:


SISTEM GAG/MUTE/SILENCE PE MINUTE

Deoarece nu ii vedeam rostul sa il bag si in admin menu o sa puteti da gag/silence/mute doar din chat sau consola daca specificati dupa nume si minutele dorite.
Din admin menu o sa puteti da ca si pana acum GAG/SILENCE/MUTE care tine o mapa intreaga sau pana folositi voi UNMUTE/UNGAG/UNSILENCE.


Comenzi disponibile

sm_mute <nume> <minute> - specificarea minutelor este optionala, daca nu specificati minutele atunci player-ul respectiv are mute pana se termina mapa sau pana ii dati voi unmute
sm_gag <nume> <minute> - specificarea minutelor este optionala, daca nu specificati minutele atunci player-ul respectiv are gag pana se termina mapa sau pana ii dati voi ungag
sm_silence <nume> <minute> - specificarea minutelor este optionala, daca nu specificati minutele atunci player-ul respectiv are silence pana se termina mapa sau pana ii dati voi unsilence

sm_unmute <nume> - ca si pana acum scoateti mute cuiva
sm_ungag <nume> - ca si pana acum scoateti gag-ul cuiva
sm_unsilence <nume> - ca si pana acum scoateti silence-ul cuiva

Toate comenzile de mai sus functioneaza si in CHAT ca si pana acum cu !silence,!mute,!gag etc.

- Am pus o limita la minute ca sa puteti da doar MAXIM 15 MINUTE GAG/SILENCE/MUTE !
- Daca oferiti MUTE/GAG/SILENCE pe minute atunci o sa primiti UNMUTE/UNGAG/UNSILENCE doar daca expira aceste minute indiferent ca iesiti de pe server/pica server-ul/se schimba mapa (deoarece se face si o salvare intr-o baza de date ca sa nu scapati cu un simplu retry de aceste comenzi ) timpul in care expira o sa continue de unde a ramas. De exemplu primiti GAG 5 minute si dupa 3 minute iesiti de pe server, cand o sa intrati iar o sa continuati de la 2 minute si doar dupa ce expira aceste 2 minute o sa primiti UNGAG automat. Desigur puteti sa folositi UNGAG/UNMUTE/UNSILENCE ca sa scoateti GAG/SILENCE/MUTE.

- Am pus si verificari daca aveti SILENCE si va expira GAG sau MUTE sa ramaneti cu GAG si MUTE pana va expira si SILENCE (ca asa este normal, silence va da si GAG si MUTE).
- Daca oferiti GAG sau SILENCE pe minute si scrieti ceva pe chat o sa va apara un mesaj cu cat timp mai aveti din GAG sau SILENCE!
- Scrierea in baza de date se face la disconnect si doar in cazul in care aveti minute pe vreo comanda, in cazul in care va expira mute/gag/silence pe aceeasi mapa nu se mai face scriere in baza de date(asta nu prea va intereseaza, dar probabil o sa fac si alt topic in care postez acest plugin gratis, ma mai gandesc)

Cam atat ar fi de zis despre acest sistem, am lucrat la el destul de mult si am facut multe teste in care totul a functionat corect. Cum am spus si mai sus, daca nu specificati minutele atunci se aplica functionalitatile comenzilor vechi iar daca specificati si minute atunci o sa se aplice functiile acestui sistem peste care nu puteti trece doar daca expira timpul sau cu ungag/unmute/unsilence.

VA ROG SA TESTATI ACEST SISTEM CAT DE MULT POSIBIL! EU AM FACUT MULTE TESTE SI A FUNCTIONAT TOTUL CORECT. CAM CE AR FI DE TESTAT SI CE TREBUIE SA MEARGA BINE, DACA DATI GAG/SILENCE/MUTE SI IESITI CAND INTRATI SA CONTINUE TIMER-UL. DACA VA DATI MAI MULTE COMENZI PE MINUTE (GAG/SILENCE/MUTE) SI IESITI CAND INTRATI SA CONTINUE TIMER-UL. DACA VA EXPIRA COMANDA ATUNCI SA PUTETI SCRIE IN CHAT/VORBI/ETC. SI LA RETRY SA NU MAI aveti nimic (asta puteti testa cand expira gag-ul dati retry si vedeti daca totul este ok). MESAJELE SA VA APARA DOAR VOUA EX. "Acest jucator are deja gag" sau cand va expira gag-ul etc.(ca aici la final am vazut ca le-am pus globale,sper ca nu am omis nimic sa pun pe client la ultima verificare)
VA ROG SA VERIFICATI TOATE ASPECTELE POSIBILE(ca poate nu m-am gandit la toate, dar putin probabil ca am cam gandit totul sa nu fie probleme si am luat in calcul cam toate situatiile posibile, dar totusi eu sunt doar o persoana voi sunteti mai multi si puteti sa va ganditi si la mai multe situatii + puteti testa pe mai multi si sa vedeti daca exista buguri etc. ca voi va jucati pe server!). DACA NU VI SE SCOATE GAG/MUTE/SILENCE DUPA CE EXPIRA TIMPUL SAU ORICE ALT BUG GASITI SA RAPORTATI CAT MAI RAPID!

DACA DEPISTATI ORICE BUG VA ROG SA RAPORTATI CAT MAI RAPID!(cum am zis si mai sus ce sa verificati)