Exemple #1
0
        public void Target(ITelekinesisable obj)
        {
            if (CheckSequence())
            {
                obj.OnTelekinesis(Caster);
            }

            FinishSequence();
        }
		public void Target( ITelekinesisable obj )
		{
			if ( CheckSequence() )
			{
				obj.OnTelekinesis( Caster );
			}

			FinishSequence();
		}
Exemple #3
0
        public void Target(ITelekinesisable obj)
        {
            if (CheckSequence())
            {
                SpellHelper.Turn(Caster, obj);

                obj.OnTelekinesis(Caster);
            }

            FinishSequence();
        }
Exemple #4
0
        public void Target( ITelekinesisable obj )
        {
            if ( CheckSequence() )
            {
                SpellHelper.Turn( Caster, obj );

                obj.OnTelekinesis( Caster );
            }

            FinishSequence();
        }
        public void Target(Item item)
        {
            ITelekinesisable t = item as ITelekinesisable;

            if (!(t != null || item is Container))
            {
                Caster.SendLocalizedMessage(501857); // This spell won't work on that!
                return;
            }

            if (CheckSequence())
            {
                if (t != null)
                {
                    SpellHelper.Turn(Caster, t);
                    t.OnTelekinesis(Caster);
                }
                else
                {
                    SpellHelper.Turn(Caster, item);

                    if (!item.IsAccessibleTo(Caster))
                    {
                        item.OnDoubleClickNotAccessible(Caster);
                    }
                    else if (!item.CheckItemUse(Caster, item))
                    {
                    }
                    else if (item.RootParent is Mobile && item.RootParent != Caster)
                    {
                        item.OnSnoop(Caster);
                    }
                    else if (item is Corpse corpse && !corpse.CheckLoot(Caster, null))
                    {
                    }
                    else if (Caster.Region.OnDoubleClick(Caster, item))
                    {
                        Effects.SendLocationParticles(EffectItem.Create(item.Location, item.Map, EffectItem.DefaultDuration),
                                                      0x376A, 9, 32, 5022);
                        Effects.PlaySound(item.Location, item.Map, 0x1F5);

                        item.OnItemUsed(Caster, item);
                    }
                }