Overwrite

Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
Unstable Kitsune
2023-11-28 23:20:26 -05:00
parent 3cd54811de
commit b918192e4e
11608 changed files with 2644205 additions and 47 deletions

View File

@@ -0,0 +1,145 @@
using System;
using Server.Items;
namespace Server.Mobiles
{
[CorpseName("Garamons Corpse")]
public class Garamon : Mobile
{
[Constructable]
public Garamon()
{
Str = 100;
Int = 100;
Dex = 100;
Name = "Garamon";
HairItemID = 0x2044;
FacialHairItemID = 0x204B;
HairHue = 0x44E;
Body = 0x190;
Hue = 33821;
CantWalk = true;
Direction = Direction.South;
AddItem(new Shoes(1810));
AddItem(new Robe(946));
Blessed = true;
}
public Garamon(Serial serial)
: base(serial)
{
}
public virtual bool IsInvulnerable
{
get
{
return true;
}
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)2);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
if (version == 1)
{
FacialHairItemID = 0x204B;
}
}
public override bool HandlesOnSpeech(Mobile from)
{
if (from.InRange(Location, 8))
return true;
return base.HandlesOnSpeech(from);
}
public override void OnSpeech(SpeechEventArgs e)
{
if (!e.Handled && e.Mobile.InRange(this.Location, 2))
{
PlayerMobile pm = e.Mobile as PlayerMobile;
if (pm.AbyssEntry)
{
pm.SendMessage("You have completed the Sacred Quest already!");
}
else
{
string keyword = e.Speech.ToLower();
switch (keyword)
{
case "hello":
{
this.Say("Greetings Adventurer! If you are seeking to enter the Abyss, I may be of assitance to you.");
break;
}
case "secret":
{
this.Say("He who pays close attention to the walls may notice something unusual.");
break;
}
case "teleporter":
{
this.Say("You will find many within the dungeon. They will facilitate your travels.");
break;
}
case "vines":
{
this.Say("Aaah yes! Tricky things they are. Try to find something that could burn through them.");
break;
}
case "burn":
{
this.Say("I can tell you right away it's not fire based. Surely something within the dungeon will yield what you need.");
break;
}
case "abyss":
{
this.Say("It's entrance is protected by stone guardians who will only grant passage to the carrier of a Tripartite Key!");
break;
}
case "stone guardian":
{
this.Say("They will not let you enter the Abyss unless you can present a Tripartite Key");
break;
}
case "key":
{
this.Say("It's three parts that you must find, and reunite as one!");
break;
}
case "parts":
{
this.Say("Two can be found hidden in secret rooms within the Underworld. The third you must take from a shadow of evil.");
break;
}
case "shadow of evil":
{
this.Say("A most foul traitor. Once you have the first two parts, challenge him for the third! He dwells beyond the void in the Shrine.");
break;
}
case "shrine":
{
this.Say("Find your way there through the dungeon. You must use a teleporter to reach it.");
break;
}
}
}
base.OnSpeech(e);
}
}
}
}