Add DefaultName property to Mobiles & Items (#18)
This commit is contained in:
parent
b06f5bf60d
commit
8ee42c8ea2
713 changed files with 5112 additions and 4987 deletions
|
|
@ -7,17 +7,15 @@ namespace Server.Mobiles
|
|||
[CorpseName( "an abysmal horror corpse" )]
|
||||
public class AbysmalHorror : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return Utility.RandomBool() ? WeaponAbility.MortalStrike : WeaponAbility.WhirlwindAttack;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => Utility.RandomBool() ? WeaponAbility.MortalStrike : WeaponAbility.WhirlwindAttack;
|
||||
|
||||
public override bool IgnoreYoungProtection { get { return Core.ML; } }
|
||||
|
||||
public override string DefaultName => "an abysmal horror";
|
||||
|
||||
[Constructible]
|
||||
public AbysmalHorror() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "an abysmal horror";
|
||||
Body = 312;
|
||||
BaseSoundID = 0x451;
|
||||
|
||||
|
|
@ -64,10 +62,10 @@ namespace Server.Mobiles
|
|||
DemonKnight.DistributeArtifact( this );
|
||||
}
|
||||
|
||||
public override bool BardImmune{ get{ return !Core.SE; } }
|
||||
public override bool Unprovokable{ get{ return Core.SE; } }
|
||||
public override bool BardImmune => !Core.SE;
|
||||
public override bool Unprovokable => Core.SE;
|
||||
public override bool AreaPeaceImmune { get { return Core.SE; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
public AbysmalHorror( Serial serial ) : base( serial )
|
||||
|
|
|
|||
|
|
@ -7,10 +7,11 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a bone demon corpse" )]
|
||||
public class BoneDemon : BaseCreature
|
||||
{
|
||||
public override string DefaultName => "a bone demon";
|
||||
|
||||
[Constructible]
|
||||
public BoneDemon() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a bone demon";
|
||||
Body = 308;
|
||||
BaseSoundID = 0x48D;
|
||||
|
||||
|
|
@ -53,7 +54,7 @@ namespace Server.Mobiles
|
|||
public override bool BardImmune { get { return !Core.SE; } }
|
||||
public override bool Unprovokable { get { return Core.SE; } }
|
||||
public override bool AreaPeaceImmune { get { return Core.SE; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
public BoneDemon( Serial serial ) : base( serial )
|
||||
|
|
@ -72,4 +73,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,15 +7,13 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a crystal elemental corpse" )]
|
||||
public class CrystalElemental : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return WeaponAbility.BleedAttack;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => WeaponAbility.BleedAttack;
|
||||
|
||||
public override string DefaultName => "a crystal elemental";
|
||||
|
||||
[Constructible]
|
||||
public CrystalElemental() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a crystal elemental";
|
||||
Body = 300;
|
||||
BaseSoundID = 278;
|
||||
|
||||
|
|
@ -55,8 +53,8 @@ namespace Server.Mobiles
|
|||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override bool BleedImmune => true;
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
public CrystalElemental( Serial serial ) : base( serial )
|
||||
|
|
@ -75,4 +73,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -63,12 +63,12 @@ namespace Server.Mobiles
|
|||
DemonKnight.DistributeArtifact( this );
|
||||
}
|
||||
|
||||
public override bool BardImmune{ get{ return !Core.SE; } }
|
||||
public override bool Unprovokable{ get{ return Core.SE; } }
|
||||
public override bool BardImmune => !Core.SE;
|
||||
public override bool Unprovokable => Core.SE;
|
||||
public override bool AreaPeaceImmune { get { return Core.SE; } }
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison HitPoison{ get{ return Poison.Lethal; } }
|
||||
public override bool BleedImmune => true;
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
public override Poison HitPoison => Poison.Lethal;
|
||||
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
|
|
@ -91,4 +91,4 @@ namespace Server.Mobiles
|
|||
BaseSoundID = 0xE0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,50 +9,51 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a demon knight corpse" )]
|
||||
public class DemonKnight : BaseCreature
|
||||
{
|
||||
public override bool IgnoreYoungProtection { get { return Core.ML; } }
|
||||
public override bool IgnoreYoungProtection => Core.ML;
|
||||
|
||||
public static Type[] ArtifactRarity10 { get { return m_ArtifactRarity10; } }
|
||||
public static Type[] ArtifactRarity11 { get { return m_ArtifactRarity11; } }
|
||||
private static Type[] m_ArtifactRarity10 = new Type[]
|
||||
{
|
||||
typeof( LegacyOfTheDreadLord ),
|
||||
typeof( TheTaskmaster )
|
||||
};
|
||||
public static Type[] ArtifactRarity10 => m_ArtifactRarity10;
|
||||
public static Type[] ArtifactRarity11 => m_ArtifactRarity11;
|
||||
|
||||
private static Type[] m_ArtifactRarity11 = new Type[]
|
||||
{
|
||||
typeof( TheDragonSlayer ),
|
||||
typeof( ArmorOfFortune ),
|
||||
typeof( GauntletsOfNobility ),
|
||||
typeof( HelmOfInsight ),
|
||||
typeof( HolyKnightsBreastplate ),
|
||||
typeof( JackalsCollar ),
|
||||
typeof( LeggingsOfBane ),
|
||||
typeof( MidnightBracers ),
|
||||
typeof( OrnateCrownOfTheHarrower ),
|
||||
typeof( ShadowDancerLeggings ),
|
||||
typeof( TunicOfFire ),
|
||||
typeof( VoiceOfTheFallenKing ),
|
||||
typeof( BraceletOfHealth ),
|
||||
typeof( OrnamentOfTheMagician ),
|
||||
typeof( RingOfTheElements ),
|
||||
typeof( RingOfTheVile ),
|
||||
typeof( Aegis ),
|
||||
typeof( ArcaneShield ),
|
||||
typeof( AxeOfTheHeavens ),
|
||||
typeof( BladeOfInsanity ),
|
||||
typeof( BoneCrusher ),
|
||||
typeof( BreathOfTheDead ),
|
||||
typeof( Frostbringer ),
|
||||
typeof( SerpentsFang ),
|
||||
typeof( StaffOfTheMagi ),
|
||||
typeof( TheBeserkersMaul ),
|
||||
typeof( TheDryadBow ),
|
||||
typeof( DivineCountenance ),
|
||||
typeof( HatOfTheMagi ),
|
||||
typeof( HuntersHeaddress ),
|
||||
typeof( SpiritOfTheTotem )
|
||||
};
|
||||
private static Type[] m_ArtifactRarity10 =
|
||||
{
|
||||
typeof( LegacyOfTheDreadLord ),
|
||||
typeof( TheTaskmaster )
|
||||
};
|
||||
|
||||
private static Type[] m_ArtifactRarity11 =
|
||||
{
|
||||
typeof( TheDragonSlayer ),
|
||||
typeof( ArmorOfFortune ),
|
||||
typeof( GauntletsOfNobility ),
|
||||
typeof( HelmOfInsight ),
|
||||
typeof( HolyKnightsBreastplate ),
|
||||
typeof( JackalsCollar ),
|
||||
typeof( LeggingsOfBane ),
|
||||
typeof( MidnightBracers ),
|
||||
typeof( OrnateCrownOfTheHarrower ),
|
||||
typeof( ShadowDancerLeggings ),
|
||||
typeof( TunicOfFire ),
|
||||
typeof( VoiceOfTheFallenKing ),
|
||||
typeof( BraceletOfHealth ),
|
||||
typeof( OrnamentOfTheMagician ),
|
||||
typeof( RingOfTheElements ),
|
||||
typeof( RingOfTheVile ),
|
||||
typeof( Aegis ),
|
||||
typeof( ArcaneShield ),
|
||||
typeof( AxeOfTheHeavens ),
|
||||
typeof( BladeOfInsanity ),
|
||||
typeof( BoneCrusher ),
|
||||
typeof( BreathOfTheDead ),
|
||||
typeof( Frostbringer ),
|
||||
typeof( SerpentsFang ),
|
||||
typeof( StaffOfTheMagi ),
|
||||
typeof( TheBeserkersMaul ),
|
||||
typeof( TheDryadBow ),
|
||||
typeof( DivineCountenance ),
|
||||
typeof( HatOfTheMagi ),
|
||||
typeof( HuntersHeaddress ),
|
||||
typeof( SpiritOfTheTotem )
|
||||
};
|
||||
|
||||
public static Item CreateRandomArtifact()
|
||||
{
|
||||
|
|
@ -214,10 +215,10 @@ namespace Server.Mobiles
|
|||
AddLoot( LootPack.HighScrolls, Utility.RandomMinMax( 6, 60 ) );
|
||||
}
|
||||
|
||||
public override bool BardImmune{ get{ return !Core.SE; } }
|
||||
public override bool Unprovokable{ get{ return Core.SE; } }
|
||||
public override bool BardImmune => !Core.SE;
|
||||
public override bool Unprovokable => Core.SE;
|
||||
public override bool AreaPeaceImmune { get { return Core.SE; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
|
|
@ -264,11 +265,12 @@ namespace Server.Mobiles
|
|||
continue;
|
||||
}
|
||||
|
||||
UnholyBone bone = new UnholyBone();
|
||||
|
||||
bone.Hue = 0;
|
||||
bone.Name = "unholy bones";
|
||||
bone.ItemID = Utility.Random( 0xECA, 9 );
|
||||
UnholyBone bone = new UnholyBone
|
||||
{
|
||||
Hue = 0,
|
||||
Name = "unholy bones",
|
||||
ItemID = Utility.Random(0xECA, 9),
|
||||
};
|
||||
|
||||
bone.MoveToWorld( new Point3D( x, y, z ), map );
|
||||
}
|
||||
|
|
@ -290,4 +292,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,10 +7,11 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a devourer of souls corpse" )]
|
||||
public class Devourer : BaseCreature
|
||||
{
|
||||
public override string DefaultName => "a devourer of souls";
|
||||
|
||||
[Constructible]
|
||||
public Devourer() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a devourer of souls";
|
||||
Body = 303;
|
||||
BaseSoundID = 357;
|
||||
|
||||
|
|
@ -52,7 +53,7 @@ namespace Server.Mobiles
|
|||
AddLoot( LootPack.FilthyRich, 2 );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
|
||||
public override int Meat{ get{ return 3; } }
|
||||
|
||||
|
|
@ -72,4 +73,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,15 +7,13 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a flesh golem corpse" )]
|
||||
public class FleshGolem : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return WeaponAbility.BleedAttack;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => WeaponAbility.BleedAttack;
|
||||
|
||||
public override string DefaultName => "a flesh golem";
|
||||
|
||||
[Constructible]
|
||||
public FleshGolem() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a flesh golem";
|
||||
Body = 304;
|
||||
BaseSoundID = 684;
|
||||
|
||||
|
|
@ -50,7 +48,7 @@ namespace Server.Mobiles
|
|||
AddLoot( LootPack.Average );
|
||||
}
|
||||
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override bool BleedImmune => true;
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
public FleshGolem( Serial serial ) : base( serial )
|
||||
|
|
@ -69,4 +67,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,17 +7,15 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a fleshrenderer corpse" )]
|
||||
public class FleshRenderer : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return Utility.RandomBool() ? WeaponAbility.Dismount : WeaponAbility.ParalyzingBlow;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => Utility.RandomBool() ? WeaponAbility.Dismount : WeaponAbility.ParalyzingBlow;
|
||||
|
||||
public override bool IgnoreYoungProtection { get { return Core.ML; } }
|
||||
|
||||
public override string DefaultName => "a fleshrenderer";
|
||||
|
||||
[Constructible]
|
||||
public FleshRenderer() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a fleshrenderer";
|
||||
Body = 315;
|
||||
|
||||
SetStr( 401, 460 );
|
||||
|
|
@ -62,11 +60,11 @@ namespace Server.Mobiles
|
|||
DemonKnight.DistributeArtifact( this );
|
||||
}
|
||||
|
||||
public override bool AutoDispel{ get{ return true; } }
|
||||
public override bool AutoDispel => true;
|
||||
public override bool BardImmune { get { return !Core.SE; } }
|
||||
public override bool Unprovokable { get { return Core.SE; } }
|
||||
public override bool AreaPeaceImmune { get { return Core.SE; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
|
|
@ -114,4 +112,4 @@ namespace Server.Mobiles
|
|||
BaseSoundID = -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,15 +7,13 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a gibberling corpse" )]
|
||||
public class Gibberling : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return WeaponAbility.Dismount;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => WeaponAbility.Dismount;
|
||||
|
||||
public override string DefaultName => "a gibberling";
|
||||
|
||||
[Constructible]
|
||||
public Gibberling() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a gibberling";
|
||||
Body = 307;
|
||||
BaseSoundID = 422;
|
||||
|
||||
|
|
@ -70,4 +68,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,10 +7,11 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a gore fiend corpse" )]
|
||||
public class GoreFiend : BaseCreature
|
||||
{
|
||||
public override string DefaultName => "a gore fiend";
|
||||
|
||||
[Constructible]
|
||||
public GoreFiend() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a gore fiend";
|
||||
Body = 305;
|
||||
BaseSoundID = 224;
|
||||
|
||||
|
|
@ -51,7 +52,7 @@ namespace Server.Mobiles
|
|||
return 1218;
|
||||
}
|
||||
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override bool BleedImmune => true;
|
||||
|
||||
public GoreFiend( Serial serial ) : base( serial )
|
||||
{
|
||||
|
|
@ -69,4 +70,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,10 +7,7 @@ namespace Server.Mobiles
|
|||
[CorpseName( "an impaler corpse" )]
|
||||
public class Impaler : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return Utility.RandomBool() ? WeaponAbility.MortalStrike : WeaponAbility.BleedAttack;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => Utility.RandomBool() ? WeaponAbility.MortalStrike : WeaponAbility.BleedAttack;
|
||||
|
||||
public override bool IgnoreYoungProtection { get { return Core.ML; } }
|
||||
|
||||
|
|
@ -63,12 +60,12 @@ namespace Server.Mobiles
|
|||
DemonKnight.DistributeArtifact( this );
|
||||
}
|
||||
|
||||
public override bool AutoDispel{ get{ return true; } }
|
||||
public override bool BardImmune{ get{ return !Core.SE; } }
|
||||
public override bool Unprovokable{ get{ return Core.SE; } }
|
||||
public override bool AutoDispel => true;
|
||||
public override bool BardImmune => !Core.SE;
|
||||
public override bool Unprovokable => Core.SE;
|
||||
public override bool AreaPeaceImmune { get { return Core.SE; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison HitPoison{ get{ return (0.8 >= Utility.RandomDouble() ? Poison.Greater : Poison.Deadly); } }
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
public override Poison HitPoison => (0.8 >= Utility.RandomDouble() ? Poison.Greater : Poison.Deadly);
|
||||
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
|
|
@ -91,4 +88,4 @@ namespace Server.Mobiles
|
|||
BaseSoundID = 0x2A7;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,10 +7,11 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a maggoty corpse" )] // TODO: Corpse name?
|
||||
public class MoundOfMaggots : BaseCreature
|
||||
{
|
||||
public override string DefaultName => "a mound of maggots";
|
||||
|
||||
[Constructible]
|
||||
public MoundOfMaggots() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a mound of maggots";
|
||||
Body = 319;
|
||||
BaseSoundID = 898;
|
||||
|
||||
|
|
@ -43,7 +44,7 @@ namespace Server.Mobiles
|
|||
AddLoot( LootPack.Gems );
|
||||
}
|
||||
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
|
|
@ -63,4 +64,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,15 +7,13 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a patchwork skeletal corpse" )]
|
||||
public class PatchworkSkeleton : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return WeaponAbility.Dismount;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => WeaponAbility.Dismount;
|
||||
|
||||
public override string DefaultName => "a patchwork skeleton";
|
||||
|
||||
[Constructible]
|
||||
public PatchworkSkeleton() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a patchwork skeleton";
|
||||
Body = 309;
|
||||
BaseSoundID = 0x48D;
|
||||
|
||||
|
|
@ -51,8 +49,8 @@ namespace Server.Mobiles
|
|||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override bool BleedImmune => true;
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
|
|
@ -72,4 +70,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,15 +7,13 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a ravager corpse" )]
|
||||
public class Ravager : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return Utility.RandomBool() ? WeaponAbility.Dismount : WeaponAbility.CrushingBlow;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => Utility.RandomBool() ? WeaponAbility.Dismount : WeaponAbility.CrushingBlow;
|
||||
|
||||
public override string DefaultName => "a ravager";
|
||||
|
||||
[Constructible]
|
||||
public Ravager() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a ravager";
|
||||
Body = 314;
|
||||
BaseSoundID = 357;
|
||||
|
||||
|
|
@ -66,4 +64,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,14 +16,15 @@ namespace Server.Mobiles
|
|||
}
|
||||
|
||||
public override Mobile ConstantFocus{ get{ return m_Target; } }
|
||||
public override bool NoHouseRestrictions{ get{ return true; } }
|
||||
public override bool NoHouseRestrictions => true;
|
||||
|
||||
public override double DispelDifficulty{ get{ return 80.0; } }
|
||||
public override double DispelFocus{ get{ return 20.0; } }
|
||||
|
||||
public override string DefaultName => "a revenant";
|
||||
|
||||
public Revenant( Mobile caster, Mobile target, TimeSpan duration ) : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.18, 0.36 )
|
||||
{
|
||||
Name = "a revenant";
|
||||
Body = 400;
|
||||
Hue = 1;
|
||||
// TODO: Sound values?
|
||||
|
|
@ -78,11 +79,11 @@ namespace Server.Mobiles
|
|||
AddItem( weapon );
|
||||
}
|
||||
|
||||
public override bool AlwaysMurderer{ get{ return true; } }
|
||||
public override bool AlwaysMurderer => true;
|
||||
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override bool BardImmune{ get{ return true; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override bool BleedImmune => true;
|
||||
public override bool BardImmune => true;
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
|
||||
public override void OnThink()
|
||||
{
|
||||
|
|
@ -180,4 +181,4 @@ namespace Server.Mobiles
|
|||
Delete();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,10 +7,7 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a shadow knight corpse" )]
|
||||
public class ShadowKnight : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return Utility.RandomBool() ? WeaponAbility.ConcussionBlow : WeaponAbility.CrushingBlow;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => Utility.RandomBool() ? WeaponAbility.ConcussionBlow : WeaponAbility.CrushingBlow;
|
||||
|
||||
public override bool IgnoreYoungProtection { get { return Core.ML; } }
|
||||
|
||||
|
|
@ -167,10 +164,10 @@ namespace Server.Mobiles
|
|||
base.OnThink();
|
||||
}
|
||||
|
||||
public override bool BardImmune{ get{ return !Core.SE; } }
|
||||
public override bool Unprovokable{ get{ return Core.SE; } }
|
||||
public override bool AreaPeaceImmune{ get{ return Core.SE; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override bool BardImmune => !Core.SE;
|
||||
public override bool Unprovokable => Core.SE;
|
||||
public override bool AreaPeaceImmune => Core.SE;
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
|
||||
public override int TreasureMapLevel{ get{ return 1; } }
|
||||
|
||||
|
|
@ -193,4 +190,4 @@ namespace Server.Mobiles
|
|||
BaseSoundID = -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,10 +7,11 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a skittering hopper corpse" )]
|
||||
public class SkitteringHopper : BaseCreature
|
||||
{
|
||||
public override string DefaultName => "a skittering hopper";
|
||||
|
||||
[Constructible]
|
||||
public SkitteringHopper() : base( AIType.AI_Melee, FightMode.Aggressor, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a skittering hopper";
|
||||
Body = 302;
|
||||
BaseSoundID = 959;
|
||||
|
||||
|
|
@ -65,4 +66,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,15 +7,13 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a treefellow corpse" )]
|
||||
public class Treefellow : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return WeaponAbility.Dismount;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => WeaponAbility.Dismount;
|
||||
|
||||
public override string DefaultName => "a treefellow";
|
||||
|
||||
[Constructible]
|
||||
public Treefellow() : base( AIType.AI_Melee, FightMode.Evil, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a treefellow";
|
||||
Body = 301;
|
||||
|
||||
SetStr( 196, 220 );
|
||||
|
|
@ -64,7 +62,7 @@ namespace Server.Mobiles
|
|||
return 672;
|
||||
}
|
||||
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override bool BleedImmune => true;
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
|
|
@ -90,4 +88,4 @@ namespace Server.Mobiles
|
|||
BaseSoundID = -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,10 +7,11 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a vampire bat corpse" )]
|
||||
public class VampireBat : BaseCreature
|
||||
{
|
||||
public override string DefaultName => "a vampire bat";
|
||||
|
||||
[Constructible]
|
||||
public VampireBat() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a vampire bat";
|
||||
Body = 317;
|
||||
BaseSoundID = 0x270;
|
||||
|
||||
|
|
@ -67,4 +68,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,15 +7,13 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a wailing banshee corpse" )]
|
||||
public class WailingBanshee : BaseCreature
|
||||
{
|
||||
public override WeaponAbility GetWeaponAbility()
|
||||
{
|
||||
return WeaponAbility.MortalStrike;
|
||||
}
|
||||
public override WeaponAbility GetWeaponAbility() => WeaponAbility.MortalStrike;
|
||||
|
||||
public override string DefaultName => "a wailing banshee";
|
||||
|
||||
[Constructible]
|
||||
public WailingBanshee() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a wailing banshee";
|
||||
Body = 310;
|
||||
BaseSoundID = 0x482;
|
||||
|
||||
|
|
@ -52,7 +50,7 @@ namespace Server.Mobiles
|
|||
AddLoot( LootPack.Meager );
|
||||
}
|
||||
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override bool BleedImmune => true;
|
||||
|
||||
public WailingBanshee( Serial serial ) : base( serial )
|
||||
{
|
||||
|
|
@ -70,4 +68,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,10 +7,11 @@ namespace Server.Mobiles
|
|||
[CorpseName( "a wanderer of the void corpse" )]
|
||||
public class WandererOfTheVoid : BaseCreature
|
||||
{
|
||||
public override string DefaultName => "a wanderer of the void";
|
||||
|
||||
[Constructible]
|
||||
public WandererOfTheVoid() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
|
||||
{
|
||||
Name = "a wanderer of the void";
|
||||
Body = 316;
|
||||
BaseSoundID = 377;
|
||||
|
||||
|
|
@ -50,8 +51,8 @@ namespace Server.Mobiles
|
|||
PackItem( new TreasureMap( 3, Map.Trammel ) );
|
||||
}
|
||||
|
||||
public override bool BleedImmune{ get{ return true; } }
|
||||
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
|
||||
public override bool BleedImmune => true;
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
public override int TreasureMapLevel{ get{ return Core.AOS ? 4 : 1; } }
|
||||
|
||||
public override void GenerateLoot()
|
||||
|
|
@ -75,4 +76,4 @@ namespace Server.Mobiles
|
|||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue