Fixes bad expressions, bad bool checks in loops, a few null pointer exceptions, and optimizes constructors.

This commit is contained in:
Kamron Batman 2018-09-15 23:16:45 -07:00
parent 8da55d6043
commit f93c3b992e
62 changed files with 318 additions and 634 deletions

View file

@ -18,8 +18,8 @@ namespace Server.Targets
protected override void OnTargetOutOfRange(Mobile from, object targeted)
{
if (targeted is UnholyBone && from.InRange((UnholyBone)targeted, 12))
((UnholyBone)targeted).Carve(from, m_Item);
if (targeted is UnholyBone bone && from.InRange(bone, 12))
bone.Carve(from, m_Item);
else
base.OnTargetOutOfRange(from, targeted);
}
@ -29,14 +29,12 @@ namespace Server.Targets
if (m_Item.Deleted)
return;
if (targeted is ICarvable)
if (targeted is ICarvable carvable)
{
((ICarvable)targeted).Carve(from, m_Item);
carvable.Carve(from, m_Item);
}
else if (targeted is SwampDragon && ((SwampDragon)targeted).HasBarding)
else if (targeted is SwampDragon pet && pet.HasBarding)
{
SwampDragon pet = (SwampDragon)targeted;
if (!pet.Controlled || pet.ControlMaster != from)
from.SendLocalizedMessage(1053022); // You cannot remove barding from a swamp dragon you do not own.
else
@ -44,9 +42,9 @@ namespace Server.Targets
}
else
{
if (targeted is StaticTarget)
if (targeted is StaticTarget target)
{
int itemID = ((StaticTarget)targeted).ItemID;
int itemID = target.ItemID;
if (itemID == 0xD15 || itemID == 0xD16) // red mushroom
{
@ -56,10 +54,7 @@ namespace Server.Targets
if (qs is WitchApprenticeQuest)
{
FindIngredientObjective obj =
qs.FindObjective(typeof(FindIngredientObjective)) as FindIngredientObjective;
if (obj != null && !obj.Completed && obj.Ingredient == Ingredient.RedMushrooms)
if (qs.FindObjective(typeof(FindIngredientObjective)) is FindIngredientObjective obj && !obj.Completed && obj.Ingredient == Ingredient.RedMushrooms)
{
player.SendLocalizedMessage(1055036); // You slice a red cap mushroom from its stem.
obj.Complete();
@ -72,11 +67,7 @@ namespace Server.Targets
HarvestSystem system = Lumberjacking.System;
HarvestDefinition def = Lumberjacking.System.Definition;
int tileID;
Map map;
Point3D loc;
if (!system.GetHarvestDetails(from, m_Item, targeted, out tileID, out map, out loc))
if (!system.GetHarvestDetails(from, m_Item, targeted, out int tileID, out Map map, out Point3D loc))
{
from.SendLocalizedMessage(500494); // You can't use a bladed item on that!
}

View file

@ -15,9 +15,7 @@ namespace Server.Targets
protected override void OnTarget(Mobile from, object o)
{
IPoint3D p = o as IPoint3D;
if (p != null)
if (o is IPoint3D p)
{
if (!BaseCommand.IsAccessible(from, m_Object))
{
@ -31,17 +29,13 @@ namespace Server.Targets
CommandLogging.WriteLine(from, "{0} {1} moving {2} to {3}", from.AccessLevel, CommandLogging.Format(from),
CommandLogging.Format(m_Object), new Point3D(p));
if (m_Object is Item)
if (m_Object is Item item)
{
Item item = (Item)m_Object;
if (!item.Deleted)
item.MoveToWorld(new Point3D(p), from.Map);
}
else if (m_Object is Mobile)
else if (m_Object is Mobile m)
{
Mobile m = (Mobile)m_Object;
if (!m.Deleted)
m.MoveToWorld(new Point3D(p), from.Map);
}