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

111 lines
2.4 KiB
C#

using System.Collections.Generic;
using System;
using System.Collections;
using Server.Items;
using Server.Targeting;
using Server.ContextMenus;
using Server.Gumps;
using Server.Misc;
using Server.Network;
namespace Server.Mobiles
{
[CorpseName("Corpse of Gaïa")]
public class Gaia : BaseCreature
{
public virtual bool IsInvulnerable { get { return true; } }
[Constructable]
public Gaia()
: base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
{
Name = "Gaia";
Title = "Goddess of the Earth";
Body = 14;
BaseSoundID = 268;
CantWalk = true;
Blessed = true;
}
public Gaia(Serial serial)
: base(serial)
{
}
public override void GetContextMenuEntries(Mobile from, List<ContextMenuEntry> list)
{
base.GetContextMenuEntries(from, list);
list.Add(new GaiaEntry(from, this));
}
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();
}
public class GaiaEntry : ContextMenuEntry
{
private Mobile m_Mobile;
private Mobile m_Giver;
public GaiaEntry(Mobile from, Mobile giver)
: base(6146, 3)
{
m_Mobile = from;
m_Giver = giver;
}
}
public override bool HandlesOnSpeech(Mobile from)
{
base.HandlesOnSpeech(from);
return true;
}
public override void OnSpeech(SpeechEventArgs e)
{
bool isMatch = false;
Mobile from = e.Mobile;
string keyword = this.Name + " fire";
if (keyword != null && e.Speech.ToLower().IndexOf(keyword.ToLower()) >= 0)
{
isMatch = true;
if (!isMatch)
return;
from.SendGump(new ElementQuestGump7(from));
from.AddToBackpack(new ElementTerre());
e.Handled = true;
}
base.OnSpeech(e);
}
}
}