Add DefaultName property to Mobiles & Items (#18)

This commit is contained in:
Kamron Batman 2018-08-09 17:18:41 -07:00 • committed by GitHub
parent b06f5bf60d
commit 8ee42c8ea2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
713 changed files with 5112 additions and 4987 deletions

View file

@ -21,10 +21,11 @@ namespace Server.Mobiles
public override MonsterStatuetteType[] StatueTypes{ get{ return new MonsterStatuetteType[] { MonsterStatuetteType.Slime }; } }
public override string DefaultName => "Barracoon";
[Constructible]
public Barracoon() : base( AIType.AI_Melee )
{
Name = "Barracoon";
Title = "the piper";
Body = 0x190;
Hue = 0x83EC;
@ -70,16 +71,16 @@ namespace Server.Mobiles
AddLoot( LootPack.UltraRich, 3 );
}
public override bool AlwaysMurderer{ get{ return true; } }
public override bool AutoDispel{ get{ return true; } }
public override bool AlwaysMurderer => true;
public override bool AutoDispel => true;
public override double AutoDispelChance{ get{ return 1.0; } }
public override bool BardImmune{ get{ return !Core.SE; } }
public override bool Unprovokable{ get{ return Core.SE; } }
public override bool Uncalmable{ get{ return Core.SE; } }
public override Poison PoisonImmune{ get{ return Poison.Deadly; } }
public override bool BardImmune => !Core.SE;
public override bool Unprovokable => Core.SE;
public override bool Uncalmable => Core.SE;
public override Poison PoisonImmune => Poison.Deadly;
public override bool ShowFameTitle{ get{ return false; } }
public override bool ClickTitle{ get{ return false; } }
public override bool ShowFameTitle => false;
public override bool ClickTitle => false;
public void Polymorph( Mobile m )
{
@ -237,4 +238,4 @@ namespace Server.Mobiles
int version = reader.ReadInt();
}
}
}
}

View file

@ -9,8 +9,8 @@ namespace Server.Mobiles
{
public abstract class BaseChampion : BaseCreature
{
public override bool CanMoveOverObstacles { get { return true; } }
public override bool CanDestroyObstacles { get { return true; } }
public override bool CanMoveOverObstacles => true;
public override bool CanDestroyObstacles => true;
public BaseChampion( AIType aiType ) : this( aiType, FightMode.Closest )
{
@ -65,7 +65,7 @@ namespace Server.Mobiles
return null;
int random = Utility.Random( list.Length );
Type type = list[random];
Item artifact = Loot.Construct( type );
@ -294,7 +294,7 @@ namespace Server.Mobiles
return;
Gold g = new Gold( 500, 1000 );
g.MoveToWorld( new Point3D( m_X, m_Y, z ), m_Map );
if ( 0.5 >= Utility.RandomDouble() )
@ -326,4 +326,4 @@ namespace Server.Mobiles
}
}
}
}
}

View file

@ -11,7 +11,7 @@ namespace Server.Mobiles
this.FightMode = FightMode.None;
}
public override bool InitialInnocent{ get{ return true; } }
public override bool InitialInnocent => true;
public override bool CanBeDamaged()
{
@ -36,4 +36,4 @@ namespace Server.Mobiles
int version = reader.ReadEncodedInt();
}
}
}
}

View file

@ -13,7 +13,7 @@ namespace Server.Mobiles
public override int SignupNumber{ get{ return 1007140; } } // Sign up with a guild of chaos if thou art interested.
public override GuildType Type{ get{ return GuildType.Chaos; } }
public override bool BardImmune{ get{ return true; } }
public override bool BardImmune => true;
[Constructible]
public ChaosGuard()
@ -38,4 +38,4 @@ namespace Server.Mobiles
int version = reader.ReadInt();
}
}
}
}

View file

