Hali! Gondoltam Nyitok egy ilyen témát is. Elsősorban azokat szeretném megcélozni, akik nem C++ -ot szeretnének tanulni, csak pl. lenne elég logikájuk, hogy kiegészítsenek egy scriptet, de nem tudják, hogyan is lehet pl. egy ajtót kinyitni.
Például, én is most azt szeretném megtanulni, hogy Deathbringer Saurfang hivatalos scriptjében hogyan csinálhatnám meg, hogy amikor meghal, kinyissa a maga mögött levő ajtót. Ebben kérném illetve kérnénk a segítségeteket.
1. kérdés:
Hogyan lehet ajtót kinyitni, npc halálakor?
2. kérdés
Professor Putricide, mountol mindet... Ez oké, de hogyan szálljunk le? (Timer -> Unmount??)
Ezek bonyolultabb dolgok, a scriptekbe kell nyúlni.
Maga az inta scriptje "hivatalosan" cache-eli a go létrehozásakor a guid-ot , és azt kell lekérni a scriptben majd pointert készíteni rá és meghívni a megfelelő függvényét, gondolom OpenDoor, vagy ilyesmi, a player unmontolására meg van unmount függvény.
Ohh, sry... :S hát ezt nem tudtam :( Én azt hittem, hogy ezek csak olyan dolgok, hogy pl.
Ajtó nem záródik be = +1-2 sor a scriptbe :S
És C++ script mellett szabad használni EventAI-t? Szóval kiegészíteni a C++ -t EventAI-val?
Ha nem akkor $oundX nem lenne kedved ezt a dolgot kijavítani a TC scriptjeiben?
1. Putricide nem unmountol.
2. Saurfang nem nyitja ki az ajtót.
saurfang nem nyit ajtót erre van egyszerűbb megoldás is mint h soundot megkérdezet :)
annyi az egész megnézed egy másik boss scriptjében h h nyitja ki az ajtó és meg is vagy :)
Még egyszerűbb, hogy ha hibát találsz, akkor beírod ide:
http://code.google.com/p/trinitycore/issues/list
@kerge: Nem. A c++ és az eventai üti egymást, vagy egyik vagy másik. És ugye egyértelmű melyik a jobb ;)
Sajnos sok a dolgom szóval most nem tudom megírni neked.
THX all!
@$oundX - semmi baj :D megpróbálkozom :D Bár most launcheren dolgozom, de majd közvetítem a fejleményeket.
Idézetet írta: Kerge Dátum 2010 december 10, 08:42:19 DÉLUTÁN
THX all!
@$oundX - semmi baj :D megpróbálkozom :D Bár most launcheren dolgozom, de majd közvetítem a fejleményeket.
Launchert miben írod? Csak érdeklődök, mert mostanában engem is érdekel a Launcher téma.
Launcher:
http://infobarkacs.hu/index.php?topic=5105.0
Pontosan :D Ott van az is amit én alakítgatok, de ez nem az a téma :)
Nah majd írok, ha sikerült kijavítanom az ilyen dolgokat az ICC scriptekben, amik megakadályozzák a továbbjutást ;)
Hy all! Elkészítettem az első creature scriptemet, a trinity egyik example-járól lestem, csak az a baj, hogy nem csinál semmit. http://pastebin.com/Y6NdRGL4 (http://pastebin.com/Y6NdRGL4)
Idézetet írta: Kerge Dátum 2010 december 12, 10:30:48 DÉLUTÁN
Hy all! Elkészítettem az első creature scriptemet, a trinity egyik example-járól lestem, csak az a baj, hogy nem csinál semmit. http://pastebin.com/Y6NdRGL4 (http://pastebin.com/Y6NdRGL4)
Itt beállítottad?
http://www.trinitycore.info/index.php?title=Creature_template_tc2#ScriptName
ScriptLoader.Cpp -hez hozzá írtad?
xD tudtam, hogy ez lesz az első kérdés :D:D Elfelejtettem ideírni, hogy IGEN :O
Idézetet írta: Kerge Dátum 2010 december 12, 02:23:05 DÉLUTÁN
Pontosan :D Ott van az is amit én alakítgatok, de ez nem az a téma :)
Nah majd írok, ha sikerült kijavítanom az ilyen dolgokat az ICC scriptekben, amik megakadályozzák a továbbjutást ;)
Okés, csak azt hittem hogy Te magad írod a cuccost. Bocsi az offért, azért köszi! :)
valami ötlet a creature scriptre ??? A ScriptLoaderben benne van. Cmake-hez hozzáadva, creature_template.scriptname beállítva...
Illetve olyan kérdésem lenne, hogy van olyan oldal ahol meg lehet nézni trinity függvényeit?
gossip script?
mert ha igen akkor npcflag legyen 1 ; valamint ellenőrizd hogy a scripten belül van OnGossipHello és OnGossipSelect hook, és hogy nincs utánuk semmi hányadék.
VS-ben ha létrehozol 1 player osztályú objektumot, majd így hivatkozol rá: playerpointer-> akkor vs kilistázza pl a player osztály összes public függvényét (többnyire ezekre van szükséged) , ha esetleg nem működne akkor próbáld újraindítani vs-t, vagy megnyomni a left ctrl+spacet. ha ez se jönne be akkor töröld csak az intellsense fájlokat és restart vs.
http://pastebin.com/Y6NdRGL4 (http://pastebin.com/Y6NdRGL4)
Itt láthatod a scriptet, van benne OnGossipSelect is meg OnGossipHello is :S A trinity exampleja átalakítva...
(@$0undX: Egész jól haladok a C++ -ban ;))
a script jónak tűnik, scriptloader vagy scriptname lesz a ludas.
xD egyik sem ludas... de most komolyan :P ScriptLoaderben
felül voidnál: void AddSC_magdi_anyus();
alul: AddSC_magdi_anyus();
creature_template.scriptname: magdi_anyus
npcflag: 1
:P nade akkor ezt hagyjuk. Most nekiálltam egy sokkal egyszerűbbnek, ami majd jobban átlátható lesz, szerintem azzal nem lesz baj. Sima spellezős npc.
oks. :)
Szervusztok :P
Van egy pici gossip scriptem, csak éppen nem akar lefordulni
Error:
Idéz3>..\..\..\..\TrinityCore\src\server\scripts\Custom\lab_area.cpp(31) : error C2512: 'lab_area' : no appropriate default constructor available
A Script: http://pastebin.com/mgEkBk3P (http://pastebin.com/mgEkBk3P)
Lényege:
Egy labirintus végén az npc-nek el kellene teleportálnia...
Próbáltam AreaTrigger scriptet is, de az nem akart működni. Ott nem a fordításnál volt a hoba, csak szimplán nem ment :P
Előre is köszi a segítséget!
EDIT.:
Bocsánat... :S Meg van a hiba BOCSI!
Idéz
public:
lab_area() : CreatureScript("lab_area") {}
Lényeg, hogy sikerült rájönnöd :)
Nem vót konstruktora :D
jaja :P De am egész jól haladok nem?? :D ezeket már majdnem fejből írom....
gj
Halihó :P
Van egy GameObject Buffer scriptem, aminek az alapját innen a fórumról szereztem be, de átalakítottam.
A következő hibákat kapom:
Idéz
3>..\..\..\..\TrinityCore\src\server\scripts\World\go_scripts.cpp(1171) : error C2236: unexpected 'class' 'go_buffer'. Did you forget a ';'?
3>..\..\..\..\TrinityCore\src\server\scripts\World\go_scripts.cpp(1171) : error C2143: syntax error : missing ';' before ':'
3>..\..\..\..\TrinityCore\src\server\scripts\World\go_scripts.cpp(1171) : error C2059: syntax error : ':'
3>..\..\..\..\TrinityCore\src\server\scripts\World\go_scripts.cpp(1171) : error C2059: syntax error : 'public'
3>..\..\..\..\TrinityCore\src\server\scripts\World\go_scripts.cpp(1172) : error C2143: syntax error : missing ';' before '{'
3>..\..\..\..\TrinityCore\src\server\scripts\World\go_scripts.cpp(1172) : error C2447: '{' : missing function header (old-style formal list?)
3>..\..\..\..\TrinityCore\src\server\scripts\World\go_scripts.cpp(1331) : error C2061: syntax error : identifier 'go_buffer'
Számomra érthetetlen, hogy mért írja a hibákat, amikor ebben a file-ben, már van egy szinte pont ugyan ilyen script is :D (Meg még jó pár...)
És azoknak a mintájára alakítottam át.
Azért egy meglévőhöz írtam hozzá, mert itt m1 xD szóval jó helye van :P
Ebben a fileben található: http://pastebin.com/caWXFiCs (http://pastebin.com/caWXFiCs)
(1153-1277. sor)
Előre is köszi a segítséget!
EDIT.:
player pointert javítottam pPlayer -re...
- Unknown paste ID, it may have expired or been deleted!
Bosi $0undX nem értem :S:S ??? :( :-\
EDIT.:
BOCSI xD felfogtam felraktam mégegyszer...
Nem müxik a pastebines linked ... lol
érdekes nálam igen:)
Mert már frissítettem ;) Na, $0undX? 8) Kiszúrtad, hogy mi a baj ??? :-\
1169. sor: } csere: };
JEEE! KÖSZÖNÖM! :P IMÁDOM EZT A FÓRUMOT.
Új jelmondatom: "WoWEmuf.org -> A legjobb emberek egy helyen (Minden értelemben!) ;)"
8) 8) ;) :) :) ;D
mobilnetről vagyok per pill ezért 1szer van netem 1szer nincs, így pont lemaradtam de skyne válasza látom segített, :)
Igen segített :D De már megint én voltam a hülye, mert csak vissza kellett volna néznem az előte levő scriptre, és megláttam volna, hogy mi a baj (jó párszor megtettem :P csak nem vettem észre) :D
De semmi baj $0undX Te is segítettél már eleget :D Nah pihenj! xD
Olyan kérdésem lenne, hogy mi a függvénye az item elvételnek?
EDIT.:
Csak azért kérdeztem, mert nem találtam meg MSVC++ -ben a sok 100 lehetőség között :S
Jah, és creature gossip scripthez kellene ;) :-X
Illetve akkor már megkérdeznék egy másikat is :S
A quest státusz módosításához van függvény? Ha igen akkor mi? Ezt sem találtam meg...
(creature megölése nélkül akarnám a questet "COMPLETE" - ra állítani)
De az is elég, hogyha mondok olyan npc-ket, amik használják ezeket, és akkor kiszűröm én...
Köszi előre is.