hlmod.hu
https://hlmod.hu/

AmxModX Alapozó 01. - Hello Világ!
https://hlmod.hu/viewtopic.php?f=55&t=3401
Oldal: 1 / 1

Szerző:  Metal [ 2012.02.11. 22:06 ]
Hozzászólás témája:  AmxModX Alapozó 01. - Hello Világ!

AmxModX Alapozó 01. - Hello Világ!

A következő egyszerű script nem fog semmit se csinálni, nem módosít értékeket, nem ad extra képességeket, csupán elindul, s fut. A plugin neve a „Helló, vila'g!” szöveget fogja tartalmazni, amit le is lehet ellenőrizni majd a szerveren, amint betettük a futó plugin listába.

Kód:
#include <amxmodx>

public plugin_init()
{
   register_plugin(„Helló, vila'g!”, 1.0 "Metal");
   return PLUGIN_CONTINUE;
}


A program első sora egy #include utasítás, hatására az előfeldolgozó (preprocesszor) erre a helyre bemásolja a megnevezett állomány tartalmát. Ebben az esetben ez a amxmodx.inc állomány. A hegyes zárójel (kisebb, nagyobb jel, „kacsacsőr”) arra utal, hogy az amxmodx.inc állomány a fordító részére megadott ún. „include path” által definiált helyen van.
A következő nem üres sor a "plugin_init" függvény definíciója. A plugin_init függvény az egyik speciális függvény az AMX Mod X scriptekben, amely a plugin indításakor mindenképp meghívódik.. Az public megadja, hogy a "plugin_init" függvény mindenhol látható, publikus, így native függvényekkel is elérhető. A függvény neve utáni nyitó és csukó zárójelek között adhatóak meg a függvény esetleges paraméterei, de jelenleg a plugin_init-nek nem léteznek paramnéterei. A kapcsos zárójel a függvény törzsének kezdetét jelzi.
A következő sor „meghívja”, vagy futtatja a register_plugin függvényt. Az „include”-olt állomány, az amxmodx.inc tartalmazza a register_plugin függvény meghívásának leírását („prototípusát”, „deklarációját”). Ebben az esetben, a register_plugin függvényt 3 paraméterrel hívjuk meg, mégpedig egy fix szöveggel („string literal”): „Helló, vila'g!”, egy 1.0-ás lebegőpontos számmal és egy “Metal” stringgel. Ezek az alap paraméterei a függvénynek melyeket szigorúan vesszővel választunk el.
A return utasítás jelenti a kilépést az aktuális függvényből (ami ebben az esetben a plugin_init), és megadja a hívónak visszaadandó értéket (esetünkben PLUGIN_CONTINUE-t, ami visszaadja a vezérlést a HL enginenek, hogy befejezhesse az eredeti parancs futását. Mivel a plugin_init nem része a HL motorjának, hanem a pluginok úgynevezett “main” függvénye, így a return sor el is hagyható, a program anélkül is lefordul. Végül a záró kapcsos zárójellel jelezzük a „main” függvénytörzs végét.

Felépítése
Egy AMX Mod X-ban írt plugin tartalmaz függvényeket és változókat. A függvények hasonlítanak a FORTRAN függvényeire (function) és alrutinjaira (subroutine) vagy a Pascal függvényeire (function, procedure). A plugin_init () egy speciális függvény, ahol a plugin „elkezdődik”, ez azt jelenti, hogy minden pluginnak tartalmaznia kell egy plugin_init() függvényt. Fontos megjegyezni, hogy maga az AMX MOd X eseményvezérelt, a legtöbb esetben a különböző eseményekre tudunk függvényeket írni, viszont az eseményeket kiváltó dolgokat már az elején meg kell határozni. Ehhez a plugin_init függvény nyújt segítséget, ugyanis ebben a függvényben írhatjuk meg a különböző események észlelésekor végrehajtandó függvényeket. (Például a saybe írt /me, vagy akár egy ugrás is kiválthat eseményeket)
Általában már maga a plugin_init () „meghívhat” más függvényeket, a feladatok elvégzésére vagy mi írjuk meg ezeket a függvényeket, vagy egy külső függvénygyűjteményből (könyvtár, angolul library) kerülnek ki; az utóbbiak elérhetősége ún. fejléc-állományok (header) beillesztésével biztosítható, az előfordító (preprocessor) #include utasításával. Bizonyos könyvtári függvények, mint a register_plugin() a fenti példában, az AMX Mod X szabvány által definiáltak, ezek a szabvány könyvtárban megtalálható függvények. (Egy olyan AMX Mod X implementációt, amely tartalmaz minden szabványos könyvtári funkciót, „befogadott implementáció”-nak nevezünk.) Más könyvtárak plusz lehetőségeket biztosítanak, például bonyolult matematikai megoldások, magasabb szintű engine módosítások, stb.

Szerző:  BeepBeep [ 2012.02.11. 22:46 ]
Hozzászólás témája:  Re: AmxModX Alapozó 01. - Hello Világ!

betehetted-volna-kódba ;)

Szerző:  Metal [ 2012.02.11. 22:55 ]
Hozzászólás témája:  Re: AmxModX Alapozó 01. - Hello Világ!

Jogos.

Frissítve

BeepBeep írta:
betehetted-volna-kódba ;)

Szerző:  VirTuaL ~` [ 2012.03.06. 19:18 ]
Hozzászólás témája:  Re: AmxModX Alapozó 01. - Hello Világ!

A tut. első sorában elírtál 1 szót.Pontosabban ezt: (kpeségeket).

Szerző:  IrOn [ 2012.03.06. 19:21 ]
Hozzászólás témája:  Re: AmxModX Alapozó 01. - Hello Világ!

xD valamibe bele kell kötni

Szerző:  VirTuaL ~` [ 2012.03.06. 19:22 ]
Hozzászólás témája:  Re: AmxModX Alapozó 01. - Hello Világ!

Nem belekötésből,hanem idézem az 1ik tutoriáljából:
Kód:
Megkérnék mindenkit arra hogy ha netán bármi hibát észlel, lehet akár nyelvtani, vagy hibás információ, jelezze, s frissítem a posto(ka)t.

Szerző:  Metal [ 2012.03.06. 20:25 ]
Hozzászólás témája:  Re: AmxModX Alapozó 01. - Hello Világ!

Up :)

virtualcfg írta:
Nem belekötésből,hanem idézem az 1ik tutoriáljából:
Kód:
Megkérnék mindenkit arra hogy ha netán bármi hibát észlel, lehet akár nyelvtani, vagy hibás információ, jelezze, s frissítem a posto(ka)t.

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/