I am trying to make Platinum Bars as currency. I copied the Gold Bar and modified it to do what I need. I'm running into a problem with the public override int LabelNumber section, as the Platinum Bars do not have a Cliloc # associated with it. I tried using a string "Platinum Bars: in place of the 1063489, but I got the error: Cannot Implicitly convert String to int.

The item works fine, and I have my Banker selling it, but when they buy the "Platinum Bars", "Gold Bricks" is labeled on the item. When I [props it, it shows as PlatinumBlocks (Which is Correct).

using System;

namespace Server.Items
{
public class PlatinumBricks : Item
{
public override bool IsArtifact { get { return true; } }
[Constructable]
public PlatinumBricks()
: base(0x1BEB)

{
Hue = 1153;
Stackable = true;
Weight = 0;
}

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

public override int LabelNumber
{
get
{
return 1063489;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);

writer.Write((int)0);
}

public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);

int version = reader.ReadInt();
}
}
}
 
That worked perfectly. I didn't think to remove the IsArtifact. I'm still learning, but coming along.

Thanks for the help.
 
Under Hue you can also add, as a replacement for the initial naming,

Name = "Platinum Bars';

To set the item name.
 
Back