PDA

View Full Version : [WarGods Tutorials Nr.16] Plugin Show Round



lAsuStarl
15-11-2015, 12:21 PM
Salutare tuturor,acesta este al 16-lea WarGods Tutorial,iar astazi vom creea inca un plugin,cu toate cunostiintele acumulate in prezent,aceast plugin are rolul,de a instinta un jucator,ce numar de runda este,utilizand o simpla comanda,sa incepem.

1)Codul va arata cam asa:

#include <amxmodx>

new Round

public plugin_init()
{
register_plugin("Show Round","0.1","WarGods Tutorial")

register_logevent("round_start", 2, "1=Round_Start")

register_clcmd("say /theround","cmd_round")
register_clcmd("say_team /theround","cmd_round")

}

public round_start()
{
Round++
}

public cmd_round(id)
{
client_print(id,print_chat,"Numarul rundei este %d",Round)
}


2)Tot ce am facut este sa intregistrez o variabila goala,adica o variabila cu valoarea 0,deoarece daca eu nu folosesc,spre exemplu new Round = 3 ,variabilei Round,i se atribuie valoarea 3,iar daca eu nu-i dau o valoarea,ea automat este 0.

3)Am intregistrat un eveniment,acela fiind inceputul undei runde,functia este default din biblioteca amxmodx

register_logevent(parametru,2,parametru)
,functia are 2 parametri,primul este publicul vostru,numele care doriti sa-l puneti,iar al 2-lea parametru este ce tip de runda sa fie:
1)Incepera unei runde
2)Sfarsitul unei runde

4)Pentru inregistrearea unui eveniment de sfarsit de runda codul este urmatorul:

register_logevent( "Publicul vostru", 2, "1=Round_End" )



1=Round_End -> Semnifica sfarsitul undei runde.
1=Round_Start -> Semnifica inceputul undei runde.


5)A-ti vazut in cod,ca la publicul round_start,nu exista niciun id = index,deoarece cand este id,adica jucator,se executa la fiecare jucator in parte,ei bine la functia de inceput de runda,trebuie executat o functie,spre exemplu modificarea vietii,la toti odata,nu doar la unul,o sa vedeti mai incolo,cum se face aceasta treaba.

6)In acel public a-ti vazut Round++,acel ++ langa o variabila se numeste incrementare,incrementarea este ca,de fiecare data cand se executa o functie,in care exista o variabila la fel ca si aici,ea automat isi mareste valoarea.

Traducere:
- De fiecare data cand va incepe o runda noua,variabila Round va primi cu 1 in +,mai pe scurt,intram pe server,si a inceput runda,ok variabila are valoarea 1,resectiv rounda 1,apoi iar incepe dinou o runda noua,variabila iar primeste un 1,si va veni 1+1 = 2,respectiv runda 2,si tot asa pana cand se va schimba mapa,iar apoi variabila redevine 0.

Acesta a fost al 16-lea WarGods Tutorial,in cazul in care am omis ceva,sau daca nu a-ti inteles,puteti da replay linistiti,pana data viitoare numai bine :P.