From d4087d790222484465de8c2dd4ed1be5e178d22e Mon Sep 17 00:00:00 2001 From: Ľubomír Remák Date: Sun, 28 Oct 2018 17:45:26 +0100 Subject: MUTATIONOFJB: Allow completion of first chapter. Implement dummy SPECIALSHOW command (skip puzzle). Fix NEWROOM command parsing. Fix use action on inventory items. Fix interaction with certain doors. --- engines/mutationofjb/commands/newroomcommand.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'engines/mutationofjb/commands/newroomcommand.cpp') diff --git a/engines/mutationofjb/commands/newroomcommand.cpp b/engines/mutationofjb/commands/newroomcommand.cpp index 0f4d214f18..32c5e72bd9 100644 --- a/engines/mutationofjb/commands/newroomcommand.cpp +++ b/engines/mutationofjb/commands/newroomcommand.cpp @@ -27,7 +27,7 @@ #include "common/str.h" /** @file - * "NEWROOM " " " " " " " + * "NEWROOM " " " " " [ " " ] * * NEWROOM changes the current scene. While doing that, it also executes STARTUP section for the new room. * However, after that, the execution goes back to the old script to finish commands after NEWROOM. @@ -39,14 +39,16 @@ namespace MutationOfJB { bool NewRoomCommandParser::parse(const Common::String &line, ScriptParseContext &, Command *&command) { - if (line.size() < 23 || !line.hasPrefix("NEWROOM")) { + if (line.size() < 19 || !line.hasPrefix("NEWROOM")) { return false; } const uint8 sceneId = atoi(line.c_str() + 8); const uint16 x = atoi(line.c_str() + 12); const uint16 y = atoi(line.c_str() + 16); - const uint8 frame = atoi(line.c_str() + 20); + uint8 frame = 0; + if (line.size() >= 21) + frame = atoi(line.c_str() + 20); command = new NewRoomCommand(sceneId, x, y, frame); return true; } -- cgit v1.2.3