Reorganizes Project (#41)

This commit is contained in:
Kamron Batman 2019-08-02 18:13:40 -07:00 committed by GitHub
parent 08bf44af9a
commit 3614a66aee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3499 changed files with 79 additions and 55 deletions

View file

@ -0,0 +1,28 @@
namespace Server.Items
{
public abstract class BaseSign : Item
{
public BaseSign(int dispID) : base(dispID)
{
Movable = false;
}
public BaseSign(Serial serial) : base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write(1);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View file

@ -0,0 +1,61 @@
namespace Server.Items
{
public class LocalizedSign : Sign
{
private int m_LabelNumber;
[Constructible]
public LocalizedSign(SignType type, SignFacing facing, int labelNumber) : base(0xB95 + 2 * (int)type + (int)facing)
{
m_LabelNumber = labelNumber;
}
[Constructible]
public LocalizedSign(int itemID, int labelNumber) : base(itemID)
{
m_LabelNumber = labelNumber;
}
public LocalizedSign(Serial serial) : base(serial)
{
}
public override int LabelNumber => m_LabelNumber;
[CommandProperty(AccessLevel.GameMaster)]
public int Number
{
get => m_LabelNumber;
set
{
m_LabelNumber = value;
InvalidateProperties();
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write(0);
writer.Write(m_LabelNumber);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
switch (version)
{
case 0:
{
m_LabelNumber = reader.ReadInt();
break;
}
}
}
}
}

View file

@ -0,0 +1,104 @@
namespace Server.Items
{
public enum SignFacing
{
North,
West
}
public enum SignType
{
Library,
DarkWoodenPost,
LightWoodenPost,
MetalPostC,
MetalPostB,
MetalPostA,
MetalPost,
Bakery,
Tailor,
Tinker,
Butcher,
Healer,
Mage,
Woodworker,
Customs,
Inn,
Shipwright,
Stables,
BarberShop,
Bard,
Fletcher,
Armourer,
Jeweler,
Tavern,
ReagentShop,
Blacksmith,
Painter,
Provisioner,
Bowyer,
WoodenSign,
BrassSign,
ArmamentsGuild,
ArmourersGuild,
BlacksmithsGuild,
WeaponsGuild,
BardicGuild,
BartersGuild,
ProvisionersGuild,
TradersGuild,
CooksGuild,
HealersGuild,
MagesGuild,
SorcerersGuild,
IllusionistGuild,
MinersGuild,
ArchersGuild,
SeamensGuild,
FishermensGuild,
SailorsGuild,
ShipwrightsGuild,
TailorsGuild,
ThievesGuild,
RoguesGuild,
AssassinsGuild,
TinkersGuild,
WarriorsGuild,
CavalryGuild,
FightersGuild,
MerchantsGuild,
Bank,
Theatre
}
public class Sign : BaseSign
{
[Constructible]
public Sign(SignType type, SignFacing facing) : base(0xB95 + 2 * (int)type + (int)facing)
{
}
[Constructible]
public Sign(int itemID) : base(itemID)
{
}
public Sign(Serial serial) : base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write(0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}

View file

@ -0,0 +1,71 @@
namespace Server.Items
{
public class SubtextSign : Sign
{
private string m_Subtext;
[Constructible]
public SubtextSign(SignType type, SignFacing facing, string subtext)
: base(type, facing)
{
m_Subtext = subtext;
}
[Constructible]
public SubtextSign(int itemID, string subtext)
: base(itemID)
{
m_Subtext = subtext;
}
public SubtextSign(Serial serial)
: base(serial)
{
}
[CommandProperty(AccessLevel.GameMaster)]
public string Subtext
{
get => m_Subtext;
set
{
m_Subtext = value;
InvalidateProperties();
}
}
public override void OnSingleClick(Mobile from)
{
base.OnSingleClick(from);
if (!string.IsNullOrEmpty(m_Subtext))
LabelTo(from, m_Subtext);
}
public override void AddNameProperties(ObjectPropertyList list)
{
base.AddNameProperties(list);
if (!string.IsNullOrEmpty(m_Subtext))
list.Add(m_Subtext);
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write(0);
writer.Write(m_Subtext);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
m_Subtext = reader.ReadString();
}
}
}