diff --git a/Scripts/Engines/Factions/Instances/Factions/CouncilOfMages.cs b/Scripts/Engines/Factions/Instances/Factions/CouncilOfMages.cs index f42b83aac..1553e0efd 100644 --- a/Scripts/Engines/Factions/Instances/Factions/CouncilOfMages.cs +++ b/Scripts/Engines/Factions/Instances/Factions/CouncilOfMages.cs @@ -39,7 +39,28 @@ namespace Server.Factions new TextDefinition( 1005187, "Members of the Council of Mages will now be ignored." ), new TextDefinition( 1005188, "Members of the Council of Mages will now be warned to leave." ), new TextDefinition( 1005189, "Members of the Council of Mages will now be beaten with a stick." ), + // Moonglow new StrongholdDefinition( + new Rectangle2D[] + { + new Rectangle2D( 4463, 1487, 15, 35 ), + new Rectangle2D( 4450, 1522, 35, 48 ), + }, + new Point3D( 4469, 1486, 0 ), + new Point3D( 4457, 1455, 0 ), + new Point3D[] + { + new Point3D( 4464, 1534, 21 ), + new Point3D( 4470, 1536, 21 ), + new Point3D( 4468, 1534, 21 ), + new Point3D( 4470, 1534, 21 ), + new Point3D( 4468, 1536, 21 ), + new Point3D( 4466, 1534, 21 ), + new Point3D( 4466, 1536, 21 ), + new Point3D( 4464, 1536, 21 ) + } ), + // Magincia + /* new StrongholdDefinition( new Rectangle2D[] { new Rectangle2D( 3756, 2232, 4, 23 ), @@ -59,7 +80,7 @@ namespace Server.Factions new Point3D( 3797, 2252, 20 ), new Point3D( 3797, 2249, 20 ), new Point3D( 3797, 2246, 20 ) - } ), + } ), */ new RankDefinition[] { new RankDefinition( 10, 991, 8, new TextDefinition( 1060789, "Inquisitor of the Council" ) ), diff --git a/Scripts/Items/Skill Items/Tailor Items/Dyetubs/MetallicHuePicker.cs b/Scripts/Items/Skill Items/Tailor Items/Dyetubs/MetallicHuePicker.cs index d00cc6d03..3027e0acb 100644 --- a/Scripts/Items/Skill Items/Tailor Items/Dyetubs/MetallicHuePicker.cs +++ b/Scripts/Items/Skill Items/Tailor Items/Dyetubs/MetallicHuePicker.cs @@ -2,7 +2,6 @@ using Server; using Server.Gumps; using Server.Network; using System; -using System.Windows.Forms; namespace Server.Items { diff --git a/Scripts/Misc/ClientVerification.cs b/Scripts/Misc/ClientVerification.cs index cce5c5370..4c02657e2 100644 --- a/Scripts/Misc/ClientVerification.cs +++ b/Scripts/Misc/ClientVerification.cs @@ -126,7 +126,7 @@ namespace Server.Misc NetState state = e.State; ClientVersion version = e.Version; - if ( state.Mobile.AccessLevel > AccessLevel.Player ) + if ( state.Mobile == null || state.Mobile.AccessLevel > AccessLevel.Player ) return; if( Required != null && version < Required && ( m_OldClientResponse == OldClientResponse.Kick ||( m_OldClientResponse == OldClientResponse.LenientKick && (DateTime.Now - state.Mobile.CreationTime) > m_AgeLeniency && state.Mobile is PlayerMobile && ((PlayerMobile)state.Mobile).GameTime > m_GameTimeLeniency ))) diff --git a/Server/Main.cs b/Server/Main.cs index 9692a9623..bcd0bec18 100644 --- a/Server/Main.cs +++ b/Server/Main.cs @@ -509,8 +509,10 @@ namespace Server long sample = 0; - while( m_Signal.WaitOne() ) + while( !m_Closing ) { + m_Signal.WaitOne( 10, false ); + Mobile.ProcessDeltaQueue(); Item.ProcessDeltaQueue(); diff --git a/Server/Mobile.cs b/Server/Mobile.cs index 766e7cd84..a7d07ae39 100644 --- a/Server/Mobile.cs +++ b/Server/Mobile.cs @@ -8392,13 +8392,19 @@ namespace Server { if( m_Name != value ) // I'm leaving out the && m_NameMod == null { + string oldName = m_Name; m_Name = value; + OnAfterNameChange( oldName, m_Name ); Delta( MobileDelta.Name ); InvalidateProperties(); } } } + public virtual void OnAfterNameChange( string oldName, string newName ) + { + } + [CommandProperty( AccessLevel.GameMaster )] public DateTime LastStrGain {