diff options
author | Kamil Zbrog | 2014-03-29 22:13:07 +0100 |
---|---|---|
committer | Kamil Zbrog | 2014-03-29 22:13:07 +0100 |
commit | 5ffa58dba7a941249af9ca8c1bd229c310fb296b (patch) | |
tree | 49faae8eb3424c32d890b4d3cd1eefeb11fc3cd9 /engines/pegasus | |
parent | 8eac80cfc59c34299899ebe18a3b0582ef76e0d2 (diff) | |
parent | 620411bfebe72fb0f60c4d8f64558be088cff58d (diff) | |
download | scummvm-rg350-5ffa58dba7a941249af9ca8c1bd229c310fb296b.tar.gz scummvm-rg350-5ffa58dba7a941249af9ca8c1bd229c310fb296b.tar.bz2 scummvm-rg350-5ffa58dba7a941249af9ca8c1bd229c310fb296b.zip |
Merge remote-tracking branch 'sync/master' into prince-malik
Diffstat (limited to 'engines/pegasus')
-rw-r--r-- | engines/pegasus/cursor.cpp | 6 | ||||
-rw-r--r-- | engines/pegasus/neighborhood/tsa/fulltsa.cpp | 22 | ||||
-rw-r--r-- | engines/pegasus/neighborhood/tsa/tinytsa.cpp | 22 | ||||
-rw-r--r-- | engines/pegasus/pegasus.cpp | 11 | ||||
-rw-r--r-- | engines/pegasus/pegasus.h | 1 | ||||
-rw-r--r-- | engines/pegasus/surface.cpp | 4 |
6 files changed, 41 insertions, 25 deletions
diff --git a/engines/pegasus/cursor.cpp b/engines/pegasus/cursor.cpp index ad0d2c2d7d..602ae88068 100644 --- a/engines/pegasus/cursor.cpp +++ b/engines/pegasus/cursor.cpp @@ -28,7 +28,7 @@ #include "common/system.h" #include "graphics/cursorman.h" #include "graphics/surface.h" -#include "graphics/decoders/pict.h" +#include "image/pict.h" #include "pegasus/cursor.h" #include "pegasus/graphics.h" @@ -148,7 +148,7 @@ void Cursor::loadCursorImage(CursorInfo &cursorInfo) { Common::SeekableReadStream *pictStream = vm->_resFork->getResource(MKTAG('P', 'I', 'C', 'T'), cursorInfo.tag + 1000); if (pictStream) { - Graphics::PICTDecoder pict; + Image::PICTDecoder pict; if (!pict.loadStream(*pictStream)) error("Failed to decode cursor PICT %d", cursorInfo.tag + 1000); @@ -166,7 +166,7 @@ void Cursor::loadCursorImage(CursorInfo &cursorInfo) { error("Failed to find color icon %d", cursorInfo.tag); // PixMap section - Graphics::PICTDecoder::PixMap pixMap = Graphics::PICTDecoder::readPixMap(*cicnStream); + Image::PICTDecoder::PixMap pixMap = Image::PICTDecoder::readPixMap(*cicnStream); // Mask section cicnStream->readUint32BE(); // mask baseAddr diff --git a/engines/pegasus/neighborhood/tsa/fulltsa.cpp b/engines/pegasus/neighborhood/tsa/fulltsa.cpp index 99efe10272..75f652ad56 100644 --- a/engines/pegasus/neighborhood/tsa/fulltsa.cpp +++ b/engines/pegasus/neighborhood/tsa/fulltsa.cpp @@ -2691,16 +2691,18 @@ void FullTSA::receiveNotification(Notification *notification, const Notification } break; case kTSA37DownloadToOpMemReview: - switch (GameState.getTSAState()) { - case kPlayerOnWayToNorad: - g_opticalChip->playOpMemMovie(kPoseidonSpotID); - break; - case kPlayerOnWayToMars: - g_opticalChip->playOpMemMovie(kAriesSpotID); - break; - case kPlayerOnWayToWSC: - g_opticalChip->playOpMemMovie(kMercurySpotID); - break; + if (_vm->itemInBiochips(kOpticalBiochip)) { + switch (GameState.getTSAState()) { + case kPlayerOnWayToNorad: + g_opticalChip->playOpMemMovie(kPoseidonSpotID); + break; + case kPlayerOnWayToMars: + g_opticalChip->playOpMemMovie(kAriesSpotID); + break; + case kPlayerOnWayToWSC: + g_opticalChip->playOpMemMovie(kMercurySpotID); + break; + } } if (GameState.allTimeZonesFinished()) { diff --git a/engines/pegasus/neighborhood/tsa/tinytsa.cpp b/engines/pegasus/neighborhood/tsa/tinytsa.cpp index 0d11f5d904..0326c7f2ee 100644 --- a/engines/pegasus/neighborhood/tsa/tinytsa.cpp +++ b/engines/pegasus/neighborhood/tsa/tinytsa.cpp @@ -372,16 +372,18 @@ void TinyTSA::receiveNotification(Notification *notification, const Notification } break; case kTinyTSA37DownloadToOpMemReview: - switch (GameState.getTSAState()) { - case kPlayerOnWayToNorad: - g_opticalChip->playOpMemMovie(kPoseidonSpotID); - break; - case kPlayerOnWayToMars: - g_opticalChip->playOpMemMovie(kAriesSpotID); - break; - case kPlayerOnWayToWSC: - g_opticalChip->playOpMemMovie(kMercurySpotID); - break; + if (_vm->itemInBiochips(kOpticalBiochip)) { + switch (GameState.getTSAState()) { + case kPlayerOnWayToNorad: + g_opticalChip->playOpMemMovie(kPoseidonSpotID); + break; + case kPlayerOnWayToMars: + g_opticalChip->playOpMemMovie(kAriesSpotID); + break; + case kPlayerOnWayToWSC: + g_opticalChip->playOpMemMovie(kMercurySpotID); + break; + } } requestExtraSequence(kTinyTSA37OpMemReviewToMainMenu, kExtraCompletedFlag, kFilterNoInput); diff --git a/engines/pegasus/pegasus.cpp b/engines/pegasus/pegasus.cpp index 0148470cd5..c5edd34a01 100644 --- a/engines/pegasus/pegasus.cpp +++ b/engines/pegasus/pegasus.cpp @@ -431,6 +431,8 @@ void PegasusEngine::removeTimeBase(TimeBase *timeBase) { bool PegasusEngine::loadFromStream(Common::SeekableReadStream *stream) { // Dispose currently running stuff + lowerInventoryDrawerSync(); + lowerBiochipDrawerSync(); useMenu(0); useNeighborhood(0); removeAllItemsFromInventory(); @@ -1460,6 +1462,15 @@ void PegasusEngine::throwAwayEverything() { g_interface = 0; } +InputBits PegasusEngine::getInputFilter() { + InputBits filter = InputHandler::getInputFilter(); + + if (isPaused()) + return filter & ~JMPPPInput::getItemPanelsInputFilter(); + + return filter; +} + void PegasusEngine::processShell() { checkCallBacks(); checkNotifications(); diff --git a/engines/pegasus/pegasus.h b/engines/pegasus/pegasus.h index 59637e38df..fb66eb7586 100644 --- a/engines/pegasus/pegasus.h +++ b/engines/pegasus/pegasus.h @@ -272,6 +272,7 @@ private: uint getNeighborhoodCD(const NeighborhoodID neighborhood) const; uint _currentCD; void initKeymap(); + InputBits getInputFilter(); // Menu GameMenu *_gameMenu; diff --git a/engines/pegasus/surface.cpp b/engines/pegasus/surface.cpp index cdcb3c6e79..cb1e2e7bcc 100644 --- a/engines/pegasus/surface.cpp +++ b/engines/pegasus/surface.cpp @@ -28,7 +28,7 @@ #include "common/stream.h" #include "common/system.h" #include "graphics/surface.h" -#include "graphics/decoders/pict.h" +#include "image/pict.h" #include "video/video_decoder.h" #include "pegasus/pegasus.h" @@ -101,7 +101,7 @@ void Surface::getImageFromPICTResource(Common::MacResManager *resFork, uint16 id } bool Surface::getImageFromPICTStream(Common::SeekableReadStream *stream) { - Graphics::PICTDecoder pict; + Image::PICTDecoder pict; if (!pict.loadStream(*stream)) return false; |