@ -7,10 +7,11 @@ namespace Server.Mobiles
[CorpseName( "a dark guardians' corpse" )]
public class DarkGuardian : BaseCreature
{
public override string DefaultName => "a dark guardian";
[Constructible]
public DarkGuardian() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
{
Name = "a dark guardian";
Body = 78;
BaseSoundID = 0x3E9;
@ -62,9 +63,9 @@ namespace Server.Mobiles
}
public override int TreasureMapLevel{ get{ return 2; } }
public override bool BleedImmune{ get{ return true; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override bool Unprovokable { get { return true; } }
public override bool BleedImmune => true;
public override Poison PoisonImmune => Poison.Lethal;
public override bool Unprovokable => true;
public override void Serialize( GenericWriter writer )
{

View file

@ -10,15 +10,16 @@ namespace Server.Mobiles
/// You can set its value in game
/// It die after 5 minutes, so your test server stay clean
/// Create a macro to help your creation "[add Dummy 1 15 7 -1 0.5 2"
///
///
/// A iTeam of negative will set a faction at random
///
///
/// Say Kill if you want them to die
///
///
/// </summary>
public class DummyMace : Dummy
{
public override string DefaultName => "Macer";
[Constructible]
public DummyMace() : base(AIType.AI_Melee, FightMode.Closest, 15, 1, 0.2, 0.6)
@ -34,10 +35,6 @@ namespace Server.Mobiles
this.Skills[SkillName.Healing].Base = 120;
this.Skills[SkillName.Tactics].Base = 120;
// Name
this.Name = "Macer";
// Equip
WarHammer war = new WarHammer();
war.Movable = true;
@ -95,6 +92,7 @@ namespace Server.Mobiles
public class DummyFence : Dummy
{
public override string DefaultName => "Fencer";
[Constructible]
public DummyFence() : base(AIType.AI_Melee, FightMode.Closest, 15, 1, 0.2, 0.6)
@ -110,9 +108,6 @@ namespace Server.Mobiles
this.Skills[SkillName.Healing].Base = 120;
this.Skills[SkillName.Tactics].Base = 120;
// Name
this.Name = "Fencer";
// Equip
Spear ssp = new Spear();
ssp.Movable = true;
@ -171,7 +166,7 @@ namespace Server.Mobiles
public class DummySword : Dummy
{
public override string DefaultName => "Swordsman";
[Constructible]
public DummySword() : base(AIType.AI_Melee, FightMode.Closest, 15, 1, 0.2, 0.6)
{
@ -187,10 +182,6 @@ namespace Server.Mobiles
this.Skills[SkillName.Tactics].Base = 120;
this.Skills[SkillName.Parry].Base = 120;
// Name
this.Name = "Swordsman";
// Equip
Katana kat = new Katana();
kat.Crafter = this;
@ -248,7 +239,7 @@ namespace Server.Mobiles
public class DummyNox : Dummy
{
public override string DefaultName => "Nox Mage";
[Constructible]
public DummyNox() : base(AIType.AI_Mage, FightMode.Closest, 15, 1, 0.2, 0.6)
{
@ -266,10 +257,6 @@ namespace Server.Mobiles
this.Skills[SkillName.Meditation].Base = 120;
this.Skills[SkillName.Poisoning].Base = 100;
// Name
this.Name = "Nox Mage";
// Equip
Spellbook book = new Spellbook();
book.Movable = false;
@ -319,6 +306,7 @@ namespace Server.Mobiles
public class DummyStun : Dummy
{
public override string DefaultName => "Stun Mage";
[Constructible]
public DummyStun() : base(AIType.AI_Mage, FightMode.Closest, 15, 1, 0.2, 0.6)
@ -337,10 +325,6 @@ namespace Server.Mobiles
this.Skills[SkillName.Meditation].Base = 100;
this.Skills[SkillName.Poisoning].Base = 100;
// Name
this.Name = "Stun Mage";
// Equip
Spellbook book = new Spellbook();
book.Movable = false;
@ -413,6 +397,7 @@ namespace Server.Mobiles
public class DummySuper : Dummy
{
public override string DefaultName => "Super Mage";
[Constructible]
public DummySuper() : base(AIType.AI_Mage, FightMode.Closest, 15, 1, 0.2, 0.6)
@ -431,9 +416,6 @@ namespace Server.Mobiles
this.Skills[SkillName.Poisoning].Base = 100;
this.Skills[SkillName.Inscribe].Base = 100;
// Name
this.Name = "Super Mage";
// Equip
Spellbook book = new Spellbook();
book.Movable = false;
@ -511,7 +493,7 @@ namespace Server.Mobiles
public class DummyHealer : Dummy
{
public override string DefaultName => "Healer";
[Constructible]
public DummyHealer() : base(AIType.AI_Healer, FightMode.Closest, 15, 1, 0.2, 0.6)
{
@ -528,9 +510,6 @@ namespace Server.Mobiles
this.Skills[SkillName.Meditation].Base = 120;
this.Skills[SkillName.Healing].Base = 100;
// Name
this.Name = "Healer";
// Equip
Spellbook book = new Spellbook();
book.Movable = false;
@ -602,6 +581,7 @@ namespace Server.Mobiles
public class DummyAssassin : Dummy
{
public override string DefaultName => "Hybrid Assassin";
[Constructible]
public DummyAssassin() : base(AIType.AI_Melee, FightMode.Closest, 15, 1, 0.2, 0.6)
@ -619,9 +599,6 @@ namespace Server.Mobiles
this.Skills[SkillName.Meditation].Base = 120;
this.Skills[SkillName.Poisoning].Base = 100;
// Name
this.Name = "Hybrid Assassin";
// Equip
Spellbook book = new Spellbook();
book.Movable = false;
@ -722,6 +699,7 @@ namespace Server.Mobiles
[TypeAlias( "Server.Mobiles.DummyTheif" )]
public class DummyThief : Dummy
{
public override string DefaultName => "Hybrid Thief";
[Constructible]
public DummyThief() : base(AIType.AI_Thief, FightMode.Closest, 15, 1, 0.2, 0.6)
{
@ -738,9 +716,6 @@ namespace Server.Mobiles
this.Skills[SkillName.Meditation].Base = 120;
this.Skills[SkillName.Wrestling].Base = 120;
// Name
this.Name = "Hybrid Thief";
// Equip
Spellbook book = new Spellbook();
book.Movable = false;
@ -811,4 +786,4 @@ namespace Server.Mobiles
int version = reader.ReadInt();
}
}
}
}

View file

@ -77,12 +77,12 @@ namespace Server.Mobiles
}
}
public override string DefaultName => "the harrower";
[Constructible]
public Harrower() : base( AIType.AI_Mage, FightMode.Closest, 18, 1, 0.2, 0.4 )
{
m_Instances.Add( this );
Name = "the harrower";
BodyValue = 146;
SetStr( 900, 1000 );
@ -122,9 +122,9 @@ namespace Server.Mobiles
AddLoot( LootPack.Meager );
}
public override bool AutoDispel{ get{ return true; } }
public override bool Unprovokable{ get{ return true; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override bool AutoDispel => true;
public override bool Unprovokable => true;
public override Poison PoisonImmune => Poison.Lethal;
private static readonly double[] m_Offsets = new double[]
{
@ -220,7 +220,7 @@ namespace Server.Mobiles
base.OnAfterDelete();
}
public override bool DisallowAllMoves{ get{ return m_TrueForm; } }
public override bool DisallowAllMoves => m_TrueForm;
public override void Serialize( GenericWriter writer )
{
@ -500,7 +500,7 @@ namespace Server.Mobiles
return null;
int random = Utility.Random( list.Length );
Type type = list[random];
return Loot.Construct( type );
@ -636,7 +636,7 @@ namespace Server.Mobiles
return;
Gold g = new Gold( 750, 1250 );
g.MoveToWorld( new Point3D( m_X, m_Y, z ), m_Map );
if ( 0.5 >= Utility.RandomDouble() )
@ -668,4 +668,4 @@ namespace Server.Mobiles
}
}
}
}
}

View file

@ -24,16 +24,16 @@ namespace Server.Mobiles
}
}
public override string DefaultName => "tentacles of the harrower";
[Constructible]
public HarrowerTentacles() : this( null )
{
}
public HarrowerTentacles( Mobile harrower ) : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
{
m_Harrower = harrower;
Name = "tentacles of the harrower";
Body = 129;
SetStr( 901, 1000 );
@ -111,10 +111,10 @@ namespace Server.Mobiles
AddLoot( LootPack.HighScrolls, 2 );
}
public override bool AutoDispel{ get{ return true; } }
public override bool Unprovokable{ get{ return true; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override bool DisallowAllMoves{ get{ return true; } }
public override bool AutoDispel => true;
public override bool Unprovokable => true;
public override Poison PoisonImmune => Poison.Lethal;
public override bool DisallowAllMoves => true;
public HarrowerTentacles( Serial serial ) : base( serial )
{
@ -218,4 +218,4 @@ namespace Server.Mobiles
}
}
}
}
}

View file

@ -26,12 +26,12 @@ namespace Server.Mobiles
public override MonsterStatuetteType[] StatueTypes{ get{ return new MonsterStatuetteType[] { }; } }
public override string DefaultName => "Lord Oaks";
[Constructible]
public LordOaks() : base( AIType.AI_Mage, FightMode.Evil )
{
Body = 175;
Name = "Lord Oaks";
SetStr( 403, 850 );
SetDex( 101, 150 );
SetInt( 503, 800 );
@ -68,18 +68,18 @@ namespace Server.Mobiles
{
AddLoot( LootPack.UltraRich, 5 );
}
public override bool AutoDispel{ get{ return true; } }
public override bool CanFly { get { return true; } }
public override bool BardImmune{ get{ return !Core.SE; } }
public override bool Unprovokable{ get{ return Core.SE; } }
public override bool Uncalmable{ get{ return Core.SE; } }
public override bool AutoDispel => true;
public override bool CanFly => true;
public override bool BardImmune => !Core.SE;
public override bool Unprovokable => Core.SE;
public override bool Uncalmable => Core.SE;
public override OppositionGroup OppositionGroup
{
get{ return OppositionGroup.FeyAndUndead; }
}
public override Poison PoisonImmune{ get{ return Poison.Deadly; } }
public override Poison PoisonImmune => Poison.Deadly;
public void SpawnPixies( Mobile target )
{
@ -235,4 +235,4 @@ namespace Server.Mobiles
}
}
}
}
}

View file

@ -15,12 +15,12 @@ namespace Server.Mobiles
public override MonsterStatuetteType[] StatueTypes{ get{ return new MonsterStatuetteType[] { MonsterStatuetteType.Spider }; } }
public override string DefaultName => "Mephitis";
[Constructible]
public Mephitis() : base( AIType.AI_Melee )
{
Body = 173;
Name = "Mephitis";
BaseSoundID = 0x183;
SetStr( 505, 1000 );
@ -56,8 +56,8 @@ namespace Server.Mobiles
AddLoot( LootPack.UltraRich, 4 );
}
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override Poison HitPoison{ get{ return Poison.Lethal; } }
public override Poison PoisonImmune => Poison.Lethal;
public override Poison HitPoison => Poison.Lethal;
public override void OnGotMeleeAttack( Mobile attacker )
{
@ -84,4 +84,4 @@ namespace Server.Mobiles
int version = reader.ReadInt();
}
}
}
}

