fix: Various code cleanup (#756)
This commit is contained in:
parent
f4378acd05
commit
dbd4d6f13f
40 changed files with 117 additions and 280 deletions
|
|
@ -1,4 +1,3 @@
|
|||
using BenchmarkDotNet.Configs;
|
||||
using BenchmarkDotNet.Running;
|
||||
|
||||
namespace Benchmarks
|
||||
|
|
|
|||
|
|
@ -13,7 +13,6 @@
|
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
|
||||
*************************************************************************/
|
||||
|
||||
using System.Collections.Immutable;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using Microsoft.CodeAnalysis;
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@
|
|||
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using Microsoft.CodeAnalysis;
|
||||
using SerializableMigration;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using Server.Gumps;
|
||||
using Server.Items;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
using System;
|
||||
using System.Text;
|
||||
using Server.Buffers;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Ethics.Evil
|
||||
|
|
@ -46,7 +46,7 @@ namespace Server.Ethics.Evil
|
|||
++enemyCount;
|
||||
}
|
||||
|
||||
var sb = new StringBuilder();
|
||||
using var sb = new ValueStringBuilder();
|
||||
|
||||
sb.Append("You sense ");
|
||||
sb.Append(enemyCount == 0 ? "no" : enemyCount.ToString());
|
||||
|
|
@ -54,7 +54,7 @@ namespace Server.Ethics.Evil
|
|||
|
||||
if (primary != null)
|
||||
{
|
||||
sb.Append(", and a strong presense");
|
||||
sb.Append(", and a strong presence");
|
||||
|
||||
switch (from.Mobile.GetDirectionTo(primary.Mobile))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
using System;
|
||||
using System.Text;
|
||||
using Server.Buffers;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Ethics.Hero
|
||||
|
|
@ -46,7 +46,7 @@ namespace Server.Ethics.Hero
|
|||
++enemyCount;
|
||||
}
|
||||
|
||||
var sb = new StringBuilder();
|
||||
using var sb = new ValueStringBuilder();
|
||||
|
||||
sb.Append("You sense ");
|
||||
sb.Append(enemyCount == 0 ? "no" : enemyCount.ToString());
|
||||
|
|
@ -54,7 +54,7 @@ namespace Server.Ethics.Hero
|
|||
|
||||
if (primary != null)
|
||||
{
|
||||
sb.Append(", and a strong presense");
|
||||
sb.Append(", and a strong presence");
|
||||
|
||||
switch (from.Mobile.GetDirectionTo(primary.Mobile))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Items
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
using System;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ using System;
|
|||
using Server.Engines.MLQuests.Items;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System.Collections.Generic;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using Server.Engines.MLQuests.Objectives;
|
||||
using Server.Engines.MLQuests.Rewards;
|
||||
using Server.Engines.Spawners;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
using System.Linq;
|
||||
using Server.Gumps;
|
||||
using Server.Multis;
|
||||
using Server.Network;
|
||||
|
|
|
|||
|
|
@ -339,42 +339,21 @@ namespace Server.Items
|
|||
ar += 10 + 5 * (int)_protection;
|
||||
}
|
||||
|
||||
switch (_resource)
|
||||
ar += _resource switch
|
||||
{
|
||||
case CraftResource.DullCopper:
|
||||
ar += 2;
|
||||
break;
|
||||
case CraftResource.ShadowIron:
|
||||
ar += 4;
|
||||
break;
|
||||
case CraftResource.Copper:
|
||||
ar += 6;
|
||||
break;
|
||||
case CraftResource.Bronze:
|
||||
ar += 8;
|
||||
break;
|
||||
case CraftResource.Gold:
|
||||
ar += 10;
|
||||
break;
|
||||
case CraftResource.Agapite:
|
||||
ar += 12;
|
||||
break;
|
||||
case CraftResource.Verite:
|
||||
ar += 14;
|
||||
break;
|
||||
case CraftResource.Valorite:
|
||||
ar += 16;
|
||||
break;
|
||||
case CraftResource.SpinedLeather:
|
||||
ar += 10;
|
||||
break;
|
||||
case CraftResource.HornedLeather:
|
||||
ar += 13;
|
||||
break;
|
||||
case CraftResource.BarbedLeather:
|
||||
ar += 16;
|
||||
break;
|
||||
}
|
||||
CraftResource.DullCopper => 2,
|
||||
CraftResource.ShadowIron => 4,
|
||||
CraftResource.Copper => 6,
|
||||
CraftResource.Bronze => 8,
|
||||
CraftResource.Gold => 10,
|
||||
CraftResource.Agapite => 12,
|
||||
CraftResource.Verite => 14,
|
||||
CraftResource.Valorite => 16,
|
||||
CraftResource.SpinedLeather => 10,
|
||||
CraftResource.HornedLeather => 13,
|
||||
CraftResource.BarbedLeather => 16,
|
||||
_ => 0
|
||||
};
|
||||
|
||||
ar += -8 + 8 * (int)_quality;
|
||||
return ScaleArmorByDurability(ar);
|
||||
|
|
@ -557,27 +536,22 @@ namespace Server.Items
|
|||
BaseEnergyResistance + GetProtOffset() + GetResourceAttrs().ArmorEnergyResist + _energyBonus;
|
||||
|
||||
[CommandProperty(AccessLevel.GameMaster)]
|
||||
public ArmorBodyType BodyPosition
|
||||
{
|
||||
get
|
||||
public ArmorBodyType BodyPosition =>
|
||||
Layer switch
|
||||
{
|
||||
return Layer switch
|
||||
{
|
||||
Layer.Neck => ArmorBodyType.Gorget,
|
||||
Layer.TwoHanded => ArmorBodyType.Shield,
|
||||
Layer.Gloves => ArmorBodyType.Gloves,
|
||||
Layer.Helm => ArmorBodyType.Helmet,
|
||||
Layer.Arms => ArmorBodyType.Arms,
|
||||
Layer.InnerLegs => ArmorBodyType.Legs,
|
||||
Layer.OuterLegs => ArmorBodyType.Legs,
|
||||
Layer.Pants => ArmorBodyType.Legs,
|
||||
Layer.InnerTorso => ArmorBodyType.Chest,
|
||||
Layer.OuterTorso => ArmorBodyType.Chest,
|
||||
Layer.Shirt => ArmorBodyType.Chest,
|
||||
_ => ArmorBodyType.Gorget
|
||||
};
|
||||
}
|
||||
}
|
||||
Layer.Neck => ArmorBodyType.Gorget,
|
||||
Layer.TwoHanded => ArmorBodyType.Shield,
|
||||
Layer.Gloves => ArmorBodyType.Gloves,
|
||||
Layer.Helm => ArmorBodyType.Helmet,
|
||||
Layer.Arms => ArmorBodyType.Arms,
|
||||
Layer.InnerLegs => ArmorBodyType.Legs,
|
||||
Layer.OuterLegs => ArmorBodyType.Legs,
|
||||
Layer.Pants => ArmorBodyType.Legs,
|
||||
Layer.InnerTorso => ArmorBodyType.Chest,
|
||||
Layer.OuterTorso => ArmorBodyType.Chest,
|
||||
Layer.Shirt => ArmorBodyType.Chest,
|
||||
_ => ArmorBodyType.Gorget
|
||||
};
|
||||
|
||||
public static double[] ArmorScalars { get; set; } = { 0.07, 0.07, 0.14, 0.15, 0.22, 0.35 };
|
||||
|
||||
|
|
@ -865,20 +839,12 @@ namespace Server.Items
|
|||
|
||||
public int ComputeStatReq(StatType type)
|
||||
{
|
||||
int v;
|
||||
|
||||
if (type == StatType.Str)
|
||||
int v = type switch
|
||||
{
|
||||
v = StrRequirement;
|
||||
}
|
||||
else if (type == StatType.Dex)
|
||||
{
|
||||
v = DexRequirement;
|
||||
}
|
||||
else
|
||||
{
|
||||
v = IntRequirement;
|
||||
}
|
||||
StatType.Str => StrRequirement,
|
||||
StatType.Dex => DexRequirement,
|
||||
_ => IntRequirement
|
||||
};
|
||||
|
||||
return AOS.Scale(v, 100 - GetLowerStatReq());
|
||||
}
|
||||
|
|
@ -920,17 +886,8 @@ namespace Server.Items
|
|||
InvalidateProperties();
|
||||
}
|
||||
|
||||
public CraftAttributeInfo GetResourceAttrs()
|
||||
{
|
||||
var info = CraftResources.GetInfo(_resource);
|
||||
|
||||
if (info == null)
|
||||
{
|
||||
return CraftAttributeInfo.Blank;
|
||||
}
|
||||
|
||||
return info.AttributeInfo;
|
||||
}
|
||||
public CraftAttributeInfo GetResourceAttrs() =>
|
||||
CraftResources.GetInfo(_resource)?.AttributeInfo ?? CraftAttributeInfo.Blank;
|
||||
|
||||
public int GetProtOffset()
|
||||
{
|
||||
|
|
@ -946,31 +903,17 @@ namespace Server.Items
|
|||
|
||||
public int GetDurabilityBonus()
|
||||
{
|
||||
var bonus = 0;
|
||||
var bonus = _quality == ArmorQuality.Exceptional ? 20 : 0;
|
||||
|
||||
if (_quality == ArmorQuality.Exceptional)
|
||||
bonus += _durability switch
|
||||
{
|
||||
bonus += 20;
|
||||
}
|
||||
|
||||
switch (_durability)
|
||||
{
|
||||
case ArmorDurabilityLevel.Durable:
|
||||
bonus += 20;
|
||||
break;
|
||||
case ArmorDurabilityLevel.Substantial:
|
||||
bonus += 50;
|
||||
break;
|
||||
case ArmorDurabilityLevel.Massive:
|
||||
bonus += 70;
|
||||
break;
|
||||
case ArmorDurabilityLevel.Fortified:
|
||||
bonus += 100;
|
||||
break;
|
||||
case ArmorDurabilityLevel.Indestructible:
|
||||
bonus += 120;
|
||||
break;
|
||||
}
|
||||
ArmorDurabilityLevel.Durable => 20,
|
||||
ArmorDurabilityLevel.Substantial => 50,
|
||||
ArmorDurabilityLevel.Massive => 70,
|
||||
ArmorDurabilityLevel.Fortified => 100,
|
||||
ArmorDurabilityLevel.Indestructible => 120,
|
||||
_ => 0
|
||||
};
|
||||
|
||||
if (Core.AOS)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using Server.ContextMenus;
|
||||
using Server.Engines.Harvest;
|
||||
using Server.Mobiles;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,3 @@
|
|||
using System.Linq;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public class MorphItem : Item
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
using System.Linq;
|
||||
using Server.Items;
|
||||
using Server.Spells.Sixth;
|
||||
using Server.Targeting;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
using Server.Spells;
|
||||
|
||||
namespace Server.Items
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ using System;
|
|||
using System.Collections.Generic;
|
||||
using Server.Engines.ConPVP;
|
||||
using Server.Mobiles;
|
||||
using Server.Network;
|
||||
using Server.Spells;
|
||||
using Server.Spells.Bushido;
|
||||
using Server.Spells.Necromancy;
|
||||
|
|
|
|||
|
|
@ -799,31 +799,17 @@ namespace Server.Items
|
|||
|
||||
public int GetDurabilityBonus()
|
||||
{
|
||||
var bonus = 0;
|
||||
var bonus = m_Quality == WeaponQuality.Exceptional ? 20 : 0;
|
||||
|
||||
if (m_Quality == WeaponQuality.Exceptional)
|
||||
bonus += m_DurabilityLevel switch
|
||||
{
|
||||
bonus += 20;
|
||||
}
|
||||
|
||||
switch (m_DurabilityLevel)
|
||||
{
|
||||
case WeaponDurabilityLevel.Durable:
|
||||
bonus += 20;
|
||||
break;
|
||||
case WeaponDurabilityLevel.Substantial:
|
||||
bonus += 50;
|
||||
break;
|
||||
case WeaponDurabilityLevel.Massive:
|
||||
bonus += 70;
|
||||
break;
|
||||
case WeaponDurabilityLevel.Fortified:
|
||||
bonus += 100;
|
||||
break;
|
||||
case WeaponDurabilityLevel.Indestructible:
|
||||
bonus += 120;
|
||||
break;
|
||||
}
|
||||
WeaponDurabilityLevel.Durable => 20,
|
||||
WeaponDurabilityLevel.Substantial => 50,
|
||||
WeaponDurabilityLevel.Massive => 70,
|
||||
WeaponDurabilityLevel.Fortified => 100,
|
||||
WeaponDurabilityLevel.Indestructible => 120,
|
||||
_ => 0
|
||||
};
|
||||
|
||||
if (Core.AOS)
|
||||
{
|
||||
|
|
@ -1519,32 +1505,15 @@ namespace Server.Items
|
|||
{
|
||||
var positionChance = Utility.RandomDouble();
|
||||
|
||||
Item armorItem;
|
||||
|
||||
if (positionChance < 0.07)
|
||||
Item armorItem = positionChance switch
|
||||
{
|
||||
armorItem = defender.NeckArmor;
|
||||
}
|
||||
else if (positionChance < 0.14)
|
||||
{
|
||||
armorItem = defender.HandArmor;
|
||||
}
|
||||
else if (positionChance < 0.28)
|
||||
{
|
||||
armorItem = defender.ArmsArmor;
|
||||
}
|
||||
else if (positionChance < 0.43)
|
||||
{
|
||||
armorItem = defender.HeadArmor;
|
||||
}
|
||||
else if (positionChance < 0.65)
|
||||
{
|
||||
armorItem = defender.LegsArmor;
|
||||
}
|
||||
else
|
||||
{
|
||||
armorItem = defender.ChestArmor;
|
||||
}
|
||||
< 0.07 => defender.NeckArmor,
|
||||
< 0.14 => defender.HandArmor,
|
||||
< 0.28 => defender.ArmsArmor,
|
||||
< 0.43 => defender.HeadArmor,
|
||||
< 0.65 => defender.LegsArmor,
|
||||
_ => defender.ChestArmor
|
||||
};
|
||||
|
||||
if (armorItem is IWearableDurability armor)
|
||||
{
|
||||
|
|
@ -1569,32 +1538,15 @@ namespace Server.Items
|
|||
|
||||
var chance = Utility.RandomDouble();
|
||||
|
||||
Item armorItem;
|
||||
|
||||
if (chance < 0.07)
|
||||
Item armorItem = chance switch
|
||||
{
|
||||
armorItem = defender.NeckArmor;
|
||||
}
|
||||
else if (chance < 0.14)
|
||||
{
|
||||
armorItem = defender.HandArmor;
|
||||
}
|
||||
else if (chance < 0.28)
|
||||
{
|
||||
armorItem = defender.ArmsArmor;
|
||||
}
|
||||
else if (chance < 0.43)
|
||||
{
|
||||
armorItem = defender.HeadArmor;
|
||||
}
|
||||
else if (chance < 0.65)
|
||||
{
|
||||
armorItem = defender.LegsArmor;
|
||||
}
|
||||
else
|
||||
{
|
||||
armorItem = defender.ChestArmor;
|
||||
}
|
||||
< 0.07 => defender.NeckArmor,
|
||||
< 0.14 => defender.HandArmor,
|
||||
< 0.28 => defender.ArmsArmor,
|
||||
< 0.43 => defender.HeadArmor,
|
||||
< 0.65 => defender.LegsArmor,
|
||||
_ => defender.ChestArmor
|
||||
};
|
||||
|
||||
if (armorItem is IWearableDurability armor)
|
||||
{
|
||||
|
|
@ -1605,28 +1557,14 @@ namespace Server.Items
|
|||
|
||||
if (virtualArmor > 0)
|
||||
{
|
||||
double scalar;
|
||||
|
||||
if (chance < 0.14)
|
||||
double scalar = chance switch
|
||||
{
|
||||
scalar = 0.07;
|
||||
}
|
||||
else if (chance < 0.28)
|
||||
{
|
||||
scalar = 0.14;
|
||||
}
|
||||
else if (chance < 0.43)
|
||||
{
|
||||
scalar = 0.15;
|
||||
}
|
||||
else if (chance < 0.65)
|
||||
{
|
||||
scalar = 0.22;
|
||||
}
|
||||
else
|
||||
{
|
||||
scalar = 0.35;
|
||||
}
|
||||
< 0.14 => 0.07,
|
||||
< 0.28 => 0.14,
|
||||
< 0.43 => 0.15,
|
||||
< 0.65 => 0.22,
|
||||
_ => 0.35
|
||||
};
|
||||
|
||||
var from = (int)(virtualArmor * scalar) / 2;
|
||||
var to = (int)(virtualArmor * scalar);
|
||||
|
|
@ -1678,12 +1616,10 @@ namespace Server.Items
|
|||
{
|
||||
if (m?.Summoned == true && m.SummonMaster == defender)
|
||||
{
|
||||
attacker.SendLocalizedMessage(
|
||||
1063141
|
||||
); // Your attack has been diverted to a nearby mirror image of your target!
|
||||
defender.SendLocalizedMessage(
|
||||
1063140
|
||||
); // You manage to divert the attack onto one of your nearby mirror images.
|
||||
// Your attack has been diverted to a nearby mirror image of your target!
|
||||
attacker.SendLocalizedMessage(1063141);
|
||||
// You manage to divert the attack onto one of your nearby mirror images.
|
||||
defender.SendLocalizedMessage(1063140);
|
||||
|
||||
/*
|
||||
* TODO: What happens if the Clone parries a blow?
|
||||
|
|
@ -1836,18 +1772,17 @@ namespace Server.Items
|
|||
}
|
||||
|
||||
AddBlood(attacker, defender, damage);
|
||||
int phys, fire, cold, pois, nrgy, chaos, direct;
|
||||
|
||||
GetDamageTypes(
|
||||
attacker,
|
||||
out phys,
|
||||
out fire,
|
||||
out cold,
|
||||
out pois,
|
||||
out nrgy,
|
||||
out chaos,
|
||||
out direct
|
||||
);
|
||||
attacker,
|
||||
out var phys,
|
||||
out var fire,
|
||||
out var cold,
|
||||
out var pois,
|
||||
out var nrgy,
|
||||
out var chaos,
|
||||
out var direct
|
||||
);
|
||||
|
||||
if (Core.ML && this is BaseRanged && attacker.FindItemOnLayer(Layer.Cloak) is BaseQuiver quiver)
|
||||
{
|
||||
|
|
@ -2447,28 +2382,15 @@ namespace Server.Items
|
|||
return 0;
|
||||
}
|
||||
|
||||
var bonus = 0;
|
||||
|
||||
switch (m_AccuracyLevel)
|
||||
return m_AccuracyLevel switch
|
||||
{
|
||||
case WeaponAccuracyLevel.Accurate:
|
||||
bonus += 02;
|
||||
break;
|
||||
case WeaponAccuracyLevel.Surpassingly:
|
||||
bonus += 04;
|
||||
break;
|
||||
case WeaponAccuracyLevel.Eminently:
|
||||
bonus += 06;
|
||||
break;
|
||||
case WeaponAccuracyLevel.Exceedingly:
|
||||
bonus += 08;
|
||||
break;
|
||||
case WeaponAccuracyLevel.Supremely:
|
||||
bonus += 10;
|
||||
break;
|
||||
}
|
||||
|
||||
return bonus;
|
||||
WeaponAccuracyLevel.Accurate => 2,
|
||||
WeaponAccuracyLevel.Surpassingly => 4,
|
||||
WeaponAccuracyLevel.Eminently => 6,
|
||||
WeaponAccuracyLevel.Exceedingly => 8,
|
||||
WeaponAccuracyLevel.Supremely => 10,
|
||||
_ => 0
|
||||
};
|
||||
}
|
||||
|
||||
public virtual int GetDamageBonus()
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
|
|
|
|||
|
|
@ -1,5 +1,3 @@
|
|||
using System.Linq;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class InterredGrizzle : BaseCreature
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Server.Engines.CannedEvil;
|
||||
using Server.Items;
|
||||
using Server.Network;
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ using Server.Misc;
|
|||
using Server.Mobiles;
|
||||
using Server.Network;
|
||||
using Server.Regions;
|
||||
using Server.Text;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
using Server.Gumps;
|
||||
using Server.Items;
|
||||
using Server.Mobiles;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
using Server.Multis;
|
||||
using Server.Network;
|
||||
using Server.Targeting;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Server.Items;
|
||||
using Server.Targeting;
|
||||
|
||||
|
|
@ -43,7 +42,18 @@ namespace Server.SkillHandlers
|
|||
|
||||
public static bool IsEmpty(BaseBook book)
|
||||
{
|
||||
return book.Pages.SelectMany(page => page.Lines).All(line => line.Trim().Length == 0);
|
||||
foreach (var page in book.Pages)
|
||||
{
|
||||
foreach (var line in page.Lines)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(line))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static void Copy(BaseBook bookSrc, BaseBook bookDst)
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ using System;
|
|||
using System.Collections.Generic;
|
||||
using Server.Engines.ConPVP;
|
||||
using Server.Items;
|
||||
using Server.Network;
|
||||
using Server.Spells.Bushido;
|
||||
using Server.Spells.Necromancy;
|
||||
using Server.Spells.Ninjitsu;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Server.Collections;
|
||||
using Server.Items;
|
||||
using Server.Misc;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue