aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2017-08-19 20:30:43 -0400
committerPaul Gilbert2017-08-19 20:30:43 -0400
commita21e8b9de2e4404ba10b01ddb3e87dd31e4a0895 (patch)
treef460a5e7187595fa814f88a36dd1d102dbe6b30c
parent8e31ffa2328bbbfa358530d231dfa5c140b3f15a (diff)
downloadscummvm-rg350-a21e8b9de2e4404ba10b01ddb3e87dd31e4a0895.tar.gz
scummvm-rg350-a21e8b9de2e4404ba10b01ddb3e87dd31e4a0895.tar.bz2
scummvm-rg350-a21e8b9de2e4404ba10b01ddb3e87dd31e4a0895.zip
TITANIC: Fix getting chicken after not picking up a previous one
When you dispense a chicken, but don't pick it up and leave, the chicken is returned to the dispensor. But previously you couldn't then get another chicken, though you should be able to get one.
-rw-r--r--engines/titanic/game/chicken_dispensor.cpp9
1 files changed, 2 insertions, 7 deletions
diff --git a/engines/titanic/game/chicken_dispensor.cpp b/engines/titanic/game/chicken_dispensor.cpp
index 89873dcc4d..d44bc7157b 100644
--- a/engines/titanic/game/chicken_dispensor.cpp
+++ b/engines/titanic/game/chicken_dispensor.cpp
@@ -104,7 +104,7 @@ bool CChickenDispensor::StatusChangeMsg(CStatusChangeMsg *msg) {
}
bool CChickenDispensor::MovieEndMsg(CMovieEndMsg *msg) {
- int movieFrame = getMovieFrame();
+ int movieFrame = msg->_endFrame;
if (movieFrame == 16) {
// Dispensed a chicken
@@ -113,12 +113,7 @@ bool CChickenDispensor::MovieEndMsg(CMovieEndMsg *msg) {
CActMsg actMsg("Dispense Chicken");
actMsg.execute("Chicken");
- if (_dispenseMode == DISPENSE_HOT) {
- // A properly hot chicken is dispensed, no further ones will be
- // until the current one is used up, and the fuse in Titania's
- // fusebox is removed and replaced
- _dispenseMode = DISPENSE_NONE;
- } else {
+ if (_dispenseMode != DISPENSE_HOT) {
// WORKAROUND: If the fuse for the dispensor is removed in Titania's fusebox,
// make the dispensed chicken already cold
CChicken::_temperature = 0;