mirror of
https://github.com/libretro/scummvm.git
synced 2025-03-06 18:27:26 +00:00
MOHAWK: Fix flag values used to dertermine if an area can become active.
svn-id: r54622
This commit is contained in:
parent
3b1440b0d4
commit
d3289529eb
@ -501,7 +501,7 @@ void MohawkEngine_Myst::drawResourceRects() {
|
||||
for (uint16 i = 0; i < _resources.size(); i++) {
|
||||
_resources[i]->getRect().debugPrint(0);
|
||||
if (_resources[i]->getRect().isValidRect()) {
|
||||
if (_resources[i]->unreachableZipDest())
|
||||
if (!_resources[i]->canBecomeActive())
|
||||
_gfx->drawRect(_resources[i]->getRect(), kRectUnreachable);
|
||||
else if (_resources[i]->isEnabled())
|
||||
_gfx->drawRect(_resources[i]->getRect(), kRectEnabled);
|
||||
@ -518,7 +518,7 @@ void MohawkEngine_Myst::checkCurrentResource() {
|
||||
bool foundResource = false;
|
||||
|
||||
for (uint16 i = 0; i < _resources.size(); i++)
|
||||
if (!_resources[i]->unreachableZipDest() &&
|
||||
if (_resources[i]->canBecomeActive() &&
|
||||
_resources[i]->contains(_system->getEventManager()->getMousePos())) {
|
||||
if (_curResource != i) {
|
||||
if (_curResource != -1 && _resources[_curResource]->isEnabled())
|
||||
|
@ -75,6 +75,10 @@ void MystResource::handleMouseUp(Common::Point *mouse) {
|
||||
warning("Movement type resource with null destination at position (%d, %d), (%d, %d)", _rect.left, _rect.top, _rect.right, _rect.bottom);
|
||||
}
|
||||
|
||||
bool MystResource::canBecomeActive() {
|
||||
return !unreachableZipDest() && (isEnabled() || (_flags & kMystUnknownFlag));
|
||||
}
|
||||
|
||||
bool MystResource::unreachableZipDest() {
|
||||
return (_flags & kMystZipModeEnableFlag) && !_vm->_zipMode;
|
||||
}
|
||||
|
@ -49,6 +49,7 @@ public:
|
||||
uint16 getDest() { return _dest; }
|
||||
virtual uint16 getType8Var() { return 0xFFFF; }
|
||||
bool unreachableZipDest();
|
||||
bool canBecomeActive();
|
||||
|
||||
// Mouse interface
|
||||
virtual void handleMouseUp(Common::Point *mouse);
|
||||
|
Loading…
x
Reference in New Issue
Block a user