aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorWillem Jan Palenstijn2015-12-26 14:01:45 +0100
committerWillem Jan Palenstijn2015-12-26 14:04:39 +0100
commite3ce65cce86c9ae82e00d215cc9f59c5386633c6 (patch)
tree1a1186f596f1ac26befecd4d78efd3703f1d93d2 /engines
parent6daf92cbf41bb152c77312b692474fb44b5a7aee (diff)
downloadscummvm-rg350-e3ce65cce86c9ae82e00d215cc9f59c5386633c6.tar.gz
scummvm-rg350-e3ce65cce86c9ae82e00d215cc9f59c5386633c6.tar.bz2
scummvm-rg350-e3ce65cce86c9ae82e00d215cc9f59c5386633c6.zip
LAB: Reduce passing around of pointers to the near-global _closeDataPtr
Diffstat (limited to 'engines')
-rw-r--r--engines/lab/engine.cpp10
-rw-r--r--engines/lab/lab.h6
-rw-r--r--engines/lab/processroom.cpp36
3 files changed, 26 insertions, 26 deletions
diff --git a/engines/lab/engine.cpp b/engines/lab/engine.cpp
index b88a00024f..8c95f9631f 100644
--- a/engines/lab/engine.cpp
+++ b/engines/lab/engine.cpp
@@ -952,13 +952,13 @@ void LabEngine::performAction(uint16 actionMode, Common::Point curPos, uint16 &c
switch (actionMode) {
case 0:
// Take something.
- if (doActionRule(curPos, actionMode, _roomNum, &_closeDataPtr))
+ if (doActionRule(curPos, actionMode, _roomNum))
_curFileName = _newFileName;
else if (takeItem(curPos, &_closeDataPtr))
drawStaticMessage(kTextTakeItem);
- else if (doActionRule(curPos, kRuleActionTakeDef, _roomNum, &_closeDataPtr))
+ else if (doActionRule(curPos, kRuleActionTakeDef, _roomNum))
_curFileName = _newFileName;
- else if (doActionRule(curPos, kRuleActionTake, 0, &_closeDataPtr))
+ else if (doActionRule(curPos, kRuleActionTake, 0))
_curFileName = _newFileName;
else if (curPos.y < (_utils->vgaScaleY(149) + _utils->svgaCord(2)))
drawStaticMessage(kTextNothing);
@@ -969,9 +969,9 @@ void LabEngine::performAction(uint16 actionMode, Common::Point curPos, uint16 &c
case 2:
case 3:
// Manipulate an object, Open up a "door" or Close a "door"
- if (doActionRule(curPos, actionMode, _roomNum, &_closeDataPtr))
+ if (doActionRule(curPos, actionMode, _roomNum))
_curFileName = _newFileName;
- else if (!doActionRule(curPos, actionMode, 0, &_closeDataPtr)) {
+ else if (!doActionRule(curPos, actionMode, 0)) {
if (curPos.y < (_utils->vgaScaleY(149) + _utils->svgaCord(2)))
drawStaticMessage(kTextNothing);
}
diff --git a/engines/lab/lab.h b/engines/lab/lab.h
index 9a6ddc98c2..f0849f2ed3 100644
--- a/engines/lab/lab.h
+++ b/engines/lab/lab.h
@@ -245,12 +245,12 @@ private:
/**
* Goes through the rules if an action is taken.
*/
- bool doActionRule(Common::Point pos, int16 action, int16 roomNum, CloseDataPtr *closePtrList);
+ bool doActionRule(Common::Point pos, int16 action, int16 roomNum);
/**
* Does the work for doActionRule.
*/
- bool doActionRuleSub(int16 action, int16 roomNum, CloseDataPtr closePtr, CloseDataPtr *setCloseList, bool allowDefaults);
+ bool doActionRuleSub(int16 action, int16 roomNum, CloseDataPtr closePtr, bool allowDefaults);
/**
* Checks whether the close up is one of the special case closeups.
@@ -290,7 +290,7 @@ private:
/**
* Does the work for doActionRule.
*/
- bool doOperateRuleSub(int16 itemNum, int16 roomNum, CloseDataPtr closePtr, CloseDataPtr *setCloseList, bool allowDefaults);
+ bool doOperateRuleSub(int16 itemNum, int16 roomNum, CloseDataPtr closePtr, bool allowDefaults);
/**
* Goes through the rules if the user tries to operate an item on an object.
diff --git a/engines/lab/processroom.cpp b/engines/lab/processroom.cpp
index a7a1ee01ed..9db9dbb697 100644
--- a/engines/lab/processroom.cpp
+++ b/engines/lab/processroom.cpp
@@ -486,7 +486,7 @@ void LabEngine::doActions(const ActionList &actionList, CloseDataPtr *closePtrLi
}
}
-bool LabEngine::doActionRuleSub(int16 action, int16 roomNum, CloseDataPtr closePtr, CloseDataPtr *setCloseList, bool allowDefaults) {
+bool LabEngine::doActionRuleSub(int16 action, int16 roomNum, CloseDataPtr closePtr, bool allowDefaults) {
action++;
if (closePtr) {
@@ -504,7 +504,7 @@ bool LabEngine::doActionRuleSub(int16 action, int16 roomNum, CloseDataPtr closeP
((rule->_param2 == 0) && allowDefaults)) ||
((action == 1) && (rule->_param2 == -closePtr->_closeUpType))) {
if (checkConditions(rule->_condition)) {
- doActions(rule->_actionList, setCloseList);
+ doActions(rule->_actionList, &_closeDataPtr);
return true;
}
}
@@ -515,27 +515,27 @@ bool LabEngine::doActionRuleSub(int16 action, int16 roomNum, CloseDataPtr closeP
return false;
}
-bool LabEngine::doActionRule(Common::Point pos, int16 action, int16 roomNum, CloseDataPtr *closePtrList) {
+bool LabEngine::doActionRule(Common::Point pos, int16 action, int16 roomNum) {
if (roomNum)
_newFileName = NOFILE;
else
_newFileName = _curFileName;
- CloseDataPtr curClosePtr = getObject(pos, *closePtrList);
+ CloseDataPtr curClosePtr = getObject(pos, _closeDataPtr);
- if (doActionRuleSub(action, roomNum, curClosePtr, closePtrList, false))
+ if (doActionRuleSub(action, roomNum, curClosePtr, false))
return true;
- else if (doActionRuleSub(action, roomNum, *closePtrList, closePtrList, false))
+ else if (doActionRuleSub(action, roomNum, _closeDataPtr, false))
return true;
- else if (doActionRuleSub(action, roomNum, curClosePtr, closePtrList, true))
+ else if (doActionRuleSub(action, roomNum, curClosePtr, true))
return true;
- else if (doActionRuleSub(action, roomNum, *closePtrList, closePtrList, true))
+ else if (doActionRuleSub(action, roomNum, _closeDataPtr, true))
return true;
return false;
}
-bool LabEngine::doOperateRuleSub(int16 itemNum, int16 roomNum, CloseDataPtr closePtr, CloseDataPtr *setCloseList, bool allowDefaults) {
+bool LabEngine::doOperateRuleSub(int16 itemNum, int16 roomNum, CloseDataPtr closePtr, bool allowDefaults) {
if (closePtr)
if (closePtr->_closeUpType > 0) {
RuleList *rules = &(_rooms[roomNum]._rules);
@@ -550,7 +550,7 @@ bool LabEngine::doOperateRuleSub(int16 itemNum, int16 roomNum, CloseDataPtr clos
((rule->_param1 == itemNum) || ((rule->_param1 == 0) && allowDefaults)) &&
((rule->_param2 == closePtr->_closeUpType) || ((rule->_param2 == 0) && allowDefaults))) {
if (checkConditions(rule->_condition)) {
- doActions(rule->_actionList, setCloseList);
+ doActions(rule->_actionList, &_closeDataPtr);
return true;
}
}
@@ -564,24 +564,24 @@ bool LabEngine::doOperateRule(Common::Point pos, int16 ItemNum) {
_newFileName = NOFILE;
CloseDataPtr closePtr = getObject(pos, _closeDataPtr);
- if (doOperateRuleSub(ItemNum, _roomNum, closePtr, &_closeDataPtr, false))
+ if (doOperateRuleSub(ItemNum, _roomNum, closePtr, false))
return true;
- else if (doOperateRuleSub(ItemNum, _roomNum, _closeDataPtr, &_closeDataPtr, false))
+ else if (doOperateRuleSub(ItemNum, _roomNum, _closeDataPtr, false))
return true;
- else if (doOperateRuleSub(ItemNum, _roomNum, closePtr, &_closeDataPtr, true))
+ else if (doOperateRuleSub(ItemNum, _roomNum, closePtr, true))
return true;
- else if (doOperateRuleSub(ItemNum, _roomNum, _closeDataPtr, &_closeDataPtr, true))
+ else if (doOperateRuleSub(ItemNum, _roomNum, _closeDataPtr, true))
return true;
else {
_newFileName = _curFileName;
- if (doOperateRuleSub(ItemNum, 0, closePtr, &_closeDataPtr, false))
+ if (doOperateRuleSub(ItemNum, 0, closePtr, false))
return true;
- else if (doOperateRuleSub(ItemNum, 0, _closeDataPtr, &_closeDataPtr, false))
+ else if (doOperateRuleSub(ItemNum, 0, _closeDataPtr, false))
return true;
- else if (doOperateRuleSub(ItemNum, 0, closePtr, &_closeDataPtr, true))
+ else if (doOperateRuleSub(ItemNum, 0, closePtr, true))
return true;
- else if (doOperateRuleSub(ItemNum, 0, _closeDataPtr, &_closeDataPtr, true))
+ else if (doOperateRuleSub(ItemNum, 0, _closeDataPtr, true))
return true;
}