R3m1X.idle.ro
Doriți să reacționați la acest mesaj? Creați un cont în câteva clickuri sau conectați-vă pentru a continua.

Cum faci un Plugin

2 participanți

In jos

Cum faci un Plugin Empty Cum faci un Plugin

Mesaj  BoGdAn2193 Lun Dec 29, 2008 11:45 pm

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 .

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 creat 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 folosi amxmodx :


CODE
#include


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 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



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 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 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



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 , dupa care il punem pe Server . La
executarea comenzii amx_ss , 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 primul

BoGdAn2193

Mesaje : 28
Data de înscriere : 28/12/2008

Sus In jos

Cum faci un Plugin Empty Re: Cum faci un Plugin

Mesaj  *I' k|LL aLL* Mar Dec 30, 2008 10:31 am

Bv Bogdan.....gg Wink
*I' k|LL aLL*
*I' k|LL aLL*
Administrator
Administrator

Mesaje : 375
Data de înscriere : 02/10/2008

https://www-remix.forumgratuit.ro

Sus In jos

Sus

- Subiecte similare

 
Permisiunile acestui forum:
Nu puteti raspunde la subiectele acestui forum