From c3bed46ba06046c8ba76c12c42d016f63beb6331 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Fri, 15 Jul 2011 19:38:58 +1000 Subject: CGE: Fix for all the game objects being draggable --- engines/cge/events.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/engines/cge/events.cpp b/engines/cge/events.cpp index 9c1741189f..73018aa2ea 100644 --- a/engines/cge/events.cpp +++ b/engines/cge/events.cpp @@ -296,8 +296,11 @@ void EventManager::handleEvents() { _mouse->_hold = e._ptr; if (_mouse->_hold) { _mouse->_hold->_flags._hold = true; - _mouse->_hx = e._x - _mouse->_hold->_x; - _mouse->_hy = e._y - _mouse->_hold->_y; + + if (_mouse->_hold->_flags._drag) { + _mouse->_hx = e._x - _mouse->_hold->_x; + _mouse->_hy = e._y - _mouse->_hold->_y; + } } } @@ -315,8 +318,10 @@ void EventManager::handleEvents() { } EvtTail = (EvtTail + 1) % EVT_MAX; } - if (_mouse->_hold) - _mouse->_hold->gotoxy(_mouse->_x - _mouse->_hx, _mouse->_y - _mouse->_hy); + if (_mouse->_hold) { + if (_mouse->_hold->_flags._drag) + _mouse->_hold->gotoxy(_mouse->_x - _mouse->_hx, _mouse->_y - _mouse->_hy); + } } void EventManager::clrEvt(Sprite *spr) { -- cgit v1.2.3