servuo/Scripts/Mobiles/Normal/Dolphin.cs
TrueUO 1c7f53a414
OCT17 (#4887)
* OCT17

Minor gump cleanup and XML cleanup.

* Improvements

- Skill Gain is no longer redundantly checked against the same values inside of XMLSpawner.
- AI_Animal (which was not used and just defaulted to AI_Melee) along with AI_Beserk, AI_Predator, and AI_Thief have been safely removed.
- ItemFlags.cs has been moved from XMLSpawner to MISC.
- Removed some misc double calls.

* Needed for recent AI fix.

* Item Fix
2020-10-21 10:15:47 -07:00

81 lines
2.1 KiB
C#

namespace Server.Mobiles
{
[CorpseName("a dolphin corpse")]
public class Dolphin : BaseCreature
{
[Constructable]
public Dolphin()
: base(AIType.AI_Melee, FightMode.Aggressor, 10, 1, 0.2, 0.4)
{
Name = "a dolphin";
Body = 0x97;
BaseSoundID = 0x8A;
SetStr(21, 49);
SetDex(66, 85);
SetInt(96, 110);
SetHits(15, 27);
SetDamage(3, 6);
SetDamageType(ResistanceType.Physical, 100);
SetResistance(ResistanceType.Physical, 15, 20);
SetResistance(ResistanceType.Fire, 70, 80);
SetResistance(ResistanceType.Cold, 25, 30);
SetResistance(ResistanceType.Poison, 10, 15);
SetResistance(ResistanceType.Energy, 10, 15);
SetSkill(SkillName.MagicResist, 15.1, 20.0);
SetSkill(SkillName.Tactics, 19.2, 29.0);
SetSkill(SkillName.Wrestling, 19.2, 29.0);
Fame = 500;
Karma = 2000;
CanSwim = true;
CantWalk = true;
}
public Dolphin(Serial serial)
: base(serial)
{
}
public override int Meat => 1;
public override void OnDoubleClick(Mobile from)
{
if (from.AccessLevel >= AccessLevel.GameMaster)
Jump();
}
public virtual void Jump()
{
if (Utility.RandomBool())
Animate(3, 16, 1, true, false, 0);
else
Animate(4, 20, 1, true, false, 0);
}
public override void OnThink()
{
if (Utility.RandomDouble() < .005) // slim chance to jump
Jump();
base.OnThink();
}
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();
}
}
}