コード例 #1
0
            protected override void OnTick()
            {
                if (m_Player.Deleted)
                {
                    if (m_Step > 0)
                    {
                        m_Paladin.Delete();
                    }

                    return;
                }

                if (m_Step > 0 && m_Paladin.Deleted)
                {
                    return;
                }

                if (m_Step == 0)
                {
                    SummonedPaladinMoongate moongate = new SummonedPaladinMoongate();
                    moongate.MoveToWorld(new Point3D(2091, 1348, -90), Map.Malas);

                    Effects.PlaySound(moongate.Location, moongate.Map, 0x20E);

                    m_Paladin        = new SummonedPaladin(m_Player);
                    m_Paladin.Frozen = true;

                    m_Paladin.Location = moongate.Location;
                    m_Paladin.Map      = moongate.Map;

                    Delay = TimeSpan.FromSeconds(2.0);
                    Start();
                }
                else if (m_Step == 1)
                {
                    m_Paladin.Direction = m_Paladin.GetDirectionTo(m_Player);
                    m_Paladin.Say(1060122); // STOP WICKED ONE!

                    Delay = TimeSpan.FromSeconds(3.0);
                    Start();
                }
                else
                {
                    m_Paladin.Frozen = false;

                    m_Paladin.Say(1060123); // I will slay you before I allow you to complete your evil rites!

                    m_Paladin.Combatant = m_Player;
                }

                m_Step++;
            }