[Scummvm-git-logs] scummvm master -> b221ea2e284c866f4f6f0154b1e913dd508544a3
AndywinXp
noreply at scummvm.org
Sun May 3 06:07:54 UTC 2026
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
b221ea2e28 LASTEXPRESS: Fix last batch of bugs in the engine
Commit: b221ea2e284c866f4f6f0154b1e913dd508544a3
https://github.com/scummvm/scummvm/commit/b221ea2e284c866f4f6f0154b1e913dd508544a3
Author: AndywinXp (andywinxp at gmail.com)
Date: 2026-05-03T08:07:44+02:00
Commit Message:
LASTEXPRESS: Fix last batch of bugs in the engine
Changed paths:
engines/lastexpress/data/archive.cpp
engines/lastexpress/game/logic.cpp
diff --git a/engines/lastexpress/data/archive.cpp b/engines/lastexpress/data/archive.cpp
index 05362c75814..c95bf74d660 100644
--- a/engines/lastexpress/data/archive.cpp
+++ b/engines/lastexpress/data/archive.cpp
@@ -270,7 +270,7 @@ void ArchiveManager::readCD(void *dstBuf, int offset, uint32 size) {
error("Error reading from file \"%s\"", "CD cache file");
}
- _cdFilePosition = (offset + readSize);
+ _cdFilePosition = (offset + size);
}
}
diff --git a/engines/lastexpress/game/logic.cpp b/engines/lastexpress/game/logic.cpp
index 365928bb92d..e8a6c29a900 100644
--- a/engines/lastexpress/game/logic.cpp
+++ b/engines/lastexpress/game/logic.cpp
@@ -117,7 +117,7 @@ void LogicManager::endGame(int type, int value, int sceneIndex, bool showScene)
_engine->_navigationEngineIsRunning = false;
_engine->getMessageManager()->clearMessageQueue();
- _engine->_stopUpdatingCharacters = false;
+ _engine->_stopUpdatingCharacters = true;
if (showScene) {
fadeToWhite();
@@ -532,7 +532,7 @@ bool LogicManager::onLowPlatform(int character) {
bool LogicManager::onKronPlatform(int character) {
return checkLoc(character, kCarKronos)
- && getCharacter(character).characterPosition.position < 7900;
+ && getCharacter(character).characterPosition.position > 7900;
}
bool LogicManager::cathInCorridor(int car) {
@@ -1955,7 +1955,7 @@ void LogicManager::queueSFX(int character, uint8 action, uint8 delay) {
sndNum = sndArray[rnd(3)];
break;
case 198:
- sndArray[0] = 198;
+ sndArray[0] = 199;
sndArray[1] = 200;
sndArray[2] = 201;
sndArray[3] = 202;
@@ -3208,7 +3208,7 @@ bool LogicManager::walk(int character, int car, int position) {
if (getCharacter(character).characterPosition.car == kCarGreenSleeping && onLowPlatform(kCharacterCath)) {
queueSFX(kCharacterCath, 14, 0);
- playChrExcuseMe(character, kCarGreenSleeping, 16);
+ playChrExcuseMe(character, kCharacterCath, 16);
bumpCath(kCarGreenSleeping, 1, 255);
playDialog(kCharacterCath, "CAT1127A" , -1, 0);
queueSFX(kCharacterCath, 15, 0);
@@ -3223,9 +3223,9 @@ bool LogicManager::walk(int character, int car, int position) {
return true;
}
- if (getCharacter(character).characterPosition.car == kCarGreenSleeping && onKronPlatform(0)) {
+ if (getCharacter(character).characterPosition.car == kCarGreenSleeping && onKronPlatform(kCharacterCath)) {
queueSFX(kCharacterCath, 14, 0);
- playChrExcuseMe(character, 0, 16);
+ playChrExcuseMe(character, kCharacterCath, 16);
bumpCath(kCarGreenSleeping, 62, 255);
playDialog(kCharacterCath, "CAT1127A" , -1, 0);
queueSFX(kCharacterCath, 15, 0);
@@ -3264,7 +3264,7 @@ bool LogicManager::walk(int character, int car, int position) {
if (getCharacter(character).characterPosition.car == kCarKronos && onKronPlatform(kCharacterCath)) {
queueSFX(kCharacterCath, 14, 0);
- playChrExcuseMe(character, 0, 16);
+ playChrExcuseMe(character, kCharacterCath, 16);
bumpCath(kCarGreenSleeping, 62, 255);
playDialog(kCharacterCath, "CAT1127A", -1, 0);
queueSFX(kCharacterCath, 15, 0);
More information about the Scummvm-git-logs
mailing list