Files
abysmal-isle/Scripts/Mobiles/Normal/Scorpion.cs
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

114 lines
2.8 KiB
C#

using System;
using Server.Items;
namespace Server.Mobiles
{
[CorpseName("a scorpion corpse")]
public class Scorpion : BaseCreature
{
[Constructable]
public Scorpion()
: base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
{
Name = "a scorpion";
Body = 48;
BaseSoundID = 397;
SetStr(73, 115);
SetDex(76, 95);
SetInt(16, 30);
SetHits(50, 63);
SetMana(0);
SetDamage(5, 10);
SetDamageType(ResistanceType.Physical, 60);
SetDamageType(ResistanceType.Poison, 40);
SetResistance(ResistanceType.Physical, 20, 25);
SetResistance(ResistanceType.Fire, 10, 15);
SetResistance(ResistanceType.Cold, 20, 25);
SetResistance(ResistanceType.Poison, 40, 50);
SetResistance(ResistanceType.Energy, 10, 15);
SetSkill(SkillName.Poisoning, 80.1, 100.0);
SetSkill(SkillName.MagicResist, 30.1, 35.0);
SetSkill(SkillName.Tactics, 60.3, 75.0);
SetSkill(SkillName.Wrestling, 50.3, 65.0);
Fame = 2000;
Karma = -2000;
VirtualArmor = 28;
Tamable = true;
ControlSlots = 1;
MinTameSkill = 47.1;
PackItem(new LesserPoisonPotion());
}
public Scorpion(Serial serial)
: base(serial)
{
}
public override int Meat
{
get
{
return 1;
}
}
public override FoodType FavoriteFood
{
get
{
return FoodType.Meat;
}
}
public override PackInstinct PackInstinct
{
get
{
return PackInstinct.Arachnid;
}
}
public override Poison PoisonImmune
{
get
{
return Poison.Greater;
}
}
public override Poison HitPoison
{
get
{
return (0.8 >= Utility.RandomDouble() ? Poison.Greater : Poison.Deadly);
}
}
public override void GenerateLoot()
{
AddLoot(LootPack.Meager);
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)1);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
if (version == 0 && (AbilityProfile == null || AbilityProfile.MagicalAbility == MagicalAbility.None))
{
SetMagicalAbility(MagicalAbility.Poisoning);
}
}
}
}