diff options
| author | Thanasis Antoniou | 2019-05-23 15:05:03 +0300 |
|---|---|---|
| committer | Thanasis Antoniou | 2019-05-23 15:06:29 +0300 |
| commit | d78dd5c058d4fe86c428c88b9af0d83f0bafc19e (patch) | |
| tree | 833caf6810b7c25b60f6b9b49590cd535a472997 /engines/bladerunner/script | |
| parent | 67a29ad5b361a0752f40c432d1ab37ac7701d5b6 (diff) | |
| download | scummvm-rg350-d78dd5c058d4fe86c428c88b9af0d83f0bafc19e.tar.gz scummvm-rg350-d78dd5c058d4fe86c428c88b9af0d83f0bafc19e.tar.bz2 scummvm-rg350-d78dd5c058d4fe86c428c88b9af0d83f0bafc19e.zip | |
BLADERUNNER: Fix NR11 pathfinding
Added new method to "remove" bad objects in a scene/nr11
Removed objects, and still there, but they are renamed to "REMOVEDxx" and they won't affect obstacles and paths
Diffstat (limited to 'engines/bladerunner/script')
| -rw-r--r-- | engines/bladerunner/script/scene/nr11.cpp | 15 | ||||
| -rw-r--r-- | engines/bladerunner/script/script.cpp | 3 |
2 files changed, 17 insertions, 1 deletions
diff --git a/engines/bladerunner/script/scene/nr11.cpp b/engines/bladerunner/script/scene/nr11.cpp index 515fb7875f..c52208e181 100644 --- a/engines/bladerunner/script/scene/nr11.cpp +++ b/engines/bladerunner/script/scene/nr11.cpp @@ -70,7 +70,10 @@ void SceneScriptNR11::SceneLoaded() { Clickable_Object("CLOTHING02"); Clickable_Object("BOX27"); Clickable_Object("BOX39"); +#if BLADERUNNER_ORIGINAL_BUGS + // in our bugfixes this object is removed Clickable_Object("BOX44"); +#endif // BLADERUNNER_ORIGINAL_BUGS Clickable_Object("DRESS"); Clickable_Object("COATRACK"); Clickable_Object("COLUMN3 DETS"); @@ -85,7 +88,10 @@ void SceneScriptNR11::SceneLoaded() { Combat_Target_Object("CLOTHING02"); Combat_Target_Object("BOX27"); Combat_Target_Object("BOX39"); +#if BLADERUNNER_ORIGINAL_BUGS + // in our bugfixes this object is removed Combat_Target_Object("BOX44"); +#endif // BLADERUNNER_ORIGINAL_BUGS Combat_Target_Object("DRESS"); Combat_Target_Object("COATRACK"); Combat_Target_Object("COLUMN3 DETS"); @@ -101,7 +107,10 @@ void SceneScriptNR11::SceneLoaded() { Unclickable_Object("CLOTHING02"); Unclickable_Object("BOX27"); Unclickable_Object("BOX39"); +#if BLADERUNNER_ORIGINAL_BUGS + // in our bugfixes this object is removed Unclickable_Object("BOX44"); +#endif Unclickable_Object("DRESS"); Unclickable_Object("COATRACK"); Unclickable_Object("COLUMN3 DETS"); @@ -125,7 +134,10 @@ bool SceneScriptNR11::ClickedOn3DObject(const char *objectName, bool combatMode) if (Object_Query_Click("CLOTHING02", objectName) || Object_Query_Click("BOX27", objectName) || Object_Query_Click("BOX39", objectName) +#if BLADERUNNER_ORIGINAL_BUGS + // in our bugfixes this object is removed || Object_Query_Click("BOX44", objectName) +#endif // BLADERUNNER_ORIGINAL_BUGS || Object_Query_Click("DRESS", objectName) || Object_Query_Click("COATRACK", objectName) || Object_Query_Click("COLUMN3 DETS", objectName) @@ -410,7 +422,10 @@ void SceneScriptNR11::untargetEverything() { Un_Combat_Target_Object("CLOTHING02"); Un_Combat_Target_Object("BOX27"); Un_Combat_Target_Object("BOX39"); +#if BLADERUNNER_ORIGINAL_BUGS + // in our bugfixes this object is removed Un_Combat_Target_Object("BOX44"); +#endif // BLADERUNNER_ORIGINAL_BUGS Un_Combat_Target_Object("DRESS"); Un_Combat_Target_Object("COATRACK"); Un_Combat_Target_Object("COLUMN3 DETS"); diff --git a/engines/bladerunner/script/script.cpp b/engines/bladerunner/script/script.cpp index c8a5c609bf..c65fb03152 100644 --- a/engines/bladerunner/script/script.cpp +++ b/engines/bladerunner/script/script.cpp @@ -1507,8 +1507,9 @@ void ScriptBase::Clickable_Object(const char *objectName) { void ScriptBase::Unclickable_Object(const char *objectName) { debugC(kDebugScript, "Unclickable_Object(%s)", objectName); int objectId = _vm->_scene->findObject(objectName); - if (objectId == -1) + if (objectId == -1) { return; + } _vm->_scene->objectSetIsClickable(objectId, false, !_vm->_sceneIsLoading); } |