View file

@ -18,10 +18,11 @@ namespace Server.Mobiles
public override MonsterStatuetteType[] StatueTypes{ get{ return new MonsterStatuetteType[] { }; } }
public override string DefaultName => "Neira";
[Constructible]
public Neira() : base( AIType.AI_Mage )
{
Name = "Neira";
Title = "the necromancer";
Body = 401;
Hue = 0x83EC;
@ -92,7 +93,7 @@ namespace Server.Mobiles
return base.OnBeforeDeath();
}
private bool m_SpeedBoost;
public override void OnDamage( int amount, Mobile from, bool willKill )
@ -100,9 +101,9 @@ namespace Server.Mobiles
CheckSpeedBoost();
base.OnDamage( amount, from, willKill );
}
private const double SpeedBoostScalar = 1.2;
private void CheckSpeedBoost()
{
if( Hits < (HitsMax / 4 ) )
@ -112,7 +113,7 @@ namespace Server.Mobiles
ActiveSpeed /= SpeedBoostScalar;
PassiveSpeed /= SpeedBoostScalar;
m_SpeedBoost = true;
}
}
}
else if( m_SpeedBoost )
{
@ -193,14 +194,14 @@ namespace Server.Mobiles
}
}
public override bool AlwaysMurderer{ get{ return true; } }
public override bool BardImmune{ get{ return !Core.SE; } }
public override bool Unprovokable{ get{ return Core.SE; } }
public override bool Uncalmable{ get{ return Core.SE; } }
public override Poison PoisonImmune{ get{ return Poison.Deadly; } }
public override bool AlwaysMurderer => true;
public override bool BardImmune => !Core.SE;
public override bool Unprovokable => Core.SE;
public override bool Uncalmable => Core.SE;
public override Poison PoisonImmune => Poison.Deadly;
public override bool ShowFameTitle{ get{ return false; } }
public override bool ClickTitle{ get{ return false; } }
public override bool ShowFameTitle => false;
public override bool ClickTitle => false;
public override void OnGaveMeleeAttack( Mobile defender )
{
@ -284,7 +285,7 @@ namespace Server.Mobiles
base.Deserialize( reader );
int version = reader.ReadInt();
switch( version )
{
case 1:
@ -295,4 +296,4 @@ namespace Server.Mobiles
}
}
}
}
}

