Likes: 0
Results 1 to 1 of 1
Thread: L70 etc
-
25-07-08, 02:43 AM #1
L70 etc
Register to remove this adThis script scripts the band L70 etc.
It will spawn/despawn, etc (Once you first spawn them of course)
Automatically plays the music, move around, etc.
Code:////////////////////////////////////////////////////// /* Original written by Scarface // * // * This script can be easily edited to be // * used for your server. Throughout the script // * are comments on what each thing does so that // * you can edit this. You can create custom // * teleporting locations and menus. // * // * Originally written for use with Moon++ // */ // // // ////////////////////////////////////////////////////// // REDONE BY ROFLWAFFLES (zerohero) #include "StdAfx.h" #include "Setup.h" // --- L70etc band members --- #define SAMURO 23625 #define BERGRISST 23619 #define MAIKYL 23624 #define SIGNICIOUS 23626 #define THUNDERSKINS 23623 //#define TARGETGROUND 48000 //#define TARGETAIR 48001 #define UNDEAD 48002 #define UNDEAD2 48003 #define UNDEAD3 48004 #define TRIGGER 48005 /* * EMOTE_ONESHOT_CUSTOMSPELL01 = 402, * EMOTE_ONESHOT_CUSTOMSPELL02 = 403, * EMOTE_ONESHOT_CUSTOMSPELL03 = 404, * EMOTE_ONESHOT_CUSTOMSPELL04 = 405, * EMOTE_ONESHOT_CUSTOMSPELL05 = 406, * EMOTE_ONESHOT_CUSTOMSPELL06 = 407, */ // Spells #define SPELLFLARE 42505 #define SPELLFIRE 42501 #define SPOTLIGHT 39312 #define SPELLEARTH 42499 #define SPELLLLIGHTNING 42510 #define SPELLLLIGHTNING2 42507 #define SPELLSTORM 42500 #define CONSECRATION 26573 //Consecration #define SINGERSLIGHT 42510 class SamAI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(SamAI); SamAI(Creature* pCreature) : CreatureAIScript(pCreature) { _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget) { _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){_unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true);} void OnDespawn(){ RemoveAIUpdateEvent(); } void AIUpdate() { switch (timer) { case 1: _unit->PlaySoundToSet(11803); break; case 2: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 19: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL05); break; case 30: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 65: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 70: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 84: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL06); break; case 112: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SINGERSLIGHT), true); break; case 123: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 137: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL06); break; case 142: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 180: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 229: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL02); break; case 239: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL06); break; case 259: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL06); break; case 279: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 280: _unit->Despawn(1000,300000); break; } timer++; } protected: uint32 timer; }; class BerAI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(BerAI); BerAI(Creature* pCreature) : CreatureAIScript(pCreature) { _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget){ _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){ _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void OnDespawn(){ RemoveAIUpdateEvent(); } void AIUpdate(){ switch (timer){ case 0: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 10: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 30: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 34: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 38: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 104: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 123: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 140: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPOTLIGHT), true); break; case 145: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 168: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 229: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL02); break; case 230: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL06); break; case 279: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 280: _unit->Despawn(1000,300050); break; } timer++; } protected: uint32 timer; }; class SigAI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(SigAI); SigAI(Creature* pCreature) : CreatureAIScript(pCreature){ _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget){ _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){ _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void OnDespawn(){ RemoveAIUpdateEvent(); } void AIUpdate(){ switch (timer){ case 0: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 10: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 30: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 34: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 38: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 70: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 85: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 123: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 140: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 165: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPOTLIGHT), true); break; case 166: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL02); break; case 168: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 180: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 193: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 229: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL06); break; case 259: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 279: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 280: _unit->Despawn(1000,300050); break; } timer++; } protected: uint32 timer; }; class MaiAI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(MaiAI); MaiAI(Creature* pCreature) : CreatureAIScript(pCreature){ _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget){ _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){ _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void OnDespawn(){ RemoveAIUpdateEvent(); } void AIUpdate(){ switch (timer){ case 0: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 10: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 30: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 45: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 70: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 85: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 95: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 102: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 115: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); break; case 123: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL02); break; case 165: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPOTLIGHT), true); break; case 192: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 203: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 229: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 279: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 280: _unit->Despawn(1000,300050); break; } timer++; } protected: uint32 timer; }; class ThuAI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(ThuAI); ThuAI(Creature* pCreature) : CreatureAIScript(pCreature){ _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget){ _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){ _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void OnDespawn(){ RemoveAIUpdateEvent(); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void AIUpdate(){ switch (timer){ case 2: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 3: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 14: _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "ARE YOU READY TO ROCK?!?!"); case 17: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 42: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 55: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL03); break; case 62: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 63: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 64: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 75: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 76: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 77: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 88: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 99: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 110: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 137: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL02); break; case 140: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 142: _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "WERE GUNNA ROCK YOU CRAAAAAAZY!!!"); case 313: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 194: _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL04); break; case 200:{ _unit->Emote(EMOTE_ONESHOT_CUSTOMSPELL01); _unit->SetUInt32Value(UNIT_NPC_EMOTESTATE, 401); break; } case 279: _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); break; case 281: _unit->Despawn(1000,301000); break; } timer++; } protected: uint32 timer; }; class UndeadAI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(UndeadAI); UndeadAI(Creature* pCreature) : CreatureAIScript(pCreature){ _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget){ _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){ _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void OnDespawn(){ RemoveAIUpdateEvent(); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void AIUpdate(){ switch (timer){ case 2: _unit->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_DANCE); break; case 280: _unit->Emote(EMOTE_ONESHOT_APPLAUD); break; case 281: _unit->Despawn(1000,301000); break; } timer++; } protected: uint32 timer; }; class Undead2AI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(Undead2AI); Undead2AI(Creature* pCreature) : CreatureAIScript(pCreature){ _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget){ _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){ _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void OnDespawn(){ _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "That was great! Any *****es wanna come back stage and give daddy a little sugar?"); RemoveAIUpdateEvent(); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void AIUpdate(){ switch (timer){ case 2: _unit->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_DANCE); break; case 280: _unit->Emote(EMOTE_ONESHOT_CHEER); break; case 281: _unit->Despawn(1000,301000); break; } timer++; } protected: uint32 timer; }; class Undead3AI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(Undead3AI); Undead3AI(Creature* pCreature) : CreatureAIScript(pCreature){ _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget){ _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){ _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void OnDespawn(){ _unit->SendChatMessage(CHAT_MSG_MONSTER_YELL, LANG_UNIVERSAL, "That was great! Lets go light up that joint!"); RemoveAIUpdateEvent(); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void AIUpdate(){ switch (timer){ case 2: _unit->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_DANCE); break; case 279: _unit->Emote(EMOTE_ONESHOT_CHEER); break; case 280: _unit->Despawn(1000,301000); break; } timer++; } protected: uint32 timer; }; class TriggerAI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(TriggerAI); TriggerAI(Creature* pCreature) : CreatureAIScript(pCreature){ _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget){ _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){ _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void OnDespawn(){ _unit->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "That was great!"); RemoveAIUpdateEvent(); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void AIUpdate(){ switch (timer){ case 1: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 8: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 15: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 21: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 28: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 35: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 41: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 48: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 55: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 62: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 69: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 76: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 81: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 89: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 96: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 101: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 108: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 115: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 121: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 128: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 135: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 141: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 148: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 155: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 162: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 169: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 176: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 181: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 189: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 196: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 201: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 208: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 215: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 221: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 228: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 235: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 241: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 248: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 255: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 262: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 269: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 276: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 281: _unit->Despawn(1000,301000); break; } timer++; } protected: uint32 timer; }; class Trigger2AI : public CreatureAIScript{ public: ADD_CREATURE_FACTORY_FUNCTION(Trigger2AI); Trigger2AI(Creature* pCreature) : CreatureAIScript(pCreature){ _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget){ _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn(){ _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void OnDespawn() { _unit->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "That was great!"); RemoveAIUpdateEvent(); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); } void AIUpdate() { switch (timer) { case 3: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 10: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 18: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 24: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 22: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 38: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 44: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 52: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 58: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 68: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 69: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 76: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 85: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 90: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 96: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 107: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 109: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 125: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 127: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 129: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 132: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 144: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 149: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 159: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 166: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 169: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 176: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 183: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 186: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 194: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 204: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 209: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 218: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 223: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 228: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 235: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 241: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 248: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 252: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 263: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 266: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 274: _unit->CastSpell(_unit, dbcSpell.LookupEntry(CONSECRATION), true); break; case 281: _unit->Despawn(1000,301000); break; } timer++; } protected: uint32 timer; }; /*class Effectsground : public CreatureAIScript( public: ADD_CREATURE_FACTORY_FUNCTION(Effectsground); Effectsground(Creature* pCreature) : CreatureAIScript(pCreature) { _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget) { RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit* mTarget) { _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit* mKiller) { RemoveAIUpdateEvent(); } void OnSpawn() { _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; } void OnDespawn() { RemoveAIUpdateEvent(); } void AIUpdate() { switch (timer) { case 2: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING), true); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING2), true); }break; case 6: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLEARTH), true); }break; case 8: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFIRE), true); }break; case 72: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING), true); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING2), true); }break; case 76: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLEARTH), true); }break; case 78: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFIRE), true); }break; case 125: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING), true); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING2), true); }break; case 128: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLEARTH), true); }break; case 132: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFIRE), true); }break; case 232: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING), true); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING2), true); }break; case 236: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLEARTH), true); }break; case 238: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFIRE), true); }break; case 245: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING), true); _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLLLIGHTNING2), true); }break; case 249: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLEARTH), true); }break; case 251: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFIRE), true); }break; case 279: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLFLARE), true); }break; case 280: { _unit->Despawn(1000,300000); }break; timer++; } protected: uint32 timer; }; class Effectsair : public CreatureAIScript( public: ADD_CREATURE_FACTORY_FUNCTION(Effectsair); Effectsair(Creature* pCreature) : CreatureAIScript(pCreature) { _unit->GetAIInterface()->SetAllowedToEnterCombat(false); _unit->GetAIInterface()->m_canMove = false; _unit->GetAIInterface()->disable_melee = true; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); timer = 0; RegisterAIUpdateEvent(1000); } void OnCombatStart(Unit* mTarget){ RegisterAIUpdateEvent(1000); } void OnCombatStop(Unit *mTarget) { _unit->GetAIInterface()->setCurrentAgent(AGENT_NULL); _unit->GetAIInterface()->SetAIState(STATE_IDLE); RemoveAIUpdateEvent(); } void OnDied(Unit * mKiller){ RemoveAIUpdateEvent(); } void OnSpawn() { timer = 0; _unit->SetUInt64Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); } void OnDespawn() { RemoveAIUpdateEvent(); } void AIUpdate() { switch(timer) { case 1: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLSTORM), true); }break; case 70: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLSTORM), true); }break; case 123: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLSTORM), true); }break; case 230: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLSTORM), true); }break; case 243: { _unit->CastSpell(_unit, dbcSpell.LookupEntry(SPELLSTORM), true); }break; case 280: { _unit->Despawn(1000,300000); }break; } timer++; } protected: uint32 timer; };*/ void SetupL70etc(ScriptMgr * mgr) { mgr->register_creature_script(SAMURO, &SamAI::Create); mgr->register_creature_script(BERGRISST, &BerAI::Create); mgr->register_creature_script(MAIKYL, &MaiAI::Create); mgr->register_creature_script(SIGNICIOUS, &SigAI::Create); mgr->register_creature_script(THUNDERSKINS, &ThuAI::Create); mgr->register_creature_script(UNDEAD, &UndeadAI::Create); mgr->register_creature_script(UNDEAD2, &Undead2AI::Create); mgr->register_creature_script(UNDEAD3, &Undead3AI::Create); mgr->register_creature_script(TRIGGER, &TriggerAI::Create); //mgr->register_creature_script(TARGETGROUND, &Effectsground::Create); //mgr->register_creature_script(TARGETAIR, &Effectsair::Create); }
› See More: L70 etc