---===Terrawow.MyForum.ro===--- Forum Index
Register • Search • FAQ • Memberlist • Usergroups • Log in
Baza crearii unui pugin [AMXX]

 
Reply to topic    ---===Terrawow.MyForum.ro===--- Forum Index » --==Tutoriale Pluginuri pentru Counter-Strike==-- View previous topic
View next topic
Baza crearii unui pugin [AMXX]
Author Message
Andy
Administrator
Administrator
Andy

Joined: 03 Jul 2007
Posts: 118

Post Baza crearii unui pugin [AMXX] Reply with quote
Baza crearii unui plugin de tip AMXX



In acest Tutorial voi explica pas cu pas , tot ce trebuie facut pentru a crea un Plugin . Daca nu ai facut nici un Plugin pana acum si nu ai habar cum se face , vei invata acum cum poti crea imediat unul ,deci fii foarte atent.

Plugin-urile , dupa cum cred ca ati vazut deja , sunt alcatuite din public-uri si din stock-uri .Acum vom invata deste public-uri

Vom creea un fisier .txt , caruia ii modificam extensia in .sma . Sa spunem ca am creat fisierul plugin.sma . Il deschidem cu notepad .

Incepem prin niste include-uri . Ce sunt astea ? Sunt niste linii de comanda care arata amxmodx-ului ce functii vor fi folosite in acest Plugin . Pentru inceput , ii aratam ca vom folosi 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 componentă cu mai multe 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 perfect necesar pentru a functiona Plugin-ul corect ! Acel spatiu
NU va trebui sa-l lasati cu space , ci cu tasta TAB . Deasemenea intr-un Plugin NU va necesită 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 [url=http://www.amxmodx.org/webcompiler.cgi]AICI[/url] , dupa care il punem pe Server . La executarea comenzii amx_ss <Player> , i se va face un snapshot Player-ului specificat .
01/10/2009 15:01 View user's profile Send private message
artspiral
Junior
Junior


Joined: 25 Apr 2012
Posts: 14
Location: Ukraine

Post Reply with quote
I love how amazing and awesome this is.
26/04/2012 06:52 View user's profile Send private message
Display posts from previous:    
Reply to topic    ---===Terrawow.MyForum.ro===--- Forum Index » --==Tutoriale Pluginuri pentru Counter-Strike==-- All times are GMT + 2 Hours
Page 1 of 1

 
Jump to: 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


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