Files
Unstable Kitsune b918192e4e Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
2023-11-28 23:20:26 -05:00

139 lines
4.3 KiB
C#

using System;
using System.Collections.Generic;
using Server;
using Server.Gumps;
using Server.Items;
using Server.Mobiles;
using Server.Engines.Quests;
namespace Server.Engines.Khaldun
{
public class GraveDigger : BaseVendor
{
protected readonly List<SBInfo> m_SBInfos = new List<SBInfo>();
protected override List<SBInfo> SBInfos { get { return m_SBInfos; } }
public override bool IsActiveVendor { get { return false; } }
public override void InitSBInfo()
{
}
public static GraveDigger TramInstance { get; set; }
//public static GraveDigger FelInstance { get; set; }
public static void Initialize()
{
if (Core.TOL)
{
if (TramInstance == null)
{
TramInstance = new GraveDigger();
TramInstance.MoveToWorld(new Point3D(1382, 1447, 10), Map.Trammel);
TramInstance.Direction = Direction.South;
}
}
}
public GraveDigger()
: base("the Grave Digger")
{
}
public override void InitBody()
{
Name = NameList.RandomName("male");
InitStats(100, 100, 25);
Female = false;
CantWalk = true;
Race = Race.Human;
Hue = Race.RandomSkinHue();
HairHue = Race.RandomHairHue();
FacialHairHue = Race.RandomHairHue();
HairItemID = 0x203C;
FacialHairItemID = 0x203E;
}
public override void InitOutfit()
{
AddItem(new Backpack());
SetWearable(new Surcoat(), 1634);
SetWearable(new Kilt(), 946);
SetWearable(new FancyShirt(), 1411);
SetWearable(new ThighBoots(), 2013);
SetWearable(new GoldBracelet());
SetWearable(new GoldRing());
}
public override void OnDoubleClick(Mobile m)
{
if (m is PlayerMobile && InRange(m.Location, 5))
{
GoingGumshoeQuest2 quest = QuestHelper.GetQuest<GoingGumshoeQuest2>((PlayerMobile)m);
if (quest != null)
{
m.SendLocalizedMessage(1158606, null, 0x23); /* You've spoken to the Grave Digger and have paid your respects to those who
perished in the fight against the titans. How someone could defile a grave
stone, you have no idea. You decide to take a closer look... */
m.PlaySound(quest.UpdateSound);
m.SendGump(new InternalGump());
}
}
}
private class InternalGump : Gump
{
public InternalGump()
: base(50, 50)
{
AddBackground(0, 0, 720, 285, 9300);
AddImage(0, 0, 1743);
AddHtmlLocalized(300, 25, 408, 250, 1158570, false, false);
/*Solemn job you know, but someone has to do it. Been pretty busy since the invasions, hardly a day goes by we don't
* have the kin of someone who embraced Sacrifice and gave themselves in defense of the realm against the Titans.
* Ah well, makes me feel good knowing me shovel gives em a good final resting place. Worst part ya know though -
* plenty of people been in and out of the cemetery for sure, but I don't know why they insist on messing up the
* headstones!? To think, some people have no Shame!*/
}
}
public GraveDigger(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();
if (Map == Map.Trammel)
{
TramInstance = this;
}
/*else if (Map == Map.Felucca)
{
FelInstance = this;
}*/
if (!Core.TOL)
Delete();
}
}
}