diff options
Diffstat (limited to 'source/cWindow.cpp')
-rw-r--r-- | source/cWindow.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/source/cWindow.cpp b/source/cWindow.cpp index f3caa628c..3555c9c96 100644 --- a/source/cWindow.cpp +++ b/source/cWindow.cpp @@ -3,6 +3,7 @@ #include "cMCLogger.h"
#include "cClientHandle.h"
#include "cPlayer.h"
+#include "cPickup.h"
#include "cInventory.h"
#include "cWindowOwner.h"
@@ -195,6 +196,15 @@ void cWindow::Open( cPlayer & a_Player ) void cWindow::Close( cPlayer & a_Player )
{
+ //Checks wheather the player is still holding an item
+ if(m_DraggingItem && m_DraggingItem->m_ItemCount > 0)
+ {
+ LOG("Player holds item! Dropping it...");
+ a_Player.TossItem( true, m_DraggingItem->m_ItemCount );
+
+ }
+
+
cPacket_WindowClose WindowClose;
WindowClose.m_Close = (char)m_WindowID;
cClientHandle* ClientHandle = a_Player.GetClientHandle();
@@ -205,6 +215,8 @@ void cWindow::Close( cPlayer & a_Player ) {
Destroy();
}
+
+
}
void cWindow::OwnerDestroyed()
|