View file

@ -13,7 +13,7 @@ namespace Server.Mobiles
public override int SignupNumber{ get{ return 1007141; } } // Sign up with a guild of order if thou art interested.
public override GuildType Type{ get{ return GuildType.Order; } }
public override bool BardImmune{ get{ return true; } }
public override bool BardImmune => true;
[Constructible]
public OrderGuard()
@ -38,4 +38,4 @@ namespace Server.Mobiles
int version = reader.ReadInt();
}
}
}
}

View file

@ -22,11 +22,12 @@ namespace Server.Mobiles
public override MonsterStatuetteType[] StatueTypes{ get{ return new MonsterStatuetteType[] { MonsterStatuetteType.OphidianArchMage,
MonsterStatuetteType.OphidianWarrior }; } }
public override string DefaultName => "Rikktor";
[Constructible]
public Rikktor() : base( AIType.AI_Melee )
{
Body = 172;
Name = "Rikktor";
SetStr( 701, 900 );
SetDex( 201, 350 );
@ -62,7 +63,7 @@ namespace Server.Mobiles
AddLoot( LootPack.UltraRich, 4 );
}
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override Poison PoisonImmune => Poison.Lethal;
public override ScaleType ScaleType{ get{ return ScaleType.All; } }
public override int Scales{ get{ return 20; } }
@ -159,4 +160,4 @@ namespace Server.Mobiles
int version = reader.ReadInt();
}
}
}
}

