예제 #1
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            m_Maabus        = reader.ReadMobile() as Maabus;
            m_SpawnLocation = reader.ReadPoint3D();

            Sleep();
        }
예제 #2
0
		public void Sleep()
		{
			if ( m_Maabus == null )
				return;

			Effects.SendLocationParticles( EffectItem.Create( m_Maabus.Location, m_Maabus.Map, EffectItem.DefaultDuration ), 0x3728, 10, 10, 0x7E7 );
			Effects.PlaySound( m_Maabus.Location, m_Maabus.Map, 0x1FE );

			m_Maabus.Delete();
			m_Maabus = null;

			foreach ( MaabusCoffinComponent c in Components )
				c.TurnToFull();
		}
예제 #3
0
		public void Awake( Mobile caller )
		{
			if ( m_Maabus != null || m_SpawnLocation == Point3D.Zero )
				return;

			foreach ( MaabusCoffinComponent c in Components )
				c.TurnToEmpty();

			m_Maabus = new Maabus();

			m_Maabus.Location = m_SpawnLocation;
			m_Maabus.Map = Map;

			m_Maabus.Direction = m_Maabus.GetDirectionTo( caller );

			Timer.DelayCall( TimeSpan.FromSeconds( 7.5 ), new TimerCallback( BeginSleep ) );
		}
예제 #4
0
        public void Sleep()
        {
            if (m_Maabus == null)
            {
                return;
            }

            Effects.SendLocationParticles(EffectItem.Create(m_Maabus.Location, m_Maabus.Map, EffectItem.DefaultDuration), 0x3728, 10, 10, 0x7E7);
            Effects.PlaySound(m_Maabus.Location, m_Maabus.Map, 0x1FE);

            m_Maabus.Delete();
            m_Maabus = null;

            foreach (MaabusCoffinComponent c in Components)
            {
                c.TurnToFull();
            }
        }
예제 #5
0
        public void Awake(Mobile caller)
        {
            if (Maabus != null || SpawnLocation == Point3D.Zero)
            {
                return;
            }

            foreach (AddonComponent c in Components)
            {
                (c as MaabusCoffinComponent)?.TurnToEmpty();
            }

            Maabus = new Maabus {
                Location = SpawnLocation, Map = Map
            };
            Maabus.Direction = Maabus.GetDirectionTo(caller);

            Timer.DelayCall(TimeSpan.FromSeconds(7.5), BeginSleep);
        }
예제 #6
0
        public void Awake(Mobile caller)
        {
            if (m_Maabus != null || m_SpawnLocation == Point3D.Zero)
            {
                return;
            }

            foreach (MaabusCoffinComponent c in Components)
            {
                c.TurnToEmpty();
            }

            m_Maabus = new Maabus();

            m_Maabus.Location = m_SpawnLocation;
            m_Maabus.Map      = Map;

            m_Maabus.Direction = m_Maabus.GetDirectionTo(caller);

            Timer.DelayCall(TimeSpan.FromSeconds(7.5), new TimerCallback(BeginSleep));
        }
예제 #7
0
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			m_Maabus = reader.ReadMobile() as Maabus;
			m_SpawnLocation = reader.ReadPoint3D();

			Sleep();
		}