public void Lizardman_WhenCreated_WithDefaults_ShouldGetBonusAttackStrength_ToEqualSeven() { // Arrange var sut = new Lizardman(); // Act var attackStrength = sut.SoldierStats.AttackStrength; // Assert Assert.That(attackStrength, Is.EqualTo(7)); }
public void Lizardman_WhenCreated_WithDefaults_ShouldGetBonusMagicResistance_ToEqualTen() { // Arrange var sut = new Lizardman(); // Act var magicResistance = sut.SoldierStats.MagicResistance; // Assert Assert.That(magicResistance, Is.EqualTo(13)); }
public void Lizradman_WhenCreated_WithDefaults_ShouldHaveSoldierTypeOfLizardman() { // Arrange var sut = new Lizardman(); // Act var soldierType = sut.SoldierType; Console.WriteLine($"Soldier Type: {soldierType}"); // Assert Assert.That(soldierType, Is.EqualTo(SoldierType.Lizardman)); }
public void Lizardman_WhenCreated_WithDefaults_ShouldHaveSoldierClassificationOfNone() { // Arrange var sut = new Lizardman(); // Act var soldierClass = sut.Classification; Console.WriteLine($"Soldier Classification: {soldierClass}"); // Assert Assert.That(soldierClass, Is.EqualTo(Class.None)); }
public override void Damage(Mobile m) { base.Damage(m); if (m.Alive) { Item item = m.FindItemOnLayer(Layer.OuterTorso); if (item is GMRobe) { AOS.Damage(m, 0, 0, 0, 0, 0, 0); } else { // Wind if (Utility.RandomDouble() < 0.01) { m.PlaySound(Utility.RandomList(0x014, 0x15, 0x016, 0x5C7)); AOS.Damage(m, 0, 0, 0, 0, 0, 0); } // sfx noises if (Utility.RandomDouble() < 0.02) { m.PlaySound(Utility.RandomList(0x0F5, 0x0F7, 0x0F8, 0x0FB)); AOS.Damage(m, 0, 0, 0, 0, 0, 0); } // jungle sfx noises if (Utility.RandomDouble() < 0.02) { m.PlaySound(Utility.RandomList(0x003, 0x004, 0x005, 0x00C, 0x00D, 0x00E, 0x00F)); AOS.Damage(m, 0, 0, 0, 0, 0, 0); } // water drips if (Utility.RandomDouble() < 0.01) { m.PlaySound(Utility.RandomList(0x022, 0x023, 0x024)); AOS.Damage(m, 0, 0, 0, 0, 0, 0); } // Random Encounter 1 if (Utility.RandomDouble() < 0.0001) { if (m.Map == Map.Tokuno) { int x1 = m.X + 10; int y1 = m.Y + 10; int z1 = Map.Tokuno.GetAverageZ(x1, y1); if (Map.Tokuno.CanSpawnMobile(x1, y1, z1)) { BaseCreature encountera; switch (Utility.Random(8)) { default: case 0: encountera = new BullFrog(); break; case 1: encountera = new GiantSerpent(); break; case 2: encountera = new Lizardman(); break; case 3: encountera = new LizardmanGuardian(); break; case 4: encountera = new LizardmanRanger(); break; case 5: encountera = new LizardmanWizard(); break; case 6: encountera = new Myconid(); break; case 7: encountera = new WaterLizardScout(); break; } encountera.MoveToWorld(new Point3D(x1, y1, z1), Map.Tokuno); AOS.Damage(m, 0, 0, 0, 0, 0, 0); Timer.DelayCall(TimeSpan.FromMinutes(10.0), new TimerStateCallback(DeleteEncounterA), encountera); } } } // Random Encounter 2 if (Utility.RandomDouble() < 0.0001) { if (m.Map == Map.Tokuno) { int x2 = m.X - 10; int y2 = m.Y - 10; int z2 = Map.Tokuno.GetAverageZ(x2, y2); if (Map.Tokuno.CanSpawnMobile(x2, y2, z2)) { BaseCreature encountera; switch (Utility.Random(8)) { default: case 0: encountera = new BullFrog(); break; case 1: encountera = new GiantSerpent(); break; case 2: encountera = new Lizardman(); break; case 3: encountera = new LizardmanGuardian(); break; case 4: encountera = new LizardmanRanger(); break; case 5: encountera = new LizardmanWizard(); break; case 6: encountera = new Myconid(); break; case 7: encountera = new WaterLizardScout(); break; } encountera.MoveToWorld(new Point3D(x2, y2, z2), Map.Tokuno); AOS.Damage(m, 0, 0, 0, 0, 0, 0); Timer.DelayCall(TimeSpan.FromMinutes(10.0), new TimerStateCallback(DeleteEncounterA), encountera); } } } } } }