#W# Initial Commit: Avatars Conquest
This commit is contained in:
commit
8eae46895e
7512 changed files with 416187 additions and 0 deletions
91
Scripts/Mobiles/Bugs/AntLion.cs
Normal file
91
Scripts/Mobiles/Bugs/AntLion.cs
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "an ant lion corpse" )]
|
||||
public class AntLion : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public AntLion() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "an ant lion";
|
||||
Body = 11;
|
||||
BaseSoundID = 1006;
|
||||
|
||||
SetStr( 296, 320 );
|
||||
SetDex( 81, 105 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 151, 162 );
|
||||
|
||||
SetDamage( 7, 21 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 70.0 );
|
||||
SetSkill( SkillName.Tactics, 90.0 );
|
||||
SetSkill( SkillName.HandToHand, 90.0 );
|
||||
|
||||
Fame = 4500;
|
||||
Karma = -4500;
|
||||
|
||||
VirtualArmor = 45;
|
||||
|
||||
PackItem( new Bone( 3 ) );
|
||||
|
||||
Item orepile = new IronOre();
|
||||
orepile.Amount = Utility.RandomMinMax(10, 100);
|
||||
orepile.ItemID = 0x19B9;
|
||||
PackItem(orepile);
|
||||
|
||||
// TODO: skeleton
|
||||
}
|
||||
|
||||
public override int GetAngerSound()
|
||||
{
|
||||
return 0x5A;
|
||||
}
|
||||
|
||||
public override int GetIdleSound()
|
||||
{
|
||||
return 0x5A;
|
||||
}
|
||||
|
||||
public override int GetAttackSound()
|
||||
{
|
||||
return 0x164;
|
||||
}
|
||||
|
||||
public override int GetHurtSound()
|
||||
{
|
||||
return 0x187;
|
||||
}
|
||||
|
||||
public override int GetDeathSound()
|
||||
{
|
||||
return 0x1BA;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average, 2 );
|
||||
}
|
||||
|
||||
public AntLion( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
61
Scripts/Mobiles/Bugs/AntaurLord.cs
Normal file
61
Scripts/Mobiles/Bugs/AntaurLord.cs
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "an antaur corpse" )]
|
||||
public class AntaurLord : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public AntaurLord() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "an antaur lord";
|
||||
Body = 314;
|
||||
BaseSoundID = 0x4F0;
|
||||
|
||||
SetStr( 588, 660 );
|
||||
SetDex( 303, 375 );
|
||||
SetInt( 108, 180 );
|
||||
|
||||
SetHits( 288, 321 );
|
||||
|
||||
SetDamage( 9, 30 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 90.0, 120.0 );
|
||||
SetSkill( SkillName.Tactics, 90.0, 120.0 );
|
||||
SetSkill( SkillName.HandToHand, 90.0, 120.0 );
|
||||
|
||||
Fame = 9000;
|
||||
Karma = -9000;
|
||||
|
||||
VirtualArmor = 55;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.FilthyRich );
|
||||
AddLoot( LootPack.MedPotions );
|
||||
AddLoot( LootPack.HighPotions );
|
||||
AddLoot( LootPack.Gems, 3 );
|
||||
}
|
||||
|
||||
public AntaurLord( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
Hue = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
55
Scripts/Mobiles/Bugs/AntaurQueen.cs
Normal file
55
Scripts/Mobiles/Bugs/AntaurQueen.cs
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "an antaur corpse" )]
|
||||
public class AntaurQueen : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public AntaurQueen() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "an antaur queen";
|
||||
Body = 179;
|
||||
BaseSoundID = 0x4F0;
|
||||
|
||||
SetStr( 296, 320 );
|
||||
SetDex( 121, 145 );
|
||||
SetInt( 76, 100 );
|
||||
|
||||
SetHits( 151, 162 );
|
||||
|
||||
SetDamage( 10, 15 );
|
||||
|
||||
SetSkill( SkillName.Concentration, 70.1, 85.0 );
|
||||
SetSkill( SkillName.Magery, 70.1, 85.0 );
|
||||
SetSkill( SkillName.MagicResist, 60.1, 75.0 );
|
||||
SetSkill( SkillName.Tactics, 80.1, 90.0 );
|
||||
SetSkill( SkillName.HandToHand, 70.1, 90.0 );
|
||||
|
||||
Fame = 4500;
|
||||
Karma = -4500;
|
||||
|
||||
VirtualArmor = 45;
|
||||
}
|
||||
|
||||
public AntaurQueen( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
Hue = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
58
Scripts/Mobiles/Bugs/AntaurSoldier.cs
Normal file
58
Scripts/Mobiles/Bugs/AntaurSoldier.cs
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "an antaur corpse" )]
|
||||
public class AntaurSoldier : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public AntaurSoldier() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "an antaur soldier";
|
||||
Body = 178;
|
||||
BaseSoundID = 0x4F0;
|
||||
|
||||
SetStr( 196, 220 );
|
||||
SetDex( 101, 125 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 96, 107 );
|
||||
|
||||
SetDamage( 5, 15 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 60.0 );
|
||||
SetSkill( SkillName.Tactics, 80.0 );
|
||||
SetSkill( SkillName.HandToHand, 80.0 );
|
||||
|
||||
Fame = 3000;
|
||||
Karma = -3000;
|
||||
|
||||
VirtualArmor = 35;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public AntaurSoldier( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
Hue = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
58
Scripts/Mobiles/Bugs/AntaurWorker.cs
Normal file
58
Scripts/Mobiles/Bugs/AntaurWorker.cs
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "an antaur corpse" )]
|
||||
public class AntaurWorker : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public AntaurWorker() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "an antaur worker";
|
||||
Body = 177;
|
||||
BaseSoundID = 0x57F;
|
||||
|
||||
SetStr( 96, 120 );
|
||||
SetDex( 81, 105 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 58, 72 );
|
||||
|
||||
SetDamage( 5, 7 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 60.0 );
|
||||
SetSkill( SkillName.Tactics, 65.0 );
|
||||
SetSkill( SkillName.HandToHand, 60.0 );
|
||||
|
||||
Fame = 1500;
|
||||
Karma = -1500;
|
||||
|
||||
VirtualArmor = 28;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public AntaurWorker( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
Hue = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
78
Scripts/Mobiles/Bugs/ArcaneScarab.cs
Normal file
78
Scripts/Mobiles/Bugs/ArcaneScarab.cs
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a beetle corpse" )]
|
||||
public class ArcaneScarab : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public ArcaneScarab() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "an arcane scarab";
|
||||
Body = 68;
|
||||
BaseSoundID = 0x4E5;
|
||||
|
||||
SetStr( 401, 460 );
|
||||
SetDex( 121, 170 );
|
||||
SetInt( 376, 450 );
|
||||
|
||||
SetHits( 301, 360 );
|
||||
|
||||
SetDamage( 15, 22 );
|
||||
|
||||
SetSkill( SkillName.Concentration, 100.1, 125.0 );
|
||||
SetSkill( SkillName.Magery, 100.1, 110.0 );
|
||||
SetSkill( SkillName.Poisoning, 120.1, 140.0 );
|
||||
SetSkill( SkillName.MagicResist, 95.1, 110.0 );
|
||||
SetSkill( SkillName.Tactics, 78.1, 93.0 );
|
||||
SetSkill( SkillName.HandToHand, 70.1, 77.5 );
|
||||
|
||||
Fame = 15000;
|
||||
Karma = -15000;
|
||||
VirtualArmor = 48;
|
||||
|
||||
switch ( Utility.Random( 10 ))
|
||||
{
|
||||
case 0: PackItem( new LeftArm() ); break;
|
||||
case 1: PackItem( new RightArm() ); break;
|
||||
case 2: PackItem( new Torso() ); break;
|
||||
case 3: PackItem( new Bone() ); break;
|
||||
case 4: PackItem( new RibCage() ); break;
|
||||
case 5: PackItem( new RibCage() ); break;
|
||||
case 6: PackItem( new BonePile() ); break;
|
||||
case 7: PackItem( new BonePile() ); break;
|
||||
case 8: PackItem( new BonePile() ); break;
|
||||
case 9: PackItem( new BonePile() ); break;
|
||||
}
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.FilthyRich, 2 );
|
||||
AddLoot( LootPack.MedScrolls, 1 );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Greater; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Greater; } }
|
||||
|
||||
public ArcaneScarab( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
63
Scripts/Mobiles/Bugs/Beetle.cs
Normal file
63
Scripts/Mobiles/Bugs/Beetle.cs
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
using Server.ContextMenus;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a beetle corpse" )]
|
||||
public class Beetle : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public Beetle() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a giant beetle";
|
||||
Body = 254;
|
||||
BaseSoundID = 0x4E5;
|
||||
|
||||
SetStr( 296, 320 );
|
||||
SetDex( 81, 105 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 180, 220 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 7, 16 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 60, 80.0 );
|
||||
SetSkill( SkillName.Tactics, 80, 100.0 );
|
||||
SetSkill( SkillName.HandToHand, 80, 100.0 );
|
||||
|
||||
Fame = 4000;
|
||||
Karma = -4000;
|
||||
|
||||
VirtualArmor = 24;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public Beetle( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
88
Scripts/Mobiles/Bugs/BloodSpider.cs
Normal file
88
Scripts/Mobiles/Bugs/BloodSpider.cs
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using System.Collections;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a spider corpse" )]
|
||||
public class BloodSpider : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public BloodSpider() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a blood spider";
|
||||
Body = 193;
|
||||
BaseSoundID = 0x388;
|
||||
|
||||
SetStr( 76, 100 );
|
||||
SetDex( 96, 115 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 46, 60 );
|
||||
|
||||
SetDamage( 5, 17 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 60.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 45.1, 60.0 );
|
||||
SetSkill( SkillName.Tactics, 65.1, 80.0 );
|
||||
SetSkill( SkillName.HandToHand, 70.1, 85.0 );
|
||||
|
||||
Fame = 4000;
|
||||
Karma = -4000;
|
||||
|
||||
VirtualArmor = 24;
|
||||
|
||||
PackItem( new SpidersSilk( 5 ) );
|
||||
PackItem( new LesserPoisonPotion() );
|
||||
PackItem( new LesserPoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Deadly; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Deadly; } }
|
||||
|
||||
public void DrainBlood( Mobile m )
|
||||
{
|
||||
DoHarmful( m );
|
||||
new Blood().MoveToWorld( m.Location, m.Map );
|
||||
m.SendMessage( "The creature feeds on your blood!" );
|
||||
int toDrain = Utility.RandomMinMax( 2, 10 );
|
||||
m.PlaySound( 0x23F );
|
||||
Hits += toDrain;
|
||||
m.Damage( toDrain, this );
|
||||
}
|
||||
|
||||
public override void OnGaveMeleeAttack( Mobile defender )
|
||||
{
|
||||
base.OnGaveMeleeAttack( defender );
|
||||
DrainBlood( defender );
|
||||
}
|
||||
|
||||
public override void OnGotMeleeAttack( Mobile attacker )
|
||||
{
|
||||
base.OnGotMeleeAttack( attacker );
|
||||
DrainBlood( attacker );
|
||||
}
|
||||
|
||||
public BloodSpider( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
59
Scripts/Mobiles/Bugs/CarcassWorm.cs
Normal file
59
Scripts/Mobiles/Bugs/CarcassWorm.cs
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a worm corpse" )]
|
||||
public class CarcassWorm : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public CarcassWorm () : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a carcass worm";
|
||||
Body = 143;
|
||||
BaseSoundID = 0x382;
|
||||
AnimationMod = 6;
|
||||
|
||||
SetStr( 38, 52 );
|
||||
SetDex( 12, 17 );
|
||||
SetInt( 1, 5 );
|
||||
|
||||
SetHits( 19, 25 );
|
||||
|
||||
SetDamage( 2, 8 );
|
||||
|
||||
SetSkill( SkillName.Tactics, 80.1, 90.0 );
|
||||
SetSkill( SkillName.HandToHand, 80.1, 90.0 );
|
||||
|
||||
Fame = 450;
|
||||
Karma = -450;
|
||||
|
||||
VirtualArmor = 12;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Poor );
|
||||
}
|
||||
|
||||
public override int Meat{ get{ return 4; } }
|
||||
|
||||
public CarcassWorm( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
65
Scripts/Mobiles/Bugs/DeadlyScorpion.cs
Normal file
65
Scripts/Mobiles/Bugs/DeadlyScorpion.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a scorpion corpse" )]
|
||||
public class DeadlyScorpion : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public DeadlyScorpion() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a scorpion";
|
||||
Body = 147;
|
||||
BaseSoundID = 397;
|
||||
|
||||
SetStr( 103, 145 );
|
||||
SetDex( 76, 95 );
|
||||
SetInt( 16, 30 );
|
||||
|
||||
SetHits( 80, 93 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 9, 14 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 80.1, 100.0 );
|
||||
SetSkill( SkillName.MagicResist, 30.1, 35.0 );
|
||||
SetSkill( SkillName.Tactics, 80.3, 95.0 );
|
||||
SetSkill( SkillName.HandToHand, 60.3, 98.0 );
|
||||
|
||||
Fame = 4000;
|
||||
Karma = -4000;
|
||||
|
||||
VirtualArmor = 48;
|
||||
|
||||
PackItem( new DeadlyPoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override int Meat{ get{ return 1; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison HitPoison{ get{ return (0.8 >= Utility.RandomDouble() ? Poison.Deadly : Poison.Lethal); } }
|
||||
|
||||
public DeadlyScorpion( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
67
Scripts/Mobiles/Bugs/DreadSpider.cs
Normal file
67
Scripts/Mobiles/Bugs/DreadSpider.cs
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a spider corpse" )]
|
||||
public class DreadSpider : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public DreadSpider () : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a dread spider";
|
||||
Body = 27;
|
||||
BaseSoundID = 1170;
|
||||
|
||||
SetStr( 196, 220 );
|
||||
SetDex( 126, 145 );
|
||||
SetInt( 286, 310 );
|
||||
|
||||
SetHits( 118, 132 );
|
||||
|
||||
SetDamage( 5, 17 );
|
||||
|
||||
SetSkill( SkillName.Concentration, 65.1, 80.0 );
|
||||
SetSkill( SkillName.Magery, 65.1, 80.0 );
|
||||
SetSkill( SkillName.Meditation, 65.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 45.1, 60.0 );
|
||||
SetSkill( SkillName.Tactics, 55.1, 70.0 );
|
||||
SetSkill( SkillName.HandToHand, 60.1, 75.0 );
|
||||
|
||||
Fame = 5000;
|
||||
Karma = -5000;
|
||||
|
||||
VirtualArmor = 36;
|
||||
|
||||
PackItem( new SpidersSilk( 8 ) );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.FilthyRich );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Lethal; } }
|
||||
|
||||
public DreadSpider( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
|
||||
if ( BaseSoundID == 263 )
|
||||
BaseSoundID = 1170;
|
||||
}
|
||||
}
|
||||
}
|
||||
65
Scripts/Mobiles/Bugs/FireBeetle.cs
Normal file
65
Scripts/Mobiles/Bugs/FireBeetle.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
using Server.ContextMenus;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a beetle corpse" )]
|
||||
public class FireBeetle : BaseCreature
|
||||
{
|
||||
public override bool HasBreath{ get{ return true; } } // fire breath enabled
|
||||
|
||||
[Constructable]
|
||||
public FireBeetle() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a fire beetle";
|
||||
Body = 240;
|
||||
BaseSoundID = 0x4E5;
|
||||
|
||||
SetStr( 296, 320 );
|
||||
SetDex( 81, 105 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 180, 220 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 7, 16 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 60, 80.0 );
|
||||
SetSkill( SkillName.Tactics, 80, 100.0 );
|
||||
SetSkill( SkillName.HandToHand, 80, 100.0 );
|
||||
|
||||
Fame = 4000;
|
||||
Karma = -4000;
|
||||
|
||||
VirtualArmor = 24;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public FireBeetle( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
66
Scripts/Mobiles/Bugs/FlameCrawler.cs
Normal file
66
Scripts/Mobiles/Bugs/FlameCrawler.cs
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a insect corpse" )]
|
||||
public class FlameCrawler : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public FlameCrawler() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a flame crawler";
|
||||
Body = 158;
|
||||
BaseSoundID = 397;
|
||||
|
||||
SetStr( 103, 145 );
|
||||
SetDex( 76, 95 );
|
||||
SetInt( 16, 30 );
|
||||
|
||||
SetHits( 80, 93 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 9, 14 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 80.1, 100.0 );
|
||||
SetSkill( SkillName.MagicResist, 30.1, 35.0 );
|
||||
SetSkill( SkillName.Tactics, 80.3, 95.0 );
|
||||
SetSkill( SkillName.HandToHand, 60.3, 98.0 );
|
||||
|
||||
Fame = 4000;
|
||||
Karma = -4000;
|
||||
|
||||
VirtualArmor = 48;
|
||||
|
||||
PackItem( new DeadlyPoisonPotion() );
|
||||
AddItem( new LightSource() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override int Meat{ get{ return 1; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison HitPoison{ get{ return (0.8 >= Utility.RandomDouble() ? Poison.Deadly : Poison.Lethal); } }
|
||||
|
||||
public FlameCrawler( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
61
Scripts/Mobiles/Bugs/FrostSpider.cs
Normal file
61
Scripts/Mobiles/Bugs/FrostSpider.cs
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a spider corpse" )]
|
||||
public class FrostSpider : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public FrostSpider() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a frost spider";
|
||||
Body = 96;
|
||||
BaseSoundID = 0x388;
|
||||
|
||||
SetStr( 76, 100 );
|
||||
SetDex( 126, 145 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 46, 60 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 6, 16 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 25.1, 40.0 );
|
||||
SetSkill( SkillName.Tactics, 35.1, 50.0 );
|
||||
SetSkill( SkillName.HandToHand, 50.1, 65.0 );
|
||||
|
||||
Fame = 775;
|
||||
Karma = -775;
|
||||
|
||||
VirtualArmor = 28;
|
||||
|
||||
PackItem( new SpidersSilk( 7 ) );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public FrostSpider( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
|
||||
if ( BaseSoundID == 387 )
|
||||
BaseSoundID = 0x388;
|
||||
}
|
||||
}
|
||||
}
|
||||
65
Scripts/Mobiles/Bugs/GiantBlackWidow.cs
Normal file
65
Scripts/Mobiles/Bugs/GiantBlackWidow.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using System.Collections;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a spider corpse" )]
|
||||
public class GiantBlackWidow : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public GiantBlackWidow() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a giant black widow";
|
||||
Body = 19;
|
||||
BaseSoundID = 0x388; // TODO: validate
|
||||
|
||||
SetStr( 76, 100 );
|
||||
SetDex( 96, 115 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 46, 60 );
|
||||
|
||||
SetDamage( 5, 17 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 60.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 45.1, 60.0 );
|
||||
SetSkill( SkillName.Tactics, 65.1, 80.0 );
|
||||
SetSkill( SkillName.HandToHand, 70.1, 85.0 );
|
||||
|
||||
Fame = 3500;
|
||||
Karma = -3500;
|
||||
|
||||
VirtualArmor = 24;
|
||||
|
||||
PackItem( new SpidersSilk( 5 ) );
|
||||
PackItem( new LesserPoisonPotion() );
|
||||
PackItem( new LesserPoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Deadly; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Deadly; } }
|
||||
|
||||
public GiantBlackWidow( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
66
Scripts/Mobiles/Bugs/GiantScarab.cs
Normal file
66
Scripts/Mobiles/Bugs/GiantScarab.cs
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
using Server.ContextMenus;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a scarab corpse" )]
|
||||
public class GiantScarab : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public GiantScarab() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a giant scarab";
|
||||
Body = 263;
|
||||
BaseSoundID = 0x4F0;
|
||||
AnimationMod = 2;
|
||||
|
||||
SetStr( 296, 320 );
|
||||
SetDex( 81, 105 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 175, 200 );
|
||||
|
||||
SetDamage( 7, 20 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 60.0 );
|
||||
SetSkill( SkillName.Tactics, 90.0 );
|
||||
SetSkill( SkillName.HandToHand, 90.0 );
|
||||
|
||||
Fame = 4500;
|
||||
Karma = -4500;
|
||||
|
||||
VirtualArmor = 24;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Greater; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Greater; } }
|
||||
|
||||
public GiantScarab( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
64
Scripts/Mobiles/Bugs/GiantSpider.cs
Normal file
64
Scripts/Mobiles/Bugs/GiantSpider.cs
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using System.Collections;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a spider corpse" )]
|
||||
public class GiantSpider : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public GiantSpider() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a giant spider";
|
||||
Body = 28;
|
||||
BaseSoundID = 0x388;
|
||||
|
||||
SetStr( 76, 100 );
|
||||
SetDex( 76, 95 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 46, 60 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 5, 13 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 60.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 25.1, 40.0 );
|
||||
SetSkill( SkillName.Tactics, 35.1, 50.0 );
|
||||
SetSkill( SkillName.HandToHand, 50.1, 65.0 );
|
||||
|
||||
Fame = 600;
|
||||
Karma = -600;
|
||||
|
||||
VirtualArmor = 16;
|
||||
|
||||
PackItem( new SpidersSilk( 5 ) );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Poor );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Regular; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Regular; } }
|
||||
|
||||
public GiantSpider( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
64
Scripts/Mobiles/Bugs/GoraxHorned.cs
Normal file
64
Scripts/Mobiles/Bugs/GoraxHorned.cs
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using System.Collections;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a gorax corpse" )]
|
||||
public class GoraxHorned : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public GoraxHorned() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a horned gorax";
|
||||
Body = 194;
|
||||
BaseSoundID = 0x4F0;
|
||||
AnimationMod = 3;
|
||||
|
||||
SetStr( 76, 100 );
|
||||
SetDex( 96, 115 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 46, 60 );
|
||||
|
||||
SetDamage( 5, 17 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 60.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 45.1, 60.0 );
|
||||
SetSkill( SkillName.Tactics, 65.1, 80.0 );
|
||||
SetSkill( SkillName.HandToHand, 70.1, 85.0 );
|
||||
|
||||
Fame = 3500;
|
||||
Karma = -3500;
|
||||
|
||||
VirtualArmor = 24;
|
||||
|
||||
PackItem( new LesserPoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Deadly; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Regular; } }
|
||||
|
||||
public GoraxHorned( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
70
Scripts/Mobiles/Bugs/GoraxSlicer.cs
Normal file
70
Scripts/Mobiles/Bugs/GoraxSlicer.cs
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
using Server.ContextMenus;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a gorax corpse" )]
|
||||
public class GoraxSlicer : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public GoraxSlicer() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a gorax slicer";
|
||||
Body = 195;
|
||||
BaseSoundID = 0x4F0;
|
||||
AnimationMod = 3;
|
||||
|
||||
SetStr( 296, 320 );
|
||||
SetDex( 81, 105 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 196, 230 );
|
||||
|
||||
SetDamage( 7, 20 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 70.1, 90.0 );
|
||||
SetSkill( SkillName.MagicResist, 55.1, 70.0 );
|
||||
SetSkill( SkillName.Tactics, 85.1, 100.0 );
|
||||
SetSkill( SkillName.HandToHand, 90.1, 105.0 );
|
||||
|
||||
Fame = 4500;
|
||||
Karma = -4500;
|
||||
|
||||
VirtualArmor = 32;
|
||||
|
||||
PackItem( new PoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average, 2 );
|
||||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Greater; } }
|
||||
|
||||
public GoraxSlicer( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
63
Scripts/Mobiles/Bugs/IronBeetle.cs
Normal file
63
Scripts/Mobiles/Bugs/IronBeetle.cs
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
using Server.ContextMenus;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a beetle corpse" )]
|
||||
public class IronBeetle : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public IronBeetle() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "an iron beetle";
|
||||
Body = 159;
|
||||
BaseSoundID = 0x4E5;
|
||||
|
||||
SetStr( 444, 480 );
|
||||
SetDex( 122, 158 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 270, 330 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 11, 30 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 90.0, 120.0 );
|
||||
SetSkill( SkillName.Tactics, 120.0, 150.0 );
|
||||
SetSkill( SkillName.HandToHand, 120.0, 150.0 );
|
||||
|
||||
Fame = 6000;
|
||||
Karma = -6000;
|
||||
|
||||
VirtualArmor = 48;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Rich );
|
||||
}
|
||||
|
||||
public IronBeetle( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
65
Scripts/Mobiles/Bugs/Kith.cs
Normal file
65
Scripts/Mobiles/Bugs/Kith.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using System.Collections;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a spider corpse" )]
|
||||
public class Kith : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public Kith() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a kith";
|
||||
Body = 148;
|
||||
BaseSoundID = 0x4F0;
|
||||
|
||||
SetStr( 236, 285 );
|
||||
SetDex( 96, 115 );
|
||||
SetInt( 31, 55 );
|
||||
|
||||
SetHits( 202, 231 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 9, 18 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 60.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 60.3, 105.0 );
|
||||
SetSkill( SkillName.Tactics, 80.1, 100.0 );
|
||||
SetSkill( SkillName.HandToHand, 80.1, 90.0 );
|
||||
|
||||
Fame = 5500;
|
||||
Karma = -5500;
|
||||
|
||||
VirtualArmor = 48;
|
||||
|
||||
PackItem( new SpidersSilk( Utility.RandomMinMax( 20, 35 ) ) );
|
||||
PackItem( new GreaterPoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average, 2 );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Lethal; } }
|
||||
|
||||
public Kith( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
65
Scripts/Mobiles/Bugs/Mantis.cs
Normal file
65
Scripts/Mobiles/Bugs/Mantis.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Spells;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a mantis corpse" )]
|
||||
public class Mantis : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public Mantis() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a mantis";
|
||||
Body = 184;
|
||||
BaseSoundID = 0x4F0;
|
||||
|
||||
SetStr( 166, 215 );
|
||||
SetDex( 96, 145 );
|
||||
SetInt( 41, 65 );
|
||||
|
||||
SetHits( 100, 129 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 7, 17 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 60.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 60.1, 75.0 );
|
||||
SetSkill( SkillName.Tactics, 80.1, 100.0 );
|
||||
SetSkill( SkillName.HandToHand, 80.1, 90.0 );
|
||||
|
||||
Fame = 4000;
|
||||
Karma = -4000;
|
||||
|
||||
VirtualArmor = 30;
|
||||
|
||||
PackItem( new PoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Greater; } }
|
||||
public override Poison HitPoison{ get{ return (0.8 >= Utility.RandomDouble() ? Poison.Lesser : Poison.Regular); } }
|
||||
|
||||
public Mantis( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
65
Scripts/Mobiles/Bugs/SandScorpion.cs
Normal file
65
Scripts/Mobiles/Bugs/SandScorpion.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a scorpion corpse" )]
|
||||
public class SandScorpion : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public SandScorpion() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a scorpion";
|
||||
Body = 186;
|
||||
BaseSoundID = 397;
|
||||
|
||||
SetStr( 73, 115 );
|
||||
SetDex( 76, 95 );
|
||||
SetInt( 16, 30 );
|
||||
|
||||
SetHits( 50, 63 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 5, 10 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 80.1, 100.0 );
|
||||
SetSkill( SkillName.MagicResist, 30.1, 35.0 );
|
||||
SetSkill( SkillName.Tactics, 60.3, 75.0 );
|
||||
SetSkill( SkillName.HandToHand, 50.3, 65.0 );
|
||||
|
||||
Fame = 1900;
|
||||
Karma = -1900;
|
||||
|
||||
VirtualArmor = 28;
|
||||
|
||||
PackItem( new LesserPoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public override int Meat{ get{ return 1; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Greater; } }
|
||||
public override Poison HitPoison{ get{ return (0.8 >= Utility.RandomDouble() ? Poison.Regular : Poison.Greater); } }
|
||||
|
||||
public SandScorpion( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
61
Scripts/Mobiles/Bugs/SandSpider.cs
Normal file
61
Scripts/Mobiles/Bugs/SandSpider.cs
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a spider corpse" )]
|
||||
public class SandSpider : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public SandSpider() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a sand spider";
|
||||
Body = 176;
|
||||
BaseSoundID = 0x388;
|
||||
|
||||
SetStr( 76, 100 );
|
||||
SetDex( 126, 145 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 46, 60 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 6, 16 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 25.1, 40.0 );
|
||||
SetSkill( SkillName.Tactics, 35.1, 50.0 );
|
||||
SetSkill( SkillName.HandToHand, 50.1, 65.0 );
|
||||
|
||||
Fame = 775;
|
||||
Karma = -775;
|
||||
|
||||
VirtualArmor = 28;
|
||||
|
||||
PackItem( new SpidersSilk( 7 ) );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public SandSpider( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
|
||||
if ( BaseSoundID == 387 )
|
||||
BaseSoundID = 0x388;
|
||||
}
|
||||
}
|
||||
}
|
||||
66
Scripts/Mobiles/Bugs/Scarab.cs
Normal file
66
Scripts/Mobiles/Bugs/Scarab.cs
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
using Server.ContextMenus;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a scarab corpse" )]
|
||||
public class Scarab : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public Scarab() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a scarab";
|
||||
Body = 245;
|
||||
BaseSoundID = 0x4F0;
|
||||
AnimationMod = 2;
|
||||
|
||||
SetStr( 206, 280 );
|
||||
SetDex( 81, 105 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 120, 150 );
|
||||
|
||||
SetDamage( 7, 13 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 40.0 );
|
||||
SetSkill( SkillName.Tactics, 70.0 );
|
||||
SetSkill( SkillName.HandToHand, 70.0 );
|
||||
|
||||
Fame = 3000;
|
||||
Karma = -3000;
|
||||
|
||||
VirtualArmor = 12;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Regular; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Regular; } }
|
||||
|
||||
public Scarab( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
65
Scripts/Mobiles/Bugs/Scorpion.cs
Normal file
65
Scripts/Mobiles/Bugs/Scorpion.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
|
||||
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 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 80.1, 100.0 );
|
||||
SetSkill( SkillName.MagicResist, 30.1, 35.0 );
|
||||
SetSkill( SkillName.Tactics, 60.3, 75.0 );
|
||||
SetSkill( SkillName.HandToHand, 50.3, 65.0 );
|
||||
|
||||
Fame = 2000;
|
||||
Karma = -2000;
|
||||
|
||||
VirtualArmor = 28;
|
||||
|
||||
PackItem( new LesserPoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public override int Meat{ get{ return 1; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Greater; } }
|
||||
public override Poison HitPoison{ get{ return (0.8 >= Utility.RandomDouble() ? Poison.Greater : Poison.Deadly); } }
|
||||
|
||||
public Scorpion( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
71
Scripts/Mobiles/Bugs/Shaclaw.cs
Normal file
71
Scripts/Mobiles/Bugs/Shaclaw.cs
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "an insect corpse" )]
|
||||
public class Shaclaw : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public Shaclaw() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a shaclaw";
|
||||
Body = 283;
|
||||
BaseSoundID = 0x4EA;
|
||||
AnimationMod = 1;
|
||||
|
||||
SetStr( 796, 825 );
|
||||
SetDex( 86, 105 );
|
||||
SetInt( 50, 70 );
|
||||
|
||||
SetHits( 478, 495 );
|
||||
|
||||
SetDamage( 16, 22 );
|
||||
|
||||
SetSkill( SkillName.MagicResist, 49.1, 60.0 );
|
||||
SetSkill( SkillName.Tactics, 97.6, 100.0 );
|
||||
SetSkill( SkillName.HandToHand, 90.1, 92.5 );
|
||||
|
||||
Fame = 14000;
|
||||
Karma = -14000;
|
||||
|
||||
VirtualArmor = 60;
|
||||
|
||||
AddItem( new LighterSource() );
|
||||
|
||||
AddItem( new DeadlyPoisonPotion() );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Deadly; } }
|
||||
public override Poison HitPoison{ get{ return (0.8 >= Utility.RandomDouble() ? Poison.Regular : Poison.Greater); } }
|
||||
|
||||
public override int GetDeathSound()
|
||||
{
|
||||
return Utility.RandomList( 0x4EE, 0x4EF );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.FilthyRich, 2 );
|
||||
AddLoot( LootPack.Gems, 8 );
|
||||
}
|
||||
|
||||
public Shaclaw( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
85
Scripts/Mobiles/Bugs/Swarm.cs
Normal file
85
Scripts/Mobiles/Bugs/Swarm.cs
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
using Server.ContextMenus;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "dead bugs" )]
|
||||
public class Swarm : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public Swarm() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a swarm";
|
||||
Body = 256;
|
||||
AnimationMod = 1;
|
||||
|
||||
SetStr( 206, 280 );
|
||||
SetDex( 81, 105 );
|
||||
SetInt( 36, 60 );
|
||||
|
||||
SetHits( 120, 150 );
|
||||
|
||||
SetDamage( 3, 10 );
|
||||
|
||||
SetSkill( SkillName.Tactics, 70.0 );
|
||||
SetSkill( SkillName.HandToHand, 70.0 );
|
||||
|
||||
Fame = 0;
|
||||
Karma = -0;
|
||||
|
||||
VirtualArmor = 12;
|
||||
}
|
||||
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Regular; } }
|
||||
|
||||
public override int GetAngerSound()
|
||||
{
|
||||
return 0x5CB;
|
||||
}
|
||||
|
||||
public override int GetIdleSound()
|
||||
{
|
||||
return 0x5CD;
|
||||
}
|
||||
|
||||
public override int GetAttackSound()
|
||||
{
|
||||
return 0x5CC;
|
||||
}
|
||||
|
||||
public override int GetHurtSound()
|
||||
{
|
||||
return 0x5CB;
|
||||
}
|
||||
|
||||
public override int GetDeathSound()
|
||||
{
|
||||
return 0x5CB;
|
||||
}
|
||||
|
||||
public Swarm( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
public override void Serialize( GenericWriter writer )
|
||||
{
|
||||
base.Serialize( writer );
|
||||
|
||||
writer.Write( (int) 0 ); // version
|
||||
}
|
||||
|
||||
public override void Deserialize( GenericReader reader )
|
||||
{
|
||||
base.Deserialize( reader );
|
||||
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
68
Scripts/Mobiles/Bugs/TerathanAvenger.cs
Normal file
68
Scripts/Mobiles/Bugs/TerathanAvenger.cs
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a terathan avenger corpse" )]
|
||||
public class TerathanAvenger : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public TerathanAvenger() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a terathan avenger";
|
||||
Body = 79;
|
||||
BaseSoundID = 0x24D;
|
||||
|
||||
SetStr( 467, 645 );
|
||||
SetDex( 77, 95 );
|
||||
SetInt( 126, 150 );
|
||||
|
||||
SetHits( 296, 372 );
|
||||
SetMana( 46, 70 );
|
||||
|
||||
SetDamage( 18, 22 );
|
||||
|
||||
SetSkill( SkillName.Concentration, 70.3, 100.0 );
|
||||
SetSkill( SkillName.Magery, 70.3, 100.0 );
|
||||
SetSkill( SkillName.Poisoning, 60.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 65.1, 80.0 );
|
||||
SetSkill( SkillName.Tactics, 90.1, 100.0 );
|
||||
SetSkill( SkillName.HandToHand, 90.1, 100.0 );
|
||||
|
||||
Fame = 15000;
|
||||
Karma = -15000;
|
||||
|
||||
VirtualArmor = 50;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Rich, 2 );
|
||||
AddLoot( LootPack.HighPotions );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Deadly; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Deadly; } }
|
||||
public override int Meat{ get{ return 2; } }
|
||||
|
||||
public TerathanAvenger( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
|
||||
if ( BaseSoundID == 263 )
|
||||
BaseSoundID = 0x24D;
|
||||
}
|
||||
}
|
||||
}
|
||||
67
Scripts/Mobiles/Bugs/TerathanDrone.cs
Normal file
67
Scripts/Mobiles/Bugs/TerathanDrone.cs
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using System.Collections;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a terathan drone corpse" )]
|
||||
public class TerathanDrone : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public TerathanDrone() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a terathan drone";
|
||||
Body = 71;
|
||||
BaseSoundID = 594;
|
||||
|
||||
SetStr( 36, 65 );
|
||||
SetDex( 96, 145 );
|
||||
SetInt( 21, 45 );
|
||||
|
||||
SetHits( 22, 39 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 6, 12 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 40.1, 60.0 );
|
||||
SetSkill( SkillName.MagicResist, 30.1, 45.0 );
|
||||
SetSkill( SkillName.Tactics, 30.1, 50.0 );
|
||||
SetSkill( SkillName.HandToHand, 40.1, 50.0 );
|
||||
|
||||
Fame = 2000;
|
||||
Karma = -2000;
|
||||
|
||||
VirtualArmor = 24;
|
||||
|
||||
PackItem( new SpidersSilk( 2 ) );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Meager );
|
||||
// TODO: weapon?
|
||||
}
|
||||
|
||||
public override int Meat{ get{ return 4; } }
|
||||
|
||||
public TerathanDrone( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
|
||||
if ( BaseSoundID == 589 )
|
||||
BaseSoundID = 594;
|
||||
}
|
||||
}
|
||||
}
|
||||
64
Scripts/Mobiles/Bugs/TerathanMatriarch.cs
Normal file
64
Scripts/Mobiles/Bugs/TerathanMatriarch.cs
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
using System;
|
||||
using Server;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a terathan matriarch corpse" )]
|
||||
public class TerathanMatriarch : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public TerathanMatriarch() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a terathan matriarch";
|
||||
Body = 72;
|
||||
BaseSoundID = 599;
|
||||
|
||||
SetStr( 316, 405 );
|
||||
SetDex( 96, 115 );
|
||||
SetInt( 366, 455 );
|
||||
|
||||
SetHits( 190, 243 );
|
||||
|
||||
SetDamage( 11, 14 );
|
||||
|
||||
SetSkill( SkillName.Concentration, 90.1, 100.0 );
|
||||
SetSkill( SkillName.Magery, 90.1, 100.0 );
|
||||
SetSkill( SkillName.MagicResist, 90.1, 100.0 );
|
||||
SetSkill( SkillName.Tactics, 50.1, 70.0 );
|
||||
SetSkill( SkillName.HandToHand, 60.1, 80.0 );
|
||||
|
||||
Fame = 10000;
|
||||
Karma = -10000;
|
||||
|
||||
PackItem( new SpidersSilk( 5 ) );
|
||||
PackReg( Utility.RandomMinMax( 4, 10 ) );
|
||||
|
||||
VirtualArmor = 32;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Rich );
|
||||
AddLoot( LootPack.Average, 2 );
|
||||
AddLoot( LootPack.MedScrolls, 2 );
|
||||
AddLoot( LootPack.MedPotions );
|
||||
}
|
||||
|
||||
public TerathanMatriarch( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
61
Scripts/Mobiles/Bugs/TerathanWarrior.cs
Normal file
61
Scripts/Mobiles/Bugs/TerathanWarrior.cs
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using System.Collections;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a terathan warrior corpse" )]
|
||||
public class TerathanWarrior : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public TerathanWarrior() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a terathan warrior";
|
||||
Body = 70;
|
||||
BaseSoundID = 589;
|
||||
|
||||
SetStr( 166, 215 );
|
||||
SetDex( 96, 145 );
|
||||
SetInt( 41, 65 );
|
||||
|
||||
SetHits( 100, 129 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 7, 17 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 60.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 60.1, 75.0 );
|
||||
SetSkill( SkillName.Tactics, 80.1, 100.0 );
|
||||
SetSkill( SkillName.HandToHand, 80.1, 90.0 );
|
||||
|
||||
Fame = 4000;
|
||||
Karma = -4000;
|
||||
|
||||
VirtualArmor = 30;
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override int Meat{ get{ return 4; } }
|
||||
|
||||
public TerathanWarrior( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
66
Scripts/Mobiles/Bugs/WidowQueen.cs
Normal file
66
Scripts/Mobiles/Bugs/WidowQueen.cs
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
using System;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
using System.Collections;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
[CorpseName( "a spider corpse" )]
|
||||
public class WidowQueen : BaseCreature
|
||||
{
|
||||
[Constructable]
|
||||
public WidowQueen() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a widow queen";
|
||||
Body = 20;
|
||||
BaseSoundID = 0x388;
|
||||
|
||||
SetStr( 336, 385 );
|
||||
SetDex( 96, 115 );
|
||||
SetInt( 31, 55 );
|
||||
|
||||
SetHits( 202, 231 );
|
||||
SetMana( 0 );
|
||||
|
||||
SetDamage( 7, 23 );
|
||||
|
||||
SetSkill( SkillName.Poisoning, 60.1, 80.0 );
|
||||
SetSkill( SkillName.MagicResist, 60.3, 105.0 );
|
||||
SetSkill( SkillName.Tactics, 80.1, 100.0 );
|
||||
SetSkill( SkillName.HandToHand, 80.1, 90.0 );
|
||||
|
||||
Fame = 6500;
|
||||
Karma = -6500;
|
||||
|
||||
VirtualArmor = 48;
|
||||
|
||||
PackItem( new SpidersSilk( 50 ) );
|
||||
PackItem( new GreaterPoisonPotion() );
|
||||
PackItem( new DeadlyPoisonPotion() );
|
||||
}
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot( LootPack.Rich );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Lethal; } }
|
||||
|
||||
public WidowQueen( Serial serial ) : base( serial )
|
||||
{
|
||||
}
|
||||
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue