From ec8520f4e0ae72b8374145f0806cf2341d4e78b2 Mon Sep 17 00:00:00 2001 From: "eos@runuo.com" Date: Sat, 8 Jun 2013 23:18:21 +0000 Subject: [PATCH] - Added 7.0.30.0 protocol changes, for extended status packet use. - Changed refuse trades option to only show in appropriate clients. - Disabled item insurance on mount items. --- Scripts/Mobiles/PlayerMobile.cs | 10 +++++++++- Server/Network/NetState.cs | 10 ++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/Scripts/Mobiles/PlayerMobile.cs b/Scripts/Mobiles/PlayerMobile.cs index 73068d877..4bc2b0b1a 100644 --- a/Scripts/Mobiles/PlayerMobile.cs +++ b/Scripts/Mobiles/PlayerMobile.cs @@ -1624,7 +1624,12 @@ namespace Server.Mobiles list.Add( new CallbackEntry( 6210, new ContextCallback( ToggleChampionTitleDisplay ) ) ); if ( Core.HS ) - list.Add( new CallbackEntry( RefuseTrades ? 1154112 : 1154113, new ContextCallback( ToggleTrades ) ) ); // Allow Trades / Refuse Trades + { + NetState ns = from.NetState; + + if ( ns != null && ns.ExtendedStatus ) + list.Add( new CallbackEntry( RefuseTrades ? 1154112 : 1154113, new ContextCallback( ToggleTrades ) ) ); // Allow Trades / Refuse Trades + } } if ( from != this ) { @@ -1699,6 +1704,9 @@ namespace Server.Mobiles if ( item.ItemID == 0x204E ) // death shroud return false; + if ( item.Layer == Layer.Mount ) + return false; + if ( item.LootType == LootType.Blessed || item.LootType == LootType.Newbied || item.BlessedFor == this ) { //SendLocalizedMessage( 1060870, "", 0x23 ); // That item is blessed and does not need to be insured diff --git a/Server/Network/NetState.cs b/Server/Network/NetState.cs index 1679c0a0b..253eaa244 100644 --- a/Server/Network/NetState.cs +++ b/Server/Network/NetState.cs @@ -165,7 +165,9 @@ namespace Server.Network { set { m_Version = value; - if ( value >= m_Version70160 ) { + if ( value >= m_Version70300 ) { + _ProtocolChanges = ProtocolChanges.Version70300; + } else if ( value >= m_Version70160 ) { _ProtocolChanges = ProtocolChanges.Version70160; } else if ( value >= m_Version70130 ) { _ProtocolChanges = ProtocolChanges.Version70130; @@ -202,6 +204,7 @@ namespace Server.Network { private static ClientVersion m_Version7090 = new ClientVersion( "7.0.9.0" ); private static ClientVersion m_Version70130 = new ClientVersion( "7.0.13.0" ); private static ClientVersion m_Version70160 = new ClientVersion( "7.0.16.0" ); + private static ClientVersion m_Version70300 = new ClientVersion( "7.0.30.0" ); private ProtocolChanges _ProtocolChanges; @@ -217,6 +220,7 @@ namespace Server.Network { HighSeas = 0x00000100, NewCharacterList = 0x00000200, NewCharacterCreation = 0x00000400, + ExtendedStatus = 0x00000800, Version400a = NewSpellbook, Version407a = Version400a | DamagePacket, @@ -228,7 +232,8 @@ namespace Server.Network { Version7000 = Version60142 | StygianAbyss, Version7090 = Version7000 | HighSeas, Version70130 = Version7090 | NewCharacterList, - Version70160 = Version70130 | NewCharacterCreation + Version70160 = Version70130 | NewCharacterCreation, + Version70300 = Version70160 | ExtendedStatus } public bool NewSpellbook { get { return ((_ProtocolChanges & ProtocolChanges.NewSpellbook) != 0); } } @@ -242,6 +247,7 @@ namespace Server.Network { public bool HighSeas { get { return ((_ProtocolChanges & ProtocolChanges.HighSeas) != 0); } } public bool NewCharacterList { get { return ((_ProtocolChanges & ProtocolChanges.NewCharacterList) != 0); } } public bool NewCharacterCreation { get { return ((_ProtocolChanges & ProtocolChanges.NewCharacterCreation) != 0); } } + public bool ExtendedStatus { get { return ((_ProtocolChanges & ProtocolChanges.ExtendedStatus) != 0); } } public bool IsUOTDClient { get {