View file

@ -15,10 +15,11 @@ namespace Server.Mobiles
public override MonsterStatuetteType[] StatueTypes{ get{ return new MonsterStatuetteType[] { }; } }
public override string DefaultName => "Semidar";
[Constructible]
public Semidar() : base( AIType.AI_Mage )
{
Name = "Semidar";
Body = 174;
BaseSoundID = 0x4B0;
@ -59,8 +60,8 @@ namespace Server.Mobiles
AddLoot( LootPack.FilthyRich );
}
public override bool Unprovokable{ get{ return true; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override bool Unprovokable => true;
public override Poison PoisonImmune => Poison.Lethal;
public override void CheckReflect( Mobile caster, ref bool reflect )
{

View file

@ -19,15 +19,13 @@ namespace Server.Mobiles
public override MonsterStatuetteType[] StatueTypes{ get{ return new MonsterStatuetteType[] { }; } }
public override WeaponAbility GetWeaponAbility()
{
return WeaponAbility.DoubleStrike;
}
public override WeaponAbility GetWeaponAbility() => WeaponAbility.DoubleStrike;
public override string DefaultName => "Serado";
[Constructible]
public Serado() : base( AIType.AI_Melee )
{
Name = "Serado";
Title = "the awakened";
Body = 249;
@ -72,14 +70,14 @@ namespace Server.Mobiles
public override int TreasureMapLevel{ get{ return 5; } }
public override Poison HitPoison{ get{ return Poison.Lethal; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override Poison HitPoison => Poison.Lethal;
public override Poison PoisonImmune => Poison.Lethal;
public override double HitPoisonChance{ get{ return 0.8; } }
public override int Feathers{ get{ return 30; } }
public override bool ShowFameTitle{ get{ return false; } }
public override bool ClickTitle{ get{ return false; } }
public override bool ShowFameTitle => false;
public override bool ClickTitle => false;
// TODO: Hit Lightning Area

View file

@ -5,16 +5,17 @@ namespace Server.Mobiles
{
public class ServantOfSemidar : BaseCreature
{
public override string DefaultName => "a Servant of Semidar";
[Constructible]
public ServantOfSemidar() : base( AIType.AI_Melee, FightMode.None, 10, 1, 0.2, 0.4 )
{
Name = "a servant of Semidar";
Body = 0x26;
}
public override bool DisallowAllMoves{ get{ return true; } }
public override bool DisallowAllMoves => true;
public override bool InitialInnocent{ get{ return true; } }
public override bool InitialInnocent => true;
public override bool CanBeDamaged()
{
@ -46,4 +47,4 @@ namespace Server.Mobiles
int version = reader.ReadEncodedInt();
}
}
}
}

View file

@ -6,10 +6,11 @@ namespace Server.Mobiles
{
public class Silvani : BaseCreature
{
public override string DefaultName => "Silvani";
[Constructible]
public Silvani() : base( AIType.AI_Mage, FightMode.Evil, 18, 1, 0.1, 0.2 )
{
Name = "Silvani";
Body = 176;
BaseSoundID = 0x467;
@ -53,9 +54,9 @@ namespace Server.Mobiles
get{ return OppositionGroup.FeyAndUndead; }
}
public override bool CanFly { get { return true; } }
public override bool Unprovokable{ get{ return true; } }
public override Poison PoisonImmune{ get{ return Poison.Regular; } }
public override bool CanFly => true;
public override bool Unprovokable => true;
public override Poison PoisonImmune => Poison.Regular;
public override int TreasureMapLevel{ get{ return 5; } }
public void SpawnPixies( Mobile target )
@ -135,4 +136,4 @@ namespace Server.Mobiles
int version = reader.ReadInt();
}
}
}
}

View file

@ -10,9 +10,9 @@ namespace Server.Mobiles
[Constructible]
public Wanderer()
{
this.Name = "Me";
this.Body = 0x1;
this.AccessLevel = AccessLevel.Counselor;
Name = "Me";
Body = 0x1;
AccessLevel = AccessLevel.Counselor;
m_Timer = new InternalTimer( this );
m_Timer.Start();
@ -66,4 +66,4 @@ namespace Server.Mobiles
}
}
}
}
}