ModernUO/Projects/Scripts/Engines/Quests/Emino's Undertaking/Mobiles/HiddenFigure.cs
2019-08-02 18:16:11 -07:00

92 lines
No EOL
1.9 KiB
C#
Raw Blame History

using Server.Items;
using Server.Mobiles;
using Server.Network;
namespace Server.Engines.Quests.Ninja
{
public class HiddenFigure : BaseQuester
{
public static int[] Messages =
{
1063191, // They won<6F>t find me here.
1063192 // Ah, a quiet hideout.
};
[Constructible]
public HiddenFigure()
{
Message = Utility.RandomList(Messages);
}
public HiddenFigure(Serial serial) : base(serial)
{
}
[CommandProperty(AccessLevel.GameMaster)]
public int Message{ get; set; }
public override int TalkNumber => -1;
public override void InitBody()
{
InitStats(100, 100, 25);
Hue = Race.Human.RandomSkinHue();
Female = Utility.RandomBool();
if (Female)
{
Body = 0x191;
Name = NameList.RandomName("female");
}
else
{
Body = 0x190;
Name = NameList.RandomName("male");
}
}
public override void InitOutfit()
{
Utility.AssignRandomHair(this);
AddItem(new TattsukeHakama(GetRandomHue()));
AddItem(new Kasa());
AddItem(new HakamaShita(GetRandomHue()));
if (Utility.RandomBool())
AddItem(new Shoes(GetShoeHue()));
else
AddItem(new Sandals(GetShoeHue()));
}
public override int GetAutoTalkRange(PlayerMobile pm)
{
return 3;
}
public override void OnTalk(PlayerMobile player, bool contextMenu)
{
PrivateOverheadMessage(MessageType.Regular, 0x3B2, Message, player.NetState);
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.WriteEncodedInt(0); // version
writer.Write(Message);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadEncodedInt();
Message = reader.ReadInt();
}
}
}