FAQFAQ   CautareCautare   MembriMembri   GrupuriGrupuri   InregistrareInregistrare   ProfilProfil   Mesaje privateMesaje private   AutentificareAutentificare 
Inceputul de baza in crearea unui Plugin [AMXX]

 
Creaza un subiect nou   Raspunde la subiect    Pagina de start a forumului Jokers.PGL-Zone.Ro Tulcea -> Tutoriale Pluginuri pentru Counter-Strike
Subiectul anterior :: Subiectul urmator  
Autor Mesaj
Madalin
Administrator JoKeRS
Administrator JoKeRS
Madalin

Data inscrierii: 10/Oct/2007
Mesaje: 167
Localitate: Tulcea

MesajTrimis: 09/04/2008 00:02:18    Titlul subiectului: Inceputul de baza in crearea unui Plugin [AMXX] Raspunde cu citat (quote)

Ok , in acest Tutorial voi explica pas cu pas , tot ce trebuie facut pentru a crea un Plugin simplu (Inceputul) . Daca nu ai facut nici un Plugin pana acum si nu ai habar cum se face , casca bine ochii ; vei invata acum Smile .

Plugin-urile , dupa cum cred ca ati vazut deja (Daca v-ati uitat in vreun .sma) , sunt alcatuite din public-uri si din stock-uri (Ceea ce veti invata mai tarziu , deocamdata invatam public-uri) .

Vom creea un fisier .txt , caruia ii modificam extensia in .sma . Sa spunem ca am făcut fisierul plugin.sma . Il deschidem cu notepad (Puteti folosi si alte programe ajutatoare in scripting , dar nu recomand ; este bine sa invatati asa) .

Incepem prin niste include-uri . Ce sunt acestea ? Sunt niste linii de comanda care arata amxmodx-ului ce functii (utilitati) vor fi folosite in acest Plugin . Pentru inceput , ii aratam ca vom utiliza amxmodx :


CODE
#include <amxmodx>


Lista de include-uri poate continua , dar deocamdata lasam asa . Veti invata mai tarziu si despre alte include-uri .

Apoi , intregistram Plugin-ul , printr-un public specific , numit public plugin_init() . Deci , apasam un enter si adaugam :


CODE
public plugin_init()

{

}


Intre cele 2 paranteze ( { si } ) , vom adauga codul public-ului respectiv . Aceste acolade reprezinta inceputul si sfarsitul unei anumite parti / a intregului public . Mai tarziu vom invata si partea cu mai numeroase parti ale unui public , dar deocamdata lasam asa . Intre paranteze , adaugam register_plugin("Numele Pluginului","versiunea","autorul") . Register_plugin este o functie a include-ului de mai sus (amxmodx) , iar celelalte sunt argumentele . Vom avea :


CODE
#include <amxmodx>



public plugin_init()

{

register_plugin("nume", "versiune", "autor")

}


Atentie ! Acel spatiu lasat de mine inaintea register_plugin este absolut necesar pentru a functiona Plugin-ul corect ! Acel spatiu NU va necesită sa-l lasati cu space , ci cu tasta TAB . Deasemenea intr-un Plugin NU va trebui sa folositi DELOC tasta space (Decat intre argumente) ! Inlocuim nume cu numele Plugin-ului , versiune cu versiunea autor cu autorul Plugin-ului (Numele dvs) . Atentie ! Lasam ghilimelele asa cum sunt ! Modificam doar cuvintele .
Tot in plugin_init , vom putea sa mai inregistram si niste comenzi . Vom inregistra una . Functia este urmatoarea :


CODE
register_concmd("comanda","public",accesul de admin,"Mesaj care apare cand dai amx_help")


La "accesul de admin" , putem pune :


CODE
ADMIN_RESERVATION

ADMIN_IMMUNITY

ADMIN_KICK

ADMIN_BAN

ADMIN_SLAY

ADMIN_MAP

ADMIN_CVAR

ADMIN_CFG

ADMIN_CHAT

ADMIN_VOTE

ADMIN_PASSWORD

ADMIN_RCON

ADMIN_LEVEL_A

ADMIN_LEVEL_B

ADMIN_LEVEL_C

ADMIN_LEVEL_D

ADMIN_LEVEL_E

ADMIN_LEVEL_F

ADMIN_LEVEL_G

ADMIN_LEVEL_H


Deci , adaugam in .sma :


CODE
register_concmd("amx_ss","admin_ss",ADMIN_LEVEL_C,"Take a snapshot to selected player")


La comanda amx_ss , se va executa public-ul admin_ss , doar daca are adminul care executa comanda litera "C" in acces .

Ok , acum sa facem public-ul .
Adaugam :


CODE
public admin_ss(id)

{

}


Dupa cum vedeti , am adaugat un id in acest public . Acest id reprezinta index-ul pe care va fi executata comanda .
Intre { si } , va trebui sa adaugam code-ul public-ului . Deobicei este o combinatie intre niste functii aici . De exemplu , daca vrem sa ii facem un snapshot unui Player , vom adauga intre { si } urmatoarea functie :


CODE
client_cmd(id, "snapshot")


Client_cmd reprezinta functia pentru executare a unei comenzi asupra unui client , iar id reprezinta cui sa executi comanda . Snapshot reprezinta comanda .
Adaugam niste tab-uri ca sa fie ordonat bine code-ul . Ok , pana acum ar trebui sa avem urmatoarele :


CODE
#include <amxmodx>



public plugin_init()

{

register_plugin("nume", "versiune", "autor")

register_concmd("amx_ss","admin_ss",ADMIN_LEVEL_C,"It takes a snapshot to the specified Player .")

}



public admin_ss(id)

{

client_cmd(id, "snapshot")

}


Salvam fisierul , apoi il compilam AICI : http://www.amxmodx.org/webcompiler.cgi , dupa care il punem pe Server . La executarea comenzii amx_ss <Player> , i se va face un snapshot Player-ului specificat .
_________________
[URL=http://jokers.myforum.ro]Inceputul de baza in crearea unui Plugin [AMXX] Inceputul de baza in crearea unui Plugin [AMXX][/URL]

<a href="http://www.gametracker.com/server_info/89.47.114.22:27015/" target="_blank">
<img src="http://cache.www.gametracker.com/server_info/89.47.114.22:27015/b_350x20_C692108-381007-FFFFFF-000000.png" border="0">
</a>
Sus
Vezi profilul utilizatorului Trimite mesaj privat
tcapital
Nou Venit Pe JoKerS
Nou Venit Pe JoKerS


Data inscrierii: 25/Iul/2012
Mesaje: 4
Localitate: Great Britain

MesajTrimis: 01/09/2012 16:53:46    Titlul subiectului: Raspunde cu citat (quote)

Information is impressive! But I will say so in my view is slightly different, but what I will not tell you)))
Sus
Vezi profilul utilizatorului Trimite mesaj privat
tcapital
Nou Venit Pe JoKerS
Nou Venit Pe JoKerS


Data inscrierii: 25/Iul/2012
Mesaje: 4
Localitate: Great Britain

MesajTrimis: 02/09/2012 23:55:55    Titlul subiectului: Raspunde cu citat (quote)

Strange article! She would have me as interested, but not! Anyway, thank you. Sorry for my English i am from Kiev))))
Sus
Vezi profilul utilizatorului Trimite mesaj privat
tcapital
Nou Venit Pe JoKerS
Nou Venit Pe JoKerS


Data inscrierii: 25/Iul/2012
Mesaje: 4
Localitate: Great Britain

MesajTrimis: 04/09/2012 02:58:39    Titlul subiectului: Raspunde cu citat (quote)

I am here this will give your article read my friends really liked it!
Sus
Vezi profilul utilizatorului Trimite mesaj privat
tcapital
Nou Venit Pe JoKerS
Nou Venit Pe JoKerS


Data inscrierii: 25/Iul/2012
Mesaje: 4
Localitate: Great Britain

MesajTrimis: 05/09/2012 06:10:54    Titlul subiectului: Raspunde cu citat (quote)

I found this post very useful!
Sus
Vezi profilul utilizatorului Trimite mesaj privat
Afiseaza mesajele pentru a le previzualiza:   
Creaza un subiect nou   Raspunde la subiect    Pagina de start a forumului Jokers.PGL-Zone.Ro Tulcea -> Tutoriale Pluginuri pentru Counter-Strike Ora este GMT + 2 ore
Pagina 1 din 1

 
Mergi direct la:  
Nu puteti crea un subiect nou in acest forum
Nu puteti raspunde in subiectele acestui forum
Nu puteti modifica mesajele proprii din acest forum
Nu puteti sterge mesajele proprii din acest forum
Nu puteti vota in chestionarele din acest forum


Powered by phpBB © 2001, 2002 phpBB Group
Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro