Takže. ScriptDev2 běžně součástí source MaNGOSu není. Ovšem pokud jsi pan "Lam" ( ) a nevíš jak si přítomnost ScriptDev2 ověřít, můžeš se kouknout jakou velikost má soubor MangosScript.dll po zkompilování (mimojiné.. víš že SD2 se ve win kompiluje zvlášť, ne? V linuxu musíš patchnout soubory přiloženým patchem, nebo upravit ručně (nějaké soubory s příponou .am a configure.ac). Pokud bude jeho velikost v řádech kB, SD2 tam nemáš. Běžně bývá kolem 1.8 MB (+/- cihla) .
Nebo se koukni u zdrojáku do složky \src\bindings\ScriptDev2\ a jestli jí tam vůbec nemáš, tak si stáhni SD2, dej ho do tý složky ke zdrojáku "\src\bindings\ScriptDev2\" a musíš ho zkompilovat (pozor na režim "debug"! pokud jsi MaNGOS rovnou kompiloval na "release" a "debug" jsi nikdy nekompiloval)..
Další věc. Script musíš do projekru ScrptDev2 přidat. Když budeš hledat zde na WS, určitě něco najdeš. Pokud ne, hledej jinde. Můj čas se blíží, takže musím jít pomáhat zas jinam a jinak.
Snad jen velice stručně. ScriptDev2 je projekt v C++, který se váže s projektem MaNGOSu tak, že vytváří již miňovanou dynamickou knihovnu dll (jen ve win!!). Scripty přidáváš do projektu scriptdev2. Po přidání scriptů musíš znovu kompilovat projekt ScriptDev2. Pokud je kompilace úspěšná, vytvoří ti to nové soubory MangosScript.dll, *.obj, *.lib...
Zásadní pravidlo. Vždy přidáváme vlastní scripty do složky "custom" v projektu (na disku vždy vytváříme nové scripty v adresáři "\scriptdev2\scripts\custom"), je to přehlednější a v případě přechodu na novější SD2 je to docela potřeba.
Dál:
1. Najdi si ve složce "system" v projektu SD2 soubor: ScriptLoader.cpp
2. Vyhledej text // custom
3. A přidej NAPŘÍKLAD řádky v podobném tvaru:
extern void AddSC_gotel_test();
extern void AddSC_gotel_ulduar_ante();
extern void AddSC_gotel_ulduar_exit();
..přičemž například void AddSC_gotel_ulduar_ante() je obsažen i v souboru scriptu, jen před to připíšeš extern
4. Opět vyhledej text // custom ale tentokrát bude někde za půlkou souboru.
5. a hned za to přidáš NAPŘÍKLAD (už jenom):
//custom
AddSC_gotel_test();
AddSC_gotel_ulduar_ante();
AddSC_gotel_ulduar_exit();
(to // custom jsem tam nechal schválně, pro představu)
Píšu to ve spěchu, tak si vyhrazuji právo fatálních chyb v textu i smyslu vět.
Čao..