View Single Post
Old 07-02-2008, 02:59 PM   #1431 (permalink)
Melchior
Forum Expert
 
Join Date: Dec 2005
Posts: 272
Default

As of SVN 300 the interface ICommodity (defined in CommodityDeed.cs) is expanded to contain an additional member: 'int DescriptionNumber{ get; }';as a result the last ML SVN (10) wont compile because Switch.cs does not completely adheres to that interface.

I added the line in red to remedy this:

Code:
using System;

namespace Server.Items
{
	public class Switch : Item, ICommodity
	{
		public override int LabelNumber{ get{ return 1073464; } } // Switch
		
		string ICommodity.Description
		{
			get
			{
				return String.Format( "{0} switch", Amount );
			}
		}

		int ICommodity.DescriptionNumber { get { return LabelNumber; } }
		
		[Constructable]
		public Switch() : this( 1 )
		{
		}
	
		[Constructable]
		public Switch( int amount ) : base( 0x2F5F )
		{
			Weight = 1;
			Stackable = true;
			Amount = amount;
		}

		public Switch( Serial serial ) : base( serial )
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );
			
			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );
			
			int version = reader.ReadInt();
		}
	}
}
Furthermore, the included (in Distro) container.cs does not include a 'commented out' block in the deserialize function while the installation instruction still require that the block should be un-commented directly after the first start and shutdown (with save).
Melchior is offline   Reply With Quote