Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Engines.MyrmidexInvasion;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName("a myrmidex corpse")]
|
||||
public class DescicatedMyrmidexLarvae : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public DescicatedMyrmidexLarvae()
|
||||
: base(AIType.AI_Melee, FightMode.Closest, 10, 1, .2, .4)
|
||||
{
|
||||
Name = "a descicated myrmidex larvae";
|
||||
Hue = 2949;
|
||||
|
||||
Body = 1293;
|
||||
BaseSoundID = 959;
|
||||
|
||||
SetStr(350, 450);
|
||||
SetDex(80, 95);
|
||||
SetInt(15, 25);
|
||||
|
||||
SetDamage( 5, 10 );
|
||||
|
||||
SetHits(446, 588);
|
||||
SetMana(20, 50);
|
||||
|
||||
SetResistance( ResistanceType.Physical, 20, 25 );
|
||||
SetResistance( ResistanceType.Fire, 10, 20 );
|
||||
SetResistance( ResistanceType.Cold, 15, 25 );
|
||||
SetResistance( ResistanceType.Poison, 40, 50 );
|
||||
SetResistance( ResistanceType.Energy, 10, 20 );
|
||||
|
||||
SetDamageType( ResistanceType.Physical, 60 );
|
||||
SetDamageType( ResistanceType.Poison, 40 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 30.1, 43.5 );
|
||||
SetSkill( SkillName.Tactics, 60, 70 );
|
||||
SetSkill( SkillName.Wrestling, 55, 60 );
|
||||
SetSkill(SkillName.Poisoning, 80, 100);
|
||||
SetSkill(SkillName.DetectHidden, 30, 40);
|
||||
|
||||
PackGold(20, 40);
|
||||
|
||||
Fame = 2500;
|
||||
Karma = -2500;
|
||||
}
|
||||
|
||||
public override Poison HitPoison{ get{ return Poison.Lesser; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lesser; } }
|
||||
|
||||
public DescicatedMyrmidexLarvae(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Gumps;
|
||||
using System.Collections.Generic;
|
||||
using Server.ContextMenus;
|
||||
using Server.Engines.Points;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Engines.TreasuresOfKotlCity
|
||||
{
|
||||
public class Hal : BaseTurnInMobile
|
||||
{
|
||||
public override int TitleLocalization { get { return 1154520; } } // Click a minor artifact to turn in for reward points.
|
||||
public override int CancelLocalization { get { return 1156903; } } // Bring me items of the Kotl and I will reward you with valuable items.
|
||||
public override int TurnInLocalization { get { return 1155592; } } // Turn In Artifacts of the Kotl
|
||||
|
||||
|
||||
[Constructable]
|
||||
public Hal() : base("the Researcher")
|
||||
{
|
||||
}
|
||||
|
||||
public override void InitBody()
|
||||
{
|
||||
base.InitBody();
|
||||
|
||||
Name = "Hal";
|
||||
|
||||
SpeechHue = 0x3B2;
|
||||
Hue = Utility.RandomSkinHue();
|
||||
Body = 0x190;
|
||||
}
|
||||
|
||||
public override void InitOutfit()
|
||||
{
|
||||
SetWearable(new FancyShirt(), 1255);
|
||||
SetWearable(new JinBaori(), 2722);
|
||||
SetWearable(new Kilt(), 2012);
|
||||
SetWearable(new ThighBoots(), 1908);
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
{
|
||||
base.GetProperties(list);
|
||||
list.Add(1157038); // Artifacts of the Kotl City Trader
|
||||
}
|
||||
|
||||
private DateTime _NextSpeak;
|
||||
|
||||
public override void OnMovement(Mobile m, Point3D oldLocation)
|
||||
{
|
||||
base.OnMovement(m, oldLocation);
|
||||
|
||||
if (_NextSpeak < DateTime.UtcNow)
|
||||
{
|
||||
SayTo(m, 1156903); // Bring me items of the Kotl and I will reward you with valuable items.
|
||||
_NextSpeak = DateTime.UtcNow + TimeSpan.FromSeconds(25);
|
||||
}
|
||||
}
|
||||
|
||||
public override void AwardPoints(PlayerMobile pm, Item item, int amount)
|
||||
{
|
||||
PointsSystem.TreasuresOfKotlCity.AwardPoints(pm, amount);
|
||||
}
|
||||
|
||||
public override bool IsRedeemableItem(Item item)
|
||||
{
|
||||
return item is ICombatEquipment && ((ICombatEquipment)item).ReforgedSuffix == ReforgedSuffix.Kotl;
|
||||
}
|
||||
|
||||
public override void SendRewardGump(Mobile m)
|
||||
{
|
||||
if (m.Player && m.CheckAlive())
|
||||
m.SendGump(new KotlCityRewardGump(this, m as PlayerMobile));
|
||||
}
|
||||
|
||||
public Hal(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Engines.MyrmidexInvasion;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName("a kotl warrior corpse")]
|
||||
public class SpectralKotlWarrior : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public SpectralKotlWarrior(bool weak)
|
||||
: base(AIType.AI_Mage, FightMode.Closest, 10, 1, .2, .4)
|
||||
{
|
||||
Name = "a spectral kotl warrior";
|
||||
|
||||
Body = 0x24;
|
||||
BaseSoundID = 417;
|
||||
Hue = 2951;
|
||||
|
||||
SetStr(500, 600);
|
||||
SetDex(82, 95);
|
||||
SetInt(130, 140);
|
||||
SetMana(40, 50);
|
||||
|
||||
SetDamage(18, 22);
|
||||
|
||||
if (weak)
|
||||
{
|
||||
SetHits(1200, 1400);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 1, 10);
|
||||
SetResistance(ResistanceType.Fire, 1, 10);
|
||||
SetResistance(ResistanceType.Cold, 1, 10);
|
||||
SetResistance(ResistanceType.Poison, 8, 10);
|
||||
SetResistance(ResistanceType.Energy, 5, 10);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetHits(330, 360);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 40, 50);
|
||||
SetResistance(ResistanceType.Fire, 30, 40);
|
||||
SetResistance(ResistanceType.Cold, 30, 40);
|
||||
SetResistance(ResistanceType.Poison, 90, 100);
|
||||
SetResistance(ResistanceType.Energy, 80, 90);
|
||||
}
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 50);
|
||||
SetDamageType(ResistanceType.Poison, 50);
|
||||
|
||||
SetSkill(SkillName.Wrestling, 90, 100);
|
||||
SetSkill(SkillName.Tactics, 90, 100);
|
||||
SetSkill(SkillName.MagicResist, 70, 80);
|
||||
SetSkill(SkillName.Poisoning, 70, 80);
|
||||
SetSkill(SkillName.Magery, 80, 90);
|
||||
SetSkill(SkillName.EvalInt, 70, 80);
|
||||
|
||||
Fame = 16000;
|
||||
Karma = -16000;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
this.AddLoot(LootPack.Rich, 2);
|
||||
}
|
||||
|
||||
public override Poison HitPoison { get { return Poison.Deadly; } }
|
||||
public override Poison PoisonImmune { get { return Poison.Deadly; } }
|
||||
|
||||
public override bool IsEnemy(Mobile m)
|
||||
{
|
||||
if (m is SpectralMyrmidexWarrior)
|
||||
return true;
|
||||
|
||||
return base.IsEnemy(m);
|
||||
}
|
||||
|
||||
public SpectralKotlWarrior(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Engines.MyrmidexInvasion;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName("a myrmidex corpse")]
|
||||
public class SpectralMyrmidexWarrior : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public SpectralMyrmidexWarrior(bool weak)
|
||||
: base(AIType.AI_Mage, FightMode.Closest, 10, 1, .2, .4)
|
||||
{
|
||||
Name = "a spectral myrmidex warrior";
|
||||
|
||||
Body = 1403;
|
||||
BaseSoundID = 959;
|
||||
Hue = 2951;
|
||||
|
||||
SetStr(500, 600);
|
||||
SetDex(82, 95);
|
||||
SetInt(130, 140);
|
||||
SetMana(40, 50);
|
||||
|
||||
SetDamage(18, 22);
|
||||
|
||||
if (weak)
|
||||
{
|
||||
SetHits(1200, 1400);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 1, 10);
|
||||
SetResistance(ResistanceType.Fire, 1, 10);
|
||||
SetResistance(ResistanceType.Cold, 1, 10);
|
||||
SetResistance(ResistanceType.Poison, 8, 10);
|
||||
SetResistance(ResistanceType.Energy, 5, 10);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetHits(330, 360);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 40, 50);
|
||||
SetResistance(ResistanceType.Fire, 30, 40);
|
||||
SetResistance(ResistanceType.Cold, 30, 40);
|
||||
SetResistance(ResistanceType.Poison, 90, 100);
|
||||
SetResistance(ResistanceType.Energy, 80, 90);
|
||||
}
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 50);
|
||||
SetDamageType(ResistanceType.Poison, 50);
|
||||
|
||||
SetSkill(SkillName.Wrestling, 90, 100);
|
||||
SetSkill(SkillName.Tactics, 90, 100);
|
||||
SetSkill(SkillName.MagicResist, 70, 80);
|
||||
SetSkill(SkillName.Poisoning, 70, 80);
|
||||
SetSkill(SkillName.Magery, 80, 90);
|
||||
SetSkill(SkillName.EvalInt, 70, 80);
|
||||
|
||||
Fame = 16000;
|
||||
Karma = -16000;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
this.AddLoot(LootPack.Rich, 2);
|
||||
}
|
||||
|
||||
public override Poison HitPoison { get { return Poison.Deadly; } }
|
||||
public override Poison PoisonImmune { get { return Poison.Deadly; } }
|
||||
|
||||
public override bool IsEnemy(Mobile m)
|
||||
{
|
||||
if (m is SpectralKotlWarrior)
|
||||
return true;
|
||||
|
||||
return base.IsEnemy(m);
|
||||
}
|
||||
|
||||
public SpectralMyrmidexWarrior(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user