Fixes more casting and other formatting issues.
This commit is contained in:
parent
03dd5f1926
commit
61937d9c97
67 changed files with 325 additions and 570 deletions
|
|
@ -126,9 +126,7 @@ namespace Server.Engines.MLQuests.Definitions
|
|||
|
||||
public override bool CheckItem( Item item )
|
||||
{
|
||||
Pitcher pitcher = item as Pitcher; // Only pitchers work
|
||||
|
||||
return ( pitcher != null && pitcher.Content == BeverageType.Water && pitcher.Quantity > 0 );
|
||||
return ( item is Pitcher pitcher && pitcher.Content == BeverageType.Water && pitcher.Quantity > 0 );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -620,9 +620,7 @@ namespace Server.Engines.MLQuests.Definitions
|
|||
{
|
||||
Item item = base.CreateItem();
|
||||
|
||||
Spellbook book = item as Spellbook;
|
||||
|
||||
if ( book != null )
|
||||
if ( item is Spellbook book )
|
||||
book.Content = ( 1ul << book.BookCount ) - 1;
|
||||
|
||||
return item;
|
||||
|
|
|
|||
|
|
@ -39,9 +39,7 @@ namespace Server.Engines.MLQuests.Gumps
|
|||
|
||||
public override void OnResponse( NetState sender, RelayInfo info )
|
||||
{
|
||||
PlayerMobile pm = sender.Mobile as PlayerMobile;
|
||||
|
||||
if ( pm == null )
|
||||
if ( !(sender.Mobile is PlayerMobile pm) )
|
||||
return;
|
||||
|
||||
switch ( info.ButtonID )
|
||||
|
|
|
|||
|
|
@ -193,9 +193,7 @@ namespace Server.Engines.MLQuests.Gumps
|
|||
|
||||
CloseCurrent( state );
|
||||
|
||||
PlayerMobile pm = state.Mobile as PlayerMobile;
|
||||
|
||||
if ( pm == null )
|
||||
if ( !(state.Mobile is PlayerMobile pm) )
|
||||
return;
|
||||
|
||||
IRaceChanger owner = raceChangeState.m_Owner;
|
||||
|
|
@ -203,8 +201,7 @@ namespace Server.Engines.MLQuests.Gumps
|
|||
|
||||
if ( pvSrc.Size == 5 )
|
||||
{
|
||||
if ( owner != null )
|
||||
owner.OnCancel( pm );
|
||||
owner?.OnCancel( pm );
|
||||
|
||||
return;
|
||||
}
|
||||
|
|
@ -248,8 +245,7 @@ namespace Server.Engines.MLQuests.Gumps
|
|||
else
|
||||
pm.SendMessage( "You have fully changed your race to {0}.", targetRace.Name );
|
||||
|
||||
if ( owner != null )
|
||||
owner.ConsumeNeeded( pm );
|
||||
owner?.ConsumeNeeded( pm );
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -319,9 +315,7 @@ namespace Server.Engines.MLQuests.Gumps
|
|||
|
||||
public override void OnDoubleClick( Mobile from )
|
||||
{
|
||||
PlayerMobile pm = from as PlayerMobile;
|
||||
|
||||
if ( pm == null )
|
||||
if ( !(from is PlayerMobile pm) )
|
||||
return;
|
||||
|
||||
if ( CheckComplete( pm ) )
|
||||
|
|
|
|||
|
|
@ -27,12 +27,10 @@ namespace Server.Engines.MLQuests.Items
|
|||
return;
|
||||
}
|
||||
|
||||
MLQuestContext context;
|
||||
|
||||
if ( from is PlayerMobile && ( context = MLQuestSystem.GetContext( (PlayerMobile)from ) ) != null && context.BedlamAccess )
|
||||
if ( from is PlayerMobile mobile && MLQuestSystem.GetContext( mobile )?.BedlamAccess == true )
|
||||
{
|
||||
BaseCreature.TeleportPets( from, PointDest, MapDest );
|
||||
from.MoveToWorld( PointDest, MapDest );
|
||||
BaseCreature.TeleportPets( mobile, PointDest, MapDest );
|
||||
mobile.MoveToWorld( PointDest, MapDest );
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -24,16 +24,12 @@ namespace Server.Items
|
|||
|
||||
public override void OnDoubleClick( Mobile from )
|
||||
{
|
||||
PlayerMobile pm = from as PlayerMobile;
|
||||
|
||||
if ( pm == null || pm.Backpack == null )
|
||||
if ( !(from is PlayerMobile pm) || pm.Backpack == null )
|
||||
return;
|
||||
|
||||
if ( pm.InRange( GetWorldLocation(), 2 ) )
|
||||
{
|
||||
MLQuestContext context = MLQuestSystem.GetContext( pm );
|
||||
|
||||
if ( context != null && context.IsDoingQuest( typeof( UnfadingMemoriesPartOne ) ) && pm.Backpack.FindItemByType( typeof( PrismaticAmber ), false ) == null )
|
||||
if ( MLQuestSystem.GetContext( pm )?.IsDoingQuest( typeof( UnfadingMemoriesPartOne ) ) == true && pm.Backpack.FindItemByType( typeof( PrismaticAmber ), false ) == null )
|
||||
{
|
||||
Item amber = new PrismaticAmber();
|
||||
|
||||
|
|
|
|||
|
|
@ -52,8 +52,8 @@ namespace Server.Engines.MLQuests.Items
|
|||
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
|
||||
else if ( !IsChildOf( from.Backpack ) )
|
||||
from.SendLocalizedMessage( 1042593 ); // That is not in your backpack.
|
||||
else if ( MLQuestSystem.Enabled && CanGiveMLQuest && from is PlayerMobile )
|
||||
MLQuestSystem.OnDoubleClick( this, (PlayerMobile)from );
|
||||
else if ( MLQuestSystem.Enabled && CanGiveMLQuest && from is PlayerMobile mobile )
|
||||
MLQuestSystem.OnDoubleClick( this, mobile );
|
||||
}
|
||||
|
||||
public override void OnAfterDelete()
|
||||
|
|
@ -133,8 +133,8 @@ namespace Server.Engines.MLQuests.Items
|
|||
from.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
|
||||
else if ( !IsChildOf( from.Backpack ) )
|
||||
from.SendLocalizedMessage( 1042593 ); // That is not in your backpack.
|
||||
else if ( MLQuestSystem.Enabled && CanGiveMLQuest && from is PlayerMobile )
|
||||
MLQuestSystem.OnDoubleClick( this, (PlayerMobile)from );
|
||||
else if ( MLQuestSystem.Enabled && CanGiveMLQuest && from is PlayerMobile mobile )
|
||||
MLQuestSystem.OnDoubleClick( this, mobile );
|
||||
}
|
||||
|
||||
public override void OnAfterDelete()
|
||||
|
|
|
|||
|
|
@ -43,14 +43,18 @@ namespace Server.Engines.MLQuests.Items
|
|||
|
||||
public static void Enhance( Item loot )
|
||||
{
|
||||
if ( loot is BaseWeapon )
|
||||
BaseRunicTool.ApplyAttributesTo( (BaseWeapon)loot, Utility.RandomMinMax( 1, 5 ), 10, 80 );
|
||||
else if ( loot is BaseArmor )
|
||||
BaseRunicTool.ApplyAttributesTo( (BaseArmor)loot, Utility.RandomMinMax( 1, 5 ), 10, 80 );
|
||||
else if ( loot is BaseShield )
|
||||
BaseRunicTool.ApplyAttributesTo( (BaseShield)loot, Utility.RandomMinMax( 1, 5 ), 10, 80 );
|
||||
else if ( loot is BaseJewel )
|
||||
BaseRunicTool.ApplyAttributesTo( (BaseJewel)loot, Utility.RandomMinMax( 1, 5 ), 10, 80 );
|
||||
switch (loot)
|
||||
{
|
||||
case BaseWeapon weapon:
|
||||
BaseRunicTool.ApplyAttributesTo( weapon, Utility.RandomMinMax( 1, 5 ), 10, 80 );
|
||||
break;
|
||||
case BaseArmor armor:
|
||||
BaseRunicTool.ApplyAttributesTo( armor, Utility.RandomMinMax( 1, 5 ), 10, 80 );
|
||||
break;
|
||||
default:
|
||||
BaseRunicTool.ApplyAttributesTo((BaseJewel)loot, Utility.RandomMinMax( 1, 5 ), 10, 80 );
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -51,23 +51,19 @@ namespace Server.Engines.MLQuests.Items
|
|||
if (!base.CanTeleport(m))
|
||||
return false;
|
||||
|
||||
if (m_QuestType != null)
|
||||
{
|
||||
PlayerMobile pm = m as PlayerMobile;
|
||||
if (m_QuestType == null)
|
||||
return true;
|
||||
if (!(m is PlayerMobile pm))
|
||||
return false;
|
||||
|
||||
if (pm == null)
|
||||
return false;
|
||||
MLQuestContext context = MLQuestSystem.GetContext(pm);
|
||||
|
||||
MLQuestContext context = MLQuestSystem.GetContext(pm);
|
||||
if (context?.IsDoingQuest(m_QuestType) == true || context?.HasDoneQuest(m_QuestType) == true)
|
||||
return true;
|
||||
|
||||
if (context == null || (!context.IsDoingQuest(m_QuestType) && !context.HasDoneQuest(m_QuestType)))
|
||||
{
|
||||
TextDefinition.SendMessageTo(m, m_Message);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
TextDefinition.SendMessageTo(m, m_Message);
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public override void GetProperties(ObjectPropertyList list)
|
||||
|
|
@ -169,7 +165,7 @@ namespace Server.Engines.MLQuests.Items
|
|||
{
|
||||
foreach (Item item in m.Items) // Check paperdoll
|
||||
{
|
||||
if (m_TicketType.IsAssignableFrom(item.GetType()))
|
||||
if (m_TicketType.IsInstanceOfType(item))
|
||||
{
|
||||
ticket = item;
|
||||
break;
|
||||
|
|
@ -183,8 +179,7 @@ namespace Server.Engines.MLQuests.Items
|
|||
return false;
|
||||
}
|
||||
|
||||
if (ticket is ITicket)
|
||||
((ITicket)ticket).OnTicketUsed(m);
|
||||
(ticket as ITicket)?.OnTicketUsed(m);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -203,9 +203,8 @@ namespace Server.Engines.MLQuests
|
|||
public override void Execute( CommandEventArgs e, object obj )
|
||||
{
|
||||
Mobile from = e.Mobile;
|
||||
PlayerMobile pm = obj as PlayerMobile;
|
||||
|
||||
if ( pm == null )
|
||||
if ( !(obj is PlayerMobile pm) )
|
||||
{
|
||||
LogFailure( "That is not a player." );
|
||||
return;
|
||||
|
|
@ -230,9 +229,7 @@ namespace Server.Engines.MLQuests
|
|||
|
||||
public override void Execute( CommandEventArgs e, object obj )
|
||||
{
|
||||
PlayerMobile pm = obj as PlayerMobile;
|
||||
|
||||
if ( pm == null )
|
||||
if ( !(obj is PlayerMobile pm) )
|
||||
LogFailure( "They have no ML quest context." );
|
||||
else
|
||||
e.Mobile.SendGump( new PropertiesGump( e.Mobile, GetOrCreateContext( pm ) ) );
|
||||
|
|
@ -303,13 +300,9 @@ namespace Server.Engines.MLQuests
|
|||
{
|
||||
if ( item.QuestItem )
|
||||
{
|
||||
Backpack pack = item.Parent as Backpack;
|
||||
|
||||
if ( pack != null )
|
||||
if ( item.Parent is Backpack pack )
|
||||
{
|
||||
PlayerMobile player = pack.Parent as PlayerMobile;
|
||||
|
||||
if ( player != null && player.Backpack == pack )
|
||||
if ( pack.Parent is PlayerMobile player && player.Backpack == pack )
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
@ -487,9 +480,9 @@ namespace Server.Engines.MLQuests
|
|||
|
||||
foreach ( BaseObjectiveInstance objective in instance.Objectives )
|
||||
{
|
||||
if ( !objective.Expired && objective is GainSkillObjectiveInstance && ( (GainSkillObjectiveInstance)objective ).Handles( skill ) )
|
||||
if ( !objective.Expired && objective is GainSkillObjectiveInstance objectiveInstance && objectiveInstance.Handles( skill ) )
|
||||
{
|
||||
objective.CheckComplete();
|
||||
objectiveInstance.CheckComplete();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -520,10 +513,8 @@ namespace Server.Engines.MLQuests
|
|||
*/
|
||||
foreach ( BaseObjectiveInstance objective in instance.Objectives )
|
||||
{
|
||||
if ( !objective.Expired && objective is KillObjectiveInstance )
|
||||
if ( !objective.Expired && objective is KillObjectiveInstance kill )
|
||||
{
|
||||
KillObjectiveInstance kill = (KillObjectiveInstance)objective;
|
||||
|
||||
if ( type == null )
|
||||
type = mob.GetType();
|
||||
|
||||
|
|
@ -558,26 +549,21 @@ namespace Server.Engines.MLQuests
|
|||
foreach ( BaseObjectiveInstance objective in instance.Objectives )
|
||||
{
|
||||
// Note: On OSI, expired deliveries can still be completed. Bug?
|
||||
if ( !objective.Expired && objective is DeliverObjectiveInstance )
|
||||
if ( !objective.Expired && objective is DeliverObjectiveInstance deliver && deliver.IsDestination( quester, questerType ) )
|
||||
{
|
||||
DeliverObjectiveInstance deliver = (DeliverObjectiveInstance)objective;
|
||||
|
||||
if ( deliver.IsDestination( quester, questerType ) )
|
||||
if ( !deliver.HasCompleted ) // objective completes only once
|
||||
{
|
||||
if ( !deliver.HasCompleted ) // objective completes only once
|
||||
{
|
||||
deliver.HasCompleted = true;
|
||||
deliver.CheckComplete();
|
||||
deliver.HasCompleted = true;
|
||||
deliver.CheckComplete();
|
||||
|
||||
// The quest is continued with this NPC (important for chains)
|
||||
instance.Quester = quester;
|
||||
}
|
||||
|
||||
if ( deliverInstance == null )
|
||||
deliverInstance = instance;
|
||||
|
||||
break; // don't return, we may have to complete more deliveries
|
||||
// The quest is continued with this NPC (important for chains)
|
||||
instance.Quester = quester;
|
||||
}
|
||||
|
||||
if ( deliverInstance == null )
|
||||
deliverInstance = instance;
|
||||
|
||||
break; // don't return, we may have to complete more deliveries
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -637,9 +623,7 @@ namespace Server.Engines.MLQuests
|
|||
|
||||
public static void EventSink_QuestGumpRequest( QuestGumpRequestArgs args )
|
||||
{
|
||||
PlayerMobile pm = args.Mobile as PlayerMobile;
|
||||
|
||||
if ( !Enabled || pm == null )
|
||||
if ( !Enabled || !(args.Mobile is PlayerMobile pm) )
|
||||
return;
|
||||
|
||||
pm.SendGump( new QuestLogGump( pm ) );
|
||||
|
|
@ -681,21 +665,18 @@ namespace Server.Engines.MLQuests
|
|||
|
||||
public static void TurnToFace( IQuestGiver quester, Mobile mob )
|
||||
{
|
||||
if ( quester is Mobile )
|
||||
{
|
||||
Mobile m = (Mobile)quester;
|
||||
if ( quester is Mobile m )
|
||||
m.Direction = m.GetDirectionTo( mob );
|
||||
}
|
||||
}
|
||||
|
||||
public static void Tell( IQuestGiver quester, PlayerMobile pm, int cliloc )
|
||||
{
|
||||
TurnToFace( quester, pm );
|
||||
|
||||
if ( quester is Mobile )
|
||||
((Mobile)quester).PrivateOverheadMessage( MessageType.Regular, SpeechColor, cliloc, pm.NetState );
|
||||
else if ( quester is Item )
|
||||
MessageHelper.SendLocalizedMessageTo( (Item)quester, pm, cliloc, SpeechColor );
|
||||
if ( quester is Mobile mobile )
|
||||
mobile.PrivateOverheadMessage( MessageType.Regular, SpeechColor, cliloc, pm.NetState );
|
||||
else if ( quester is Item item )
|
||||
MessageHelper.SendLocalizedMessageTo( item, pm, cliloc, SpeechColor );
|
||||
else
|
||||
pm.SendLocalizedMessage( cliloc, "", SpeechColor );
|
||||
}
|
||||
|
|
@ -704,10 +685,10 @@ namespace Server.Engines.MLQuests
|
|||
{
|
||||
TurnToFace( quester, pm );
|
||||
|
||||
if ( quester is Mobile )
|
||||
((Mobile)quester).PrivateOverheadMessage( MessageType.Regular, SpeechColor, cliloc, args, pm.NetState );
|
||||
else if ( quester is Item )
|
||||
MessageHelper.SendLocalizedMessageTo( (Item)quester, pm, cliloc, args, SpeechColor );
|
||||
if ( quester is Mobile mobile )
|
||||
mobile.PrivateOverheadMessage( MessageType.Regular, SpeechColor, cliloc, args, pm.NetState );
|
||||
else if ( quester is Item item )
|
||||
MessageHelper.SendLocalizedMessageTo( item, pm, cliloc, args, SpeechColor );
|
||||
else
|
||||
pm.SendLocalizedMessage( cliloc, args, SpeechColor );
|
||||
}
|
||||
|
|
@ -716,10 +697,10 @@ namespace Server.Engines.MLQuests
|
|||
{
|
||||
TurnToFace( quester, pm );
|
||||
|
||||
if ( quester is Mobile )
|
||||
((Mobile)quester).PrivateOverheadMessage( MessageType.Regular, SpeechColor, false, message, pm.NetState );
|
||||
else if ( quester is Item )
|
||||
MessageHelper.SendMessageTo( (Item)quester, pm, message, SpeechColor );
|
||||
if ( quester is Mobile mobile )
|
||||
mobile.PrivateOverheadMessage( MessageType.Regular, SpeechColor, false, message, pm.NetState );
|
||||
else if ( quester is Item item )
|
||||
MessageHelper.SendMessageTo( item, pm, message, SpeechColor );
|
||||
else
|
||||
pm.SendMessage( SpeechColor, message );
|
||||
}
|
||||
|
|
|
|||
|
|
@ -185,8 +185,8 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
{
|
||||
bool completed = reader.ReadBool();
|
||||
|
||||
if ( objInstance is EscortObjectiveInstance )
|
||||
( (EscortObjectiveInstance)objInstance ).HasCompleted = completed;
|
||||
if ( objInstance is EscortObjectiveInstance instance )
|
||||
instance.HasCompleted = completed;
|
||||
|
||||
break;
|
||||
}
|
||||
|
|
@ -194,8 +194,8 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
{
|
||||
int slain = reader.ReadInt();
|
||||
|
||||
if ( objInstance is KillObjectiveInstance )
|
||||
( (KillObjectiveInstance)objInstance ).Slain = slain;
|
||||
if ( objInstance is KillObjectiveInstance instance )
|
||||
instance.Slain = slain;
|
||||
|
||||
break;
|
||||
}
|
||||
|
|
@ -203,8 +203,8 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
{
|
||||
bool completed = reader.ReadBool();
|
||||
|
||||
if ( objInstance is DeliverObjectiveInstance )
|
||||
( (DeliverObjectiveInstance)objInstance ).HasCompleted = completed;
|
||||
if ( objInstance is DeliverObjectiveInstance instance )
|
||||
instance.HasCompleted = completed;
|
||||
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -76,9 +76,7 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
|
||||
for ( int i = 0; i < m_Amount; ++i )
|
||||
{
|
||||
Item item = Activator.CreateInstance( m_Delivery ) as Item;
|
||||
|
||||
if ( item == null )
|
||||
if ( !(Activator.CreateInstance( m_Delivery ) is Item item) )
|
||||
continue;
|
||||
|
||||
delivery.Add( item );
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
|
||||
public override bool CanOffer( IQuestGiver quester, PlayerMobile pm, bool message )
|
||||
{
|
||||
if ( ( quester is BaseCreature && ( (BaseCreature)quester ).Controlled ) || ( quester is BaseEscortable && ( (BaseEscortable)quester ).IsBeingDeleted ) )
|
||||
if ( ( quester is BaseCreature creature && creature.Controlled ) || ( quester is BaseEscortable escortable && escortable.IsBeingDeleted ) )
|
||||
return false;
|
||||
|
||||
MLQuestContext context = MLQuestSystem.GetContext( pm );
|
||||
|
|
@ -145,7 +145,7 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
if ( pm.Young || m_Escort.Region.IsPartOf( "Haven Island" ) )
|
||||
Titles.AwardFame( pm, 10, true );
|
||||
else
|
||||
VirtueHelper.AwardVirtue( pm, VirtueName.Compassion, ( m_Escort is BaseEscortable && ( (BaseEscortable)m_Escort ).IsPrisoner ) ? 400 : 200 );
|
||||
VirtueHelper.AwardVirtue( pm, VirtueName.Compassion, ( m_Escort is BaseEscortable escortable && escortable.IsPrisoner ) ? 400 : 200 );
|
||||
|
||||
EndFollow( m_Escort );
|
||||
StopTimer();
|
||||
|
|
@ -203,8 +203,7 @@ namespace Server.Engines.MLQuests.Objectives
|
|||
|
||||
quester.SetControlMaster( null );
|
||||
|
||||
if ( quester is BaseEscortable )
|
||||
( (BaseEscortable)quester ).BeginDelete();
|
||||
(quester as BaseEscortable)?.BeginDelete();
|
||||
}
|
||||
|
||||
public override void OnQuestAccepted()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue