public override bool OnLeaveCombat(Object npc = null, object instigator = null)
        {
            Creature c = Obj as Creature;

            c.IsInvulnerable = false;
            Stage            = -1;

            foreach (Creature creature in addList)
            {
                creature.Destroy();
            }
            foreach (GameObject go in goList)
            {
                go.Destroy();
            }
            foreach (Object obj in c.ObjectsInRange.ToList())
            {
                GameObject go = obj as GameObject;
                if (go != null && go.Entry == 2000561)
                {
                    go.Destroy();
                }

                if (go != null && go.Entry == 100523)
                {
                    go.Destroy();
                }

                if (go != null && go.Entry == 100524)
                {
                    go.Destroy();
                }

                Creature creature = obj as Creature;
                if (creature != null && creature.Entry == 2000876)
                {
                    creature.Destroy();
                }

                if (creature != null && creature.Entry == 42211)
                {
                    creature.Destroy();
                }
            }

            addList = new List <Creature>();
            goList  = new List <GameObject>();

            c.BuffInterface.RemoveBuffByEntry(14897); // Removing Iron Body
            NewBuff newBuff = c.BuffInterface.GetBuff(14897, null);

            if (newBuff != null)
            {
                newBuff.RemoveBuff(true);
            }

            return(false);
        }
Ejemplo n.º 2
0
        public override bool OnLeaveCombat(Object npc = null, object instigator = null)
        {
            Creature c = Obj as Creature;

            c.IsInvulnerable = false;
            Stage            = -1;

            foreach (Creature creature in addList)
            {
                creature.Destroy();
            }
            foreach (GameObject go in goList)
            {
                go.Destroy();
            }
            foreach (Object obj in c.ObjectsInRange)
            {
                Creature creature = obj as Creature;
                if (creature != null && creature.Entry == 2000864)
                {
                    creature.Destroy();
                }

                if (creature != null && creature.Entry == 2000865)
                {
                    creature.Destroy();
                }

                if (creature != null && creature.Entry == 2000866)
                {
                    creature.Destroy();
                }
            }

            addList = new List <Creature>();
            goList  = new List <GameObject>();

            c.Ranged = c.Spawn.Proto.Ranged;

            SquigForm(0);

            DismountNPC();

            Obj.PlayEffect(2185); // Mount puff effect

            RemoveStatChange(c);

            return(false);
        }
        public new bool OnLeaveCombat(Object npc = null, object instigator = null)
        {
            Creature c = Obj as Creature;

            c.IsInvulnerable = false;
            Stage            = -1;
            OpenDoor(2094703);                        // Door Spawn GUID
            c.BuffInterface.RemoveBuffByEntry(20364); // Squig Frenzy

            c.EvtInterface.RemoveEvent(CastCloudOfSquigs);

            foreach (Creature creature in addList)
            {
                creature.Destroy();
            }
            foreach (GameObject go in goList)
            {
                go.Destroy();
            }
            foreach (Object o in c.ObjectsInRange)
            {
                GameObject go = o as GameObject;

                if (go != null && go.Entry == 98876) // Mourkain Henge
                {
                    go.VfxState = 0;
                    foreach (Player player in go.PlayersInRange.ToList())
                    {
                        go.SendMeTo(player);
                    }
                }

                Creature creature = o as Creature;
                if (creature != null && creature.Entry == 2000945) // Mourkain Henge
                {
                    creature.Destroy();
                }

                if (creature != null && creature.Entry == 2000941) // Mourkain Henge
                {
                    creature.Destroy();
                }
            }

            addList = new List <Creature>();
            goList  = new List <GameObject>();

            return(false);
        }
        public override bool OnLeaveCombat(Object npc = null, object instigator = null)
        {
            Creature c = Obj as Creature;

            c.IsInvulnerable = false;
            Stage            = -1;

            foreach (Creature creature in addList)
            {
                creature.Destroy();
            }
            foreach (GameObject go in goList)
            {
                go.Destroy();
            }
            foreach (Object obj in c.ObjectsInRange)
            {
                Creature creature = obj as Creature;
                if (creature != null && creature.Entry == 2000851)
                {
                    creature.Destroy();
                }
            }

            Obj.EvtInterface.RemoveEvent(SpawnDaStaff);

            addList = new List <Creature>();
            goList  = new List <GameObject>();

            c.EvtInterface.RemoveEvent(SpawnAdds);
            c.EvtInterface.RemoveEvent(SpawnAdds);
            Obj.EvtInterface.RemoveEvent(CastFistOfGork);

            return(false);
        }
        public new bool OnLeaveCombat(Object npc = null, object instigator = null)
        {
            Creature c = Obj as Creature;

            c.IsInvulnerable = false;
            Stage            = -1;

            foreach (Creature creature in addList)
            {
                creature.Destroy();
            }
            foreach (GameObject go in goList)
            {
                go.Destroy();
            }
            foreach (Object obj in c.ObjectsInRange)
            {
                Creature creature = obj as Creature;
                if (creature != null && creature.Entry == 41619)
                {
                    creature.Destroy();
                }

                if (creature != null && creature.Entry == 2000883)
                {
                    creature.Destroy();
                }

                if (creature != null && creature.Entry == 2000884)
                {
                    creature.Destroy();
                }
            }

            addList = new List <Creature>();
            goList  = new List <GameObject>();

            return(false);
        }
Ejemplo n.º 6
0
        public new bool OnLeaveCombat(Object npc = null, object instigator = null)
        {
            Creature c = Obj as Creature;

            c.IsInvulnerable = false;
            Stage            = -1;

            //c.EvtInterface.RemoveEvent(MatureTrolls);
            c.EvtInterface.RemoveEvent(SpawnTrolls);
            c.EvtInterface.RemoveEvent(SpawnTrolls);

            foreach (Creature creature in addList)
            {
                creature.Destroy();
            }
            foreach (GameObject go in goList)
            {
                go.Destroy();
            }
            foreach (Object obj in c.ObjectsInRange)
            {
                Creature creature = obj as Creature;
                if (creature != null && creature.Entry == 2000881)
                {
                    creature.Destroy();
                }

                if (creature != null && creature.Entry == 2000882)
                {
                    creature.Destroy();
                }
            }

            addList = new List <Creature>();
            goList  = new List <GameObject>();

            return(false);
        }
        public override bool OnLeaveCombat(Object npc = null, object instigator = null)
        {
            Creature c = Obj as Creature;

            foreach (Creature creature in addList)
            {
                creature.Destroy();
            }
            foreach (GameObject go in goList)
            {
                go.Destroy();
            }

            addList = new List <Creature>();
            goList  = new List <GameObject>();

            foreach (Object obj in c.ObjectsInRange.ToList())
            {
                GameObject go = obj as GameObject;
                if (go != null && go.Entry == 2000602)
                {
                    go.Destroy();
                }

                Creature creature = obj as Creature;
                if (creature != null && creature.Entry == 2000945)
                {
                    creature.Destroy();
                }

                if (creature != null && creature.Entry == 2000941)
                {
                    creature.Destroy();
                }
            }

            return(false);
        }