From c718261654bd3221097ffe2f75fab79f32ec7f9c Mon Sep 17 00:00:00 2001 From: krrios Date: Sat, 8 Sep 2007 07:40:57 +0000 Subject: [PATCH] yeah. this might work better --- Server/Mobile.cs | 15 ++++++++++++--- Server/Network/PacketHandlers.cs | 5 ++++- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/Server/Mobile.cs b/Server/Mobile.cs index 4fa3bf6c0..c2ad344f1 100644 --- a/Server/Mobile.cs +++ b/Server/Mobile.cs @@ -4392,10 +4392,13 @@ namespace Server Mobile from = this; Item item = from.Holding; + bool valid = ( item != null && item.HeldBy == from && item.Map == Map.Internal ); + from.Holding = null; - if ( item == null || item.HeldBy != from || item.Map != Map.Internal ) + if ( !valid ) { return false; + } bool bounced = true; @@ -4419,10 +4422,13 @@ namespace Server Mobile from = this; Item item = from.Holding; + bool valid = ( item != null && item.HeldBy == from && item.Map == Map.Internal ); + from.Holding = null; - if ( item == null || item.HeldBy != from || item.Map != Map.Internal ) + if ( !valid ) { return false; + } bool bounced = true; @@ -4446,10 +4452,13 @@ namespace Server Mobile from = this; Item item = from.Holding; + bool valid = ( item != null && item.HeldBy == from && item.Map == Map.Internal ); + from.Holding = null; - if ( item == null || item.HeldBy != from || item.Map != Map.Internal ) + if ( !valid ) { return false; + } bool bounced = true; diff --git a/Server/Network/PacketHandlers.cs b/Server/Network/PacketHandlers.cs index 5231a13ed..6168eac16 100644 --- a/Server/Network/PacketHandlers.cs +++ b/Server/Network/PacketHandlers.cs @@ -964,10 +964,13 @@ namespace Server.Network Mobile from = state.Mobile; Item item = from.Holding; + bool valid = ( item != null && item.HeldBy == from && item.Map == Map.Internal ); + from.Holding = null; - if ( item == null || item.Deleted || item.HeldBy != from || item.Map != Map.Internal ) + if ( !valid ) { return; + } pvSrc.Seek( 5, SeekOrigin.Current ); Mobile to = World.FindMobile( pvSrc.ReadInt32() );