コード例 #1
0
        protected override void OnSpawnDeactivate(Mobile m)
        {
            base.OnSpawnDeactivate(m);

            if (m != null)
            {
                var index = Bosses.IndexOf(m);

                if (index > -1)
                {
                    TeleporterState(index, true);

                    if (!m.Deleted && m.Alive && m.Z < 0)
                    {
                        Teleport(m, Circles[index].Start.Clone2D(25, 5).ToPoint3D(), Map);
                    }
                }
            }
        }
コード例 #2
0
        protected override void OnSpawnActivate(Mobile m)
        {
            base.OnSpawnActivate(m);

            if (m != null)
            {
                var index = Bosses.IndexOf(m);

                if (index > -1)
                {
                    TeleporterState(index, false);
                }

                if (!m.Deleted && m.Alive && m.Z < 0)
                {
                    Teleport(m, m.ToPoint3D(), Map);
                }
            }
        }
コード例 #3
0
        public override void OnDeath(DungeonZone zone, Mobile m)
        {
            base.OnDeath(zone, m);

            var index = Bosses.IndexOf(m);

            if (index > -1)
            {
                if (m.Corpse != null)
                {
                    m.Corpse.Z = -20;
                }

                while (Floors[index].Count > 0)
                {
                    DropFloor(index, true);
                }

                TeleportersTo[index].Hue    = 2999;
                TeleportersTo[index].ItemID = 19343;

                TeleporterMove(index, Circles[index].Start.Clone2D(25, 25).ToPoint3D(-20));
            }
        }