aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2017-01-15 19:23:49 -0500
committerPaul Gilbert2017-01-15 19:23:49 -0500
commitad1bb852eb74c336c84bedf2999c0040bf7a04bd (patch)
tree3b732c2683c14df075afb7dc2e16e9343f9297b7
parent8b5196da53f2e9f92f5a6f22a1073833e51123f9 (diff)
downloadscummvm-rg350-ad1bb852eb74c336c84bedf2999c0040bf7a04bd.tar.gz
scummvm-rg350-ad1bb852eb74c336c84bedf2999c0040bf7a04bd.tar.bz2
scummvm-rg350-ad1bb852eb74c336c84bedf2999c0040bf7a04bd.zip
TITANIC: Fix SuccUBus not eating chicken when it has condiments
-rw-r--r--engines/titanic/carry/chicken.cpp3
-rw-r--r--engines/titanic/npcs/succubus.cpp5
2 files changed, 5 insertions, 3 deletions
diff --git a/engines/titanic/carry/chicken.cpp b/engines/titanic/carry/chicken.cpp
index e0ca055a9c..e3577f2fb8 100644
--- a/engines/titanic/carry/chicken.cpp
+++ b/engines/titanic/carry/chicken.cpp
@@ -131,8 +131,7 @@ bool CChicken::ActMsg(CActMsg *msg) {
loadFrame(3);
_field12C = 0;
_visibleFrame = 3;
- }
- else if (msg->_action == "Dispense Chicken") {
+ } else if (msg->_action == "Dispense Chicken") {
_condiment = "None";
_field13C = 0;
_field12C = 1;
diff --git a/engines/titanic/npcs/succubus.cpp b/engines/titanic/npcs/succubus.cpp
index 1d8e0e4f13..b69bfbce4c 100644
--- a/engines/titanic/npcs/succubus.cpp
+++ b/engines/titanic/npcs/succubus.cpp
@@ -281,7 +281,7 @@ bool CSuccUBus::SubAcceptCCarryMsg(CSubAcceptCCarryMsg *msg) {
pet->phonographAction("");
CChicken *chicken = dynamic_cast<CChicken *>(item);
- bool chickenFlag = chicken ? chicken->_condiment != "None" : false;
+ bool chickenFlag = chicken ? chicken->_condiment == "None" : false;
item->setVisible(false);
if (_startFrame1 >= 0) {
@@ -290,6 +290,7 @@ bool CSuccUBus::SubAcceptCCarryMsg(CSubAcceptCCarryMsg *msg) {
}
if (!chickenFlag) {
+ // Not chicken, or chicken with condiments
_field188 = 1;
item->addMail(roomFlags);
petSetArea(PET_REMOTE);
@@ -297,6 +298,8 @@ bool CSuccUBus::SubAcceptCCarryMsg(CSubAcceptCCarryMsg *msg) {
CSUBTransition transMsg;
transMsg.execute(this);
} else {
+ // Chicken without condiments was passed to SuccUBus, so it'll
+ // eat it immediately
if (_okStartFrame >= 0) {
startTalking(this, 70219, findView());
playMovie(_okStartFrame, _okEndFrame, 0);