Log inUsernamePassword
Log me on automatically each visit    
Register
Register
Log in to check your private messages
Log in to check your private messages
Ramnic Forum Forum Index » Tutoriale pluginuri Counter-Strike

Post new topic   Reply to topic
Tutorial Creeare Plugin [AMXX]
View previous topic :: View next topic  
Author Message
Mitiq
Admin
Admin
Mitiq

Joined: 08 May 2007
Posts: 353
Location: Design

PostPosted: 29/08/2007 22:11    Post subject: Tutorial Creeare Plugin [AMXX] Reply with quote

Inceputul de baza in crearea unui Plugin

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

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 produs fisierul plugin.sma . Il deschidem cu notepad (Puteti utiliza 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 utilizate 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 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 perfect ! Acel spatiu NU va trebui 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 necesită 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 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 .
Ei , cam asta a fost . Daca ati urmat toti pasii de mai sus FELICITARI ! Tocmai ati facut inițialul dvs Plugin ! La mai multe !
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic    Ramnic Forum Forum Index » Tutoriale pluginuri 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, 2002 phpBB Group
iCGstation v1.0 Template By Ray © 2003, 2004 iOptional

Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro