[Scummvm-git-logs] scummvm master -> 65d6edf829e66751636afd481a3e94c916a6dcb5
dreammaster
dreammaster at scummvm.org
Mon Jan 16 14:22:02 CET 2017
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
65d6edf829 TITANIC: Workaround to dispense a cold chicken when the fuse is removed
Commit: 65d6edf829e66751636afd481a3e94c916a6dcb5
https://github.com/scummvm/scummvm/commit/65d6edf829e66751636afd481a3e94c916a6dcb5
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2017-01-16T08:21:32-05:00
Commit Message:
TITANIC: Workaround to dispense a cold chicken when the fuse is removed
I'm pretty certain this was the original intention of the dispensor,
as it not only makes sense, but there was code in place in the dispensor
StatusChangeMsg method that handled two different types of dispensing,
depending on whether the fuse was in place. But the code was identical;
given other nastyness and code duplication in the whole dispensor logic,
it's pretty clear that this was what was originally intended. Though
given that the dispensor fuse is present in the fusebox by default, it's
likely no-one ever played around with the dispensor with the fuse removed.
Changed paths:
engines/titanic/game/chicken_dispensor.cpp
diff --git a/engines/titanic/game/chicken_dispensor.cpp b/engines/titanic/game/chicken_dispensor.cpp
index dd87848..8a56f43 100644
--- a/engines/titanic/game/chicken_dispensor.cpp
+++ b/engines/titanic/game/chicken_dispensor.cpp
@@ -21,6 +21,7 @@
*/
#include "titanic/game/chicken_dispensor.h"
+#include "titanic/carry/chicken.h"
#include "titanic/core/project_item.h"
#include "titanic/pet_control/pet_control.h"
@@ -92,9 +93,7 @@ bool CChickenDispensor::StatusChangeMsg(CStatusChangeMsg *msg) {
playSound("z#400.wav");
} else {
playMovie(12, 16, MOVIE_NOTIFY_OBJECT | MOVIE_GAMESTATE);
- _dispensed = true;
}
- _dispenseMode = DISPENSE_NONE;
break;
default:
@@ -113,6 +112,17 @@ bool CChickenDispensor::MovieEndMsg(CMovieEndMsg *msg) {
playSound("b#50.wav", 50);
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 {
+ // WORKAROUND: If the fuse for the dispensor is removed in Titania's fusebox,
+ // make the dispensed chicken already cold
+ CChicken::_temperature = 0;
+ }
} else if (_dispensed) {
// Chicken dispensed whilst dispensor is "disabled", which basically
// spits the chicken out at high speed directly into the SuccUBus
More information about the Scummvm-git-logs
mailing list