aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorMatthew Hoops2011-10-09 23:32:40 -0400
committerMatthew Hoops2011-10-09 23:32:40 -0400
commit82cadf68e8bcc4cb98af317ab31ad53928eac1b8 (patch)
treecd97013b27aae33035a53488b954d38ff6fa6f1b /engines
parent5dd625ebfbfd3c79bf644b1234a1de5732c53980 (diff)
downloadscummvm-rg350-82cadf68e8bcc4cb98af317ab31ad53928eac1b8.tar.gz
scummvm-rg350-82cadf68e8bcc4cb98af317ab31ad53928eac1b8.tar.bz2
scummvm-rg350-82cadf68e8bcc4cb98af317ab31ad53928eac1b8.zip
PEGASUS: Fix the historical log comparison screen
Original code does not have cursorSpot null checks, so it looks like Codewarrior may have handled this strangely...
Diffstat (limited to 'engines')
-rwxr-xr-xengines/pegasus/neighborhood/tsa/fulltsa.cpp93
1 files changed, 51 insertions, 42 deletions
diff --git a/engines/pegasus/neighborhood/tsa/fulltsa.cpp b/engines/pegasus/neighborhood/tsa/fulltsa.cpp
index 1656e9f068..aaa7cf178b 100755
--- a/engines/pegasus/neighborhood/tsa/fulltsa.cpp
+++ b/engines/pegasus/neighborhood/tsa/fulltsa.cpp
@@ -2876,35 +2876,40 @@ void FullTSA::handleInput(const Input &input, const Hotspot *cursorSpot) {
case kRobotsAtCommandCenter:
case kRobotsAtFrontDoor:
case kRobotsAtReadyRoom:
- switch (cursorSpot->getObjectID()) {
- case kTSA0BEastCompareNoradSpotID:
- _sprite1.setCurrentFrameIndex(0);
- _sprite2.setCurrentFrameIndex(0);
- _sprite1.show();
- _sprite2.show();
- break;
- case kTSA0BEastCompareMarsSpotID:
- _sprite1.setCurrentFrameIndex(1);
- _sprite2.setCurrentFrameIndex(1);
- _sprite1.show();
- _sprite2.show();
- break;
- case kTSA0BEastCompareCaldoriaSpotID:
- _sprite1.setCurrentFrameIndex(2);
- _sprite2.setCurrentFrameIndex(2);
- _sprite1.show();
- _sprite2.show();
- break;
- case kTSA0BEastCompareWSCSpotID:
- _sprite1.setCurrentFrameIndex(3);
- _sprite2.setCurrentFrameIndex(3);
- _sprite1.show();
- _sprite2.show();
- break;
- default:
+ if (cursorSpot) {
+ switch (cursorSpot->getObjectID()) {
+ case kTSA0BEastCompareNoradSpotID:
+ _sprite1.setCurrentFrameIndex(0);
+ _sprite2.setCurrentFrameIndex(0);
+ _sprite1.show();
+ _sprite2.show();
+ break;
+ case kTSA0BEastCompareMarsSpotID:
+ _sprite1.setCurrentFrameIndex(1);
+ _sprite2.setCurrentFrameIndex(1);
+ _sprite1.show();
+ _sprite2.show();
+ break;
+ case kTSA0BEastCompareCaldoriaSpotID:
+ _sprite1.setCurrentFrameIndex(2);
+ _sprite2.setCurrentFrameIndex(2);
+ _sprite1.show();
+ _sprite2.show();
+ break;
+ case kTSA0BEastCompareWSCSpotID:
+ _sprite1.setCurrentFrameIndex(3);
+ _sprite2.setCurrentFrameIndex(3);
+ _sprite1.show();
+ _sprite2.show();
+ break;
+ default:
+ _sprite1.hide();
+ _sprite2.hide();
+ break;
+ }
+ } else {
_sprite1.hide();
_sprite2.hide();
- break;
}
break;
}
@@ -2916,22 +2921,26 @@ void FullTSA::handleInput(const Input &input, const Hotspot *cursorSpot) {
case kRobotsAtCommandCenter:
case kRobotsAtFrontDoor:
case kRobotsAtReadyRoom:
- switch (cursorSpot->getObjectID()) {
- case kTSA0BNorthRobotsToCommandCenterSpotID:
- _sprite1.setCurrentFrameIndex(kRedirectionCCRolloverSprite);
- _sprite1.show();
- break;
- case kTSA0BNorthRobotsToReadyRoomSpotID:
- _sprite1.setCurrentFrameIndex(kRedirectionRRRolloverSprite);
- _sprite1.show();
- break;
- case kTSA0BNorthRobotsToFrontDoorSpotID:
- _sprite1.setCurrentFrameIndex(kRedirectionFDRolloverSprite);
- _sprite1.show();
- break;
- default:
+ if (cursorSpot) {
+ switch (cursorSpot->getObjectID()) {
+ case kTSA0BNorthRobotsToCommandCenterSpotID:
+ _sprite1.setCurrentFrameIndex(kRedirectionCCRolloverSprite);
+ _sprite1.show();
+ break;
+ case kTSA0BNorthRobotsToReadyRoomSpotID:
+ _sprite1.setCurrentFrameIndex(kRedirectionRRRolloverSprite);
+ _sprite1.show();
+ break;
+ case kTSA0BNorthRobotsToFrontDoorSpotID:
+ _sprite1.setCurrentFrameIndex(kRedirectionFDRolloverSprite);
+ _sprite1.show();
+ break;
+ default:
+ _sprite1.hide();
+ break;
+ }
+ } else {
_sprite1.hide();
- break;
}
break;
}