#W# Source and Scripts added. Added Scripts/Settings.cs to expose some basic tweak able settings.

This commit is contained in:
WarrentyExpired 2026-08-06 11:06:05 -04:00
parent b51c58f514
commit 3045c83799
3512 changed files with 627673 additions and 0 deletions

View file

@ -0,0 +1,73 @@
using System;
using Server.Mobiles;
namespace Server.Mobiles
{
[CorpseName("a parrot corpse")]
public class Parrot : BaseCreature
{
[Constructable]
public Parrot() : base(AIType.AI_Animal, FightMode.Aggressor, 10, 1, 0.2, 0.4 )
{
this.Body = 831;
this.Name = ("a parrot");
this.VirtualArmor = Utility.Random(0,6);
this.InitStats((10),Utility.Random(25,16),(10));
this.Skills[SkillName.Wrestling].Base = (6);
this.Skills[SkillName.Tactics].Base = (6);
this.Skills[SkillName.MagicResist].Base = (5);
this.Fame = Utility.Random(0,1249);
this.Karma = Utility.Random(0,-624);
Tamable = true;
ControlSlots = 1;
MinTameSkill = 0.0;
}
public Parrot(Serial serial) : base(serial)
{
}
public override int GetAngerSound()
{
return 0x1B;
}
public override int GetIdleSound()
{
return 0x1C;
}
public override int GetAttackSound()
{
return 0x1D;
}
public override int GetHurtSound()
{
return 0x1E;
}
public override int GetDeathSound()
{
return 0x1F;
}
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();
}
}
}

View file

@ -0,0 +1,139 @@
using System;
using Server;
using Server.Misc;
namespace Server.Mobiles
{
[CorpseName( "a bird corpse" )]
public class Bird : BaseCreature
{
[Constructable]
public Bird() : base( AIType.AI_Animal, FightMode.Aggressor, 10, 1, 0.2, 0.4 )
{
if ( Utility.RandomBool() )
{
Hue = 0x901;
switch ( Utility.Random( 3 ) )
{
case 0: Name = "a crow"; break;
case 2: Name = "a raven"; break;
case 1: Name = "a magpie"; break;
}
}
else
{
Hue = Utility.RandomBirdHue();
Name = NameList.RandomName( "bird" );
}
Body = 6;
BaseSoundID = 0x1B;
VirtualArmor = Utility.RandomMinMax( 0, 6 );
SetStr( 10 );
SetDex( 25, 35 );
SetInt( 10 );
SetDamage( 0 );
SetDamageType( ResistanceType.Physical, 100 );
SetSkill( SkillName.Wrestling, 4.2, 6.4 );
SetSkill( SkillName.Tactics, 4.0, 6.0 );
SetSkill( SkillName.MagicResist, 4.0, 5.0 );
Fame = 150;
Karma = 0;
Tamable = true;
ControlSlots = 1;
MinTameSkill = -6.9;
}
public override MeatType MeatType{ get{ return MeatType.Bird; } }
public override int Meat{ get{ return 1; } }
public override int Feathers{ get{ return 25; } }
public override FoodType FavoriteFood{ get{ return FoodType.FruitsAndVegies | FoodType.GrainsAndHay; } }
public Bird( 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 ( Hue == 0 )
Hue = Utility.RandomBirdHue();
}
}
[CorpseName( "a bird corpse" )]
public class TropicalBird : BaseCreature
{
[Constructable]
public TropicalBird() : base( AIType.AI_Animal, FightMode.Aggressor, 10, 1, 0.2, 0.4 )
{
Hue = Utility.RandomBirdHue();
Name = "a tropical bird";
Body = 6;
BaseSoundID = 0xBF;
VirtualArmor = Utility.RandomMinMax( 0, 6 );
SetStr( 10 );
SetDex( 25, 35 );
SetInt( 10 );
SetDamage( 0 );
SetDamageType( ResistanceType.Physical, 100 );
SetSkill( SkillName.Wrestling, 4.2, 6.4 );
SetSkill( SkillName.Tactics, 4.0, 6.0 );
SetSkill( SkillName.MagicResist, 4.0, 5.0 );
Fame = 150;
Karma = 0;
Tamable = true;
ControlSlots = 1;
MinTameSkill = -6.9;
}
public override MeatType MeatType{ get{ return MeatType.Bird; } }
public override int Meat{ get{ return 1; } }
public override int Feathers{ get{ return 25; } }
public override FoodType FavoriteFood{ get{ return FoodType.FruitsAndVegies | FoodType.GrainsAndHay; } }
public TropicalBird( 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();
}
}
}

View file

@ -0,0 +1,67 @@
using System;
using Server.Mobiles;
namespace Server.Mobiles
{
[CorpseName( "a cat corpse" )]
[TypeAlias( "Server.Mobiles.Housecat" )]
public class Cat : BaseCreature
{
[Constructable]
public Cat() : base( AIType.AI_Animal, FightMode.Aggressor, 10, 1, 0.2, 0.4 )
{
Name = "a cat";
Body = 0xC9;
Hue = Utility.RandomAnimalHue();
BaseSoundID = 0x69;
SetStr( 9 );
SetDex( 35 );
SetInt( 5 );
SetHits( 6 );
SetMana( 0 );
SetDamage( 1 );
SetDamageType( ResistanceType.Physical, 100 );
SetResistance( ResistanceType.Physical, 5, 10 );
SetSkill( SkillName.MagicResist, 5.0 );
SetSkill( SkillName.Tactics, 4.0 );
SetSkill( SkillName.Wrestling, 5.0 );
Fame = 0;
Karma = 150;
VirtualArmor = 8;
Tamable = true;
ControlSlots = 1;
MinTameSkill = -0.9;
}
public override int Meat{ get{ return 1; } }
public override FoodType FavoriteFood{ get{ return FoodType.Meat | FoodType.Fish; } }
public override PackInstinct PackInstinct{ get{ return PackInstinct.Feline; } }
public Cat(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();
}
}
}

View file

@ -0,0 +1,66 @@
using System;
using Server.Mobiles;
namespace Server.Mobiles
{
[CorpseName( "a dog corpse" )]
public class Dog : BaseCreature
{
[Constructable]
public Dog() : base( AIType.AI_Animal, FightMode.Aggressor, 10, 1, 0.2, 0.4 )
{
Name = "a dog";
Body = 0xD9;
Hue = Utility.RandomAnimalHue();
BaseSoundID = 0x85;
SetStr( 27, 37 );
SetDex( 28, 43 );
SetInt( 29, 37 );
SetHits( 17, 22 );
SetMana( 0 );
SetDamage( 4, 7 );
SetDamageType( ResistanceType.Physical, 100 );
SetResistance( ResistanceType.Physical, 10, 15 );
SetSkill( SkillName.MagicResist, 22.1, 47.0 );
SetSkill( SkillName.Tactics, 19.2, 31.0 );
SetSkill( SkillName.Wrestling, 19.2, 31.0 );
Fame = 0;
Karma = 300;
VirtualArmor = 12;
Tamable = true;
ControlSlots = 1;
MinTameSkill = -15.3;
}
public override int Meat{ get{ return 1; } }
public override FoodType FavoriteFood{ get{ return FoodType.Meat; } }
public override PackInstinct PackInstinct{ get{ return PackInstinct.Canine; } }
public Dog(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();
}
}
}

View file

@ -0,0 +1,70 @@
using System;
using Server.Mobiles;
namespace Server.Mobiles
{
[CorpseName( "a rat corpse" )]
public class Rat : BaseCreature
{
[Constructable]
public Rat() : base( AIType.AI_Animal, FightMode.Aggressor, 10, 1, 0.2, 0.4 )
{
Name = "a rat";
Body = 238;
BaseSoundID = 0xCC;
SetStr( 9 );
SetDex( 35 );
SetInt( 5 );
SetHits( 6 );
SetMana( 0 );
SetDamage( 1, 2 );
SetDamageType( ResistanceType.Physical, 100 );
SetResistance( ResistanceType.Physical, 5, 10 );
SetResistance( ResistanceType.Poison, 5, 10 );
SetSkill( SkillName.MagicResist, 4.0 );
SetSkill( SkillName.Tactics, 4.0 );
SetSkill( SkillName.Wrestling, 4.0 );
Fame = 150;
Karma = -150;
VirtualArmor = 6;
Tamable = true;
ControlSlots = 1;
MinTameSkill = -0.9;
}
public override void GenerateLoot()
{
AddLoot( LootPack.Poor );
}
public override int Meat{ get{ return 1; } }
public override FoodType FavoriteFood{ get{ return FoodType.Meat | FoodType.Fish | FoodType.Eggs | FoodType.GrainsAndHay; } }
public Rat(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();
}
}
}