diff options
author | Matthew Hoops | 2011-09-22 20:17:09 -0400 |
---|---|---|
committer | Matthew Hoops | 2011-09-22 20:17:09 -0400 |
commit | 84731ef872ee3e704e0ed6d6ca2e88509c859d7b (patch) | |
tree | 0c92230cd6d29d31f1d8071c0e6876ed21984106 /engines/pegasus/pegasus.cpp | |
parent | cde643cc17ed60840f51def25e249ff75cf456f2 (diff) | |
download | scummvm-rg350-84731ef872ee3e704e0ed6d6ca2e88509c859d7b.tar.gz scummvm-rg350-84731ef872ee3e704e0ed6d6ca2e88509c859d7b.tar.bz2 scummvm-rg350-84731ef872ee3e704e0ed6d6ca2e88509c859d7b.zip |
PEGASUS: Add the EnergyMonitor class
Diffstat (limited to 'engines/pegasus/pegasus.cpp')
-rw-r--r-- | engines/pegasus/pegasus.cpp | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/engines/pegasus/pegasus.cpp b/engines/pegasus/pegasus.cpp index 368dc298fb..816d01cf55 100644 --- a/engines/pegasus/pegasus.cpp +++ b/engines/pegasus/pegasus.cpp @@ -51,6 +51,7 @@ PegasusEngine::PegasusEngine(OSystem *syst, const PegasusGameDescription *gamede _continuePoint = 0; _saveAllowed = _loadAllowed = true; _gameMenu = 0; + _deathReason = kDeathStranded; } PegasusEngine::~PegasusEngine() { @@ -359,11 +360,11 @@ bool PegasusEngine::loadFromStream(Common::ReadStream *stream) { // Game State GameState.readGameState(stream); - // TODO: Energy - stream->readUint32BE(); + // Energy + setLastEnergyValue(stream->readUint32BE() >> 16); - // TODO: Death reason - stream->readByte(); + // Death reason + setEnergyDeathReason(stream->readByte()); // TODO: This is as far as we can go right now return true; @@ -403,11 +404,11 @@ bool PegasusEngine::writeToStream(Common::WriteStream *stream, int saveType) { // Game State GameState.writeGameState(stream); - // TODO: Energy - stream->writeUint32BE(0); + // Energy + stream->writeUint32BE(getSavedEnergyValue() << 16); - // TODO: Death reason - stream->writeByte(0); + // Death reason + stream->writeByte(getEnergyDeathReason()); // Items g_allItems.writeToStream(stream); @@ -823,4 +824,9 @@ void PegasusEngine::refreshDisplay() { _gfx->updateDisplay(); } +void PegasusEngine::resetEnergyDeathReason() { + // TODO! + _deathReason = kDeathStranded; +} + } // End of namespace Pegasus |