Пример #1
0
		private int GetMaterialNumber( StatueType type, StatueMaterial material )
		{
			switch ( material )
			{
				case StatueMaterial.Antique:

					switch ( type )
					{
						case StatueType.Bronze: return 1076187;
						case StatueType.Jade: return 1076186;
						case StatueType.Marble: return 1076182;
					}

					return 1076187;
				case StatueMaterial.Dark:

					if ( type == StatueType.Marble )
						return 1076183;

					return 1076182;
				case StatueMaterial.Medium: return 1076184;
				case StatueMaterial.Light: return 1076185;
				default: return 1076187;
			}
		}
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadEncodedInt();

			m_IsRewardItem = reader.ReadBool();
			m_Type = (StatueType) reader.ReadInt();
		}
Пример #3
0
		public CharacterStatueMaker( StatueType type ) : base( 0x32F0 )
		{
			m_Type = type;
			
			InvalidateHue();
		
			LootType = LootType.Blessed;
			Weight = 5.0;
		}
		public CharacterStatueMaker( StatueType type ) : base( 0x32F0 )
		{
			m_Type = type;

			InvalidateHue();

			LootType = LootType.Regular;
			Weight = 25.0;
		}
Пример #5
0
        public CharacterStatueMaker(StatueType type)
            : base(0x32F0)
        {
            this.m_Type = type;

            this.InvalidateHue();

            this.LootType = LootType.Blessed;
            this.Weight = 5.0;
        }
Пример #6
0
		public int GetTypeNumber( StatueType type )
		{
			switch ( type )
			{
				case StatueType.Marble: return 1076181;
				case StatueType.Jade: return 1076180;
				case StatueType.Bronze: return 1076230;
				default: return 1076181;
			}
		}
Пример #7
0
        public CharacterStatue( Mobile from, StatueType type )
            : base()
        {
            m_Type = type;
            m_Pose = StatuePose.Ready;
            m_Material = StatueMaterial.Antique;

            Direction = Direction.South;
            AccessLevel = AccessLevel.Counselor;
            Hits = HitsMax;
            Blessed = true;
            Frozen = true;

            CloneBody( from );
            CloneClothes( from );
            InvalidateHues();
        }
Пример #8
0
        public CharacterStatue(Mobile from, StatueType type)
            : base()
        {
            this.m_Type = type;
            this.m_Pose = StatuePose.Ready;
            this.m_Material = StatueMaterial.Antique;

            this.Direction = Direction.South;
            this.AccessLevel = AccessLevel.Counselor;
            this.Hits = this.HitsMax;
            this.Blessed = true;
            this.Frozen = true;

            this.CloneBody(from);
            this.CloneClothes(from);
            this.InvalidateHues();
        }
Пример #9
0
        public CharacterStatueDeed(CharacterStatue statue)
            : base(0x14F0)
        {
            m_Statue = statue;

            if (statue != null)
            {
                m_Type = statue.StatueType;
                m_IsRewardItem = statue.IsRewardItem;
            }

            LootType = LootType.Blessed;
            Weight = 1.0;
        }
Пример #10
0
        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            int version = reader.ReadEncodedInt();

            if ( version >= 1 ) {
                m_Type = (StatueType) reader.ReadInt();
            }

            m_Statue = reader.ReadMobile() as CharacterStatue;
            m_IsRewardItem = reader.ReadBool();
        }
Пример #11
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            reader.ReadEncodedInt();

            m_Type = (StatueType) reader.ReadInt();
            m_Pose = (StatuePose) reader.ReadInt();

            m_SculptedBy = reader.ReadMobile();
            SculptedOn = reader.ReadDateTime();

            Plinth = reader.ReadItem<CharacterStatuePlinth>();
            IsRewardItem = reader.ReadBool();

            InvalidatePose();

            Frozen = true;

            if (m_SculptedBy == null || Map == Map.Internal) // Remove preview statues
            {
                Timer.DelayCall(TimeSpan.Zero, Delete);
            }
        }
Пример #12
0
        /// <summary>
        /// This method is injected both the NPC and Item MechSpawn functions
        /// in order to control the return value.
        /// </summary>
        /// <returns>True to continue on to vanilla code, otherwise false</returns>
        internal static bool MechSpawn(float x, float y, int type, ref int num, ref int num2, ref int num3, StatueType caller)
        {
            var res = Hooks.World.Statue?.Invoke(caller, x, y, type, ref num, ref num2, ref num3);

            if (res.HasValue)
            {
                return(res.Value == HookResult.Continue);
            }
            return(true);
        }
Пример #13
0
        public CharacterStatueDeed(CharacterStatue statue)
            : base(0x14F0)
        {
            m_Statue = statue;

            if (statue != null)
            {
                m_Type = statue.StatueType;
            }

            Name = "a character statue deed";

            LootType = LootType.Blessed;
            Weight = 1.0;
        }
Пример #14
0
 public CharacterStatueTarget(Item maker, StatueType type) : base(-1, true, TargetFlags.None)
 {
     m_Maker = maker;
     m_Type  = type;
 }
Пример #15
0
 public CharacterStatueMaker(StatueType type) : base(0x32F0)
 {
     m_Type = type;
     InvalidateHue();
     Weight = 5.0;
 }
Пример #16
0
 /// <summary>
 /// This method is injected both the NPC and Item MechSpawn functions
 /// in order to control the return value.
 /// </summary>
 /// <returns>True to continue on to vanilla code, otherwise false</returns>
 internal static bool MechSpawn(float x, float y, int type, ref int num, ref int num2, ref int num3, StatueType caller)
 {
     var res = Hooks.World.Statue?.Invoke(caller, x, y, type, ref num, ref num2, ref num3);
     if (res.HasValue) return res.Value == HookResult.Continue;
     return true;
 }
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadEncodedInt();

			m_Type = (StatueType) reader.ReadInt();
			m_Pose = (StatuePose) reader.ReadInt();
			m_Material = (StatueMaterial) reader.ReadInt();

			m_SculptedBy = reader.ReadMobile();
			m_SculptedOn = reader.ReadDateTime();

			m_Plinth = reader.ReadItem() as CharacterStatuePlinth;
			m_IsRewardItem = reader.ReadBool();

			InvalidatePose();

			Frozen = true;

			if( m_SculptedBy == null || Map == Map.Internal )
			{
				Timer.DelayCall( TimeSpan.Zero, new TimerCallback( Delete ) );
			}
		}
			public string GetTypeName( StatueType type )
			{
				switch ( type )
				{
					default:
					case StatueType.Marble: return "Marble";
					case StatueType.Jade: return "Jade";
					case StatueType.Bronze: return "Bronze";
					case StatueType.Bloodstone: return "Bloodstone";
					case StatueType.Alabaster: return "Alabaster";
					case StatueType.Granite: return "Granite";
					case StatueType.Gold: return "Gold";
				}
			}
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadEncodedInt();

			m_Type = (StatueType) reader.ReadInt();
			m_Pose = (StatuePose) reader.ReadInt();
			m_Material = (StatueMaterial) reader.ReadInt();

			m_SculptedBy = reader.ReadMobile();
			m_SculptedOn = reader.ReadDateTime();

			m_Plinth = reader.ReadItem() as CharacterStatuePlinth;
			m_IsRewardItem = reader.ReadBool();

			InvalidatePose();

			Frozen = true;
		}
		public CharacterStatueTarget( Item maker, StatueType type ) : base( -1, true, TargetFlags.None )
		{
			m_Maker = maker;
			m_Type = type;
		}
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            reader.ReadEncodedInt();

            m_Type = (StatueType) reader.ReadInt();

        }