Beispiel #1
0
        public void Target(SleepingBody slumber)
        {
            if (!Caster.CanSee(slumber))
            {
                Caster.SendLocalizedMessage(500237); // Target can not be seen.
            }

            else if (CheckSequence())
            {
                if (slumber != null)
                {
                    if (slumber.Owner != null)
                    {
                        slumber.Owner.RevealingAction();
                        slumber.Owner.Frozen    = false;
                        slumber.Owner.Squelched = false;
                        slumber.Owner.Map       = slumber.Map;
                        slumber.Owner.Location  = slumber.Location;
                        slumber.Owner.Animate(21, 6, 1, false, false, 0);;


                        slumber.Delete();
                        slumber.Owner.SendMessage("You wake up!");
                        Caster.SendMessage("You awaken them!");
                    }
                    else
                    {
                        Caster.SendMessage("They are beyond your power to awaken...");
                    }
                }
            }

            FinishSequence();
        }
        public void Target(IPoint3D p)
        {
            if (!Caster.CanSee(p))
            {
                Caster.SendLocalizedMessage(500237); // Target can not be seen.
            }
            else if (CheckSequence())
            {
                SpellHelper.Turn(Caster, p);


                ArrayList targets = new ArrayList();
                if (this.Scroll != null)
                {
                    Scroll.Consume();
                }
                Map map = Caster.Map;

                if (map != null)
                {
                    IPooledEnumerable eable = map.GetItemsInRange(new Point3D(p), 3);

                    foreach (Item m in eable)
                    {
                        if (Caster.CanSee(m) && m is SleepingBody)
                        {
                            targets.Add(m);
                        }
                    }

                    eable.Free();
                }

                for (int i = 0; i < targets.Count; ++i)
                {
                    SleepingBody m = (SleepingBody)targets[i];


                    if (m != null)
                    {
                        m.Owner.RevealingAction();
                        m.Owner.Frozen    = false;
                        m.Owner.Squelched = false;
                        m.Owner.Map       = m.Map;
                        m.Owner.Location  = m.Location;
                        m.Owner.Animate(21, 6, 1, false, false, 0);

                        m.Owner.SendMessage("You wake up!");

                        m.Delete();
                    }
                    Caster.SendMessage("You awaken them!");
                }
            }

            FinishSequence();
        }
Beispiel #3
0
                protected override void OnTick()
                {
                    m_Mobile.RevealingAction();
                    m_Mobile.Frozen    = false;
                    m_Mobile.Squelched = false;
                    m_Mobile.Z         = m_Body.Z;

                    if (m_Body != null)
                    {
                        m_Body.Delete();
                        m_Mobile.SendMessage("You wake up!");
                    }
                    RemoveTimer(m_Mobile);
                }