Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class npc_mirror_image : public CreatureScript
- {
- public:
- npc_mirror_image() : CreatureScript("npc_mirror_image") { }
- struct npc_mirror_imageAI : CasterAI
- {
- npc_mirror_imageAI(Creature *c) : CasterAI(c) {}
- void InitializeAI()
- {
- CasterAI::InitializeAI();
- Unit * owner = me->GetOwner();
- IF (!owner)
- RETURN;
- // Inherit Master's Threat List (not yet implemented)
- owner->CastSpell((Unit*)NULL, 58838, true);
- // here mirror image casts on summoner spell (not present in client dbc) 49866
- // here should be auras (not present in client dbc): 35657, 35658, 35659, 35660 selfcasted by mirror images (stats related?)
- // Clone Me!
- owner->CastSpell(me, 45204, false);
- }
- // Do not reload Creature templates on evade mode enter - prevent visual lost
- void EnterEvadeMode()
- {
- if (me->IsInEvadeMode() || !me->isAlive())
- return;
- Unit *owner = me->GetCharmerOrOwner();
- me->CombatStop(true);
- if (owner && !me->HasUnitState(UNIT_STAT_FOLLOW))
- {
- me->GetMotionMaster()->Clear(false);
- me->GetMotionMaster()->MoveFollow(owner, PET_FOLLOW_DIST, me->GetFollowAngle(), MOTION_SLOT_ACTIVE);
- }
- }
- };
- CreatureAI *GetAI(Creature *creature) const
- {
- return new npc_mirror_imageAI(creature);
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement