diff --git a/docs/tr2/CHANGELOG.md b/docs/tr2/CHANGELOG.md index 7940da317..5c4264f19 100644 --- a/docs/tr2/CHANGELOG.md +++ b/docs/tr2/CHANGELOG.md @@ -8,6 +8,7 @@ - added an optional fix for drawing a free flare during the underwater pickup animation (#2123) - added an optional fix for Lara drifting into walls when collecting underwater items (#2096) - fixed Lara prioritising throwing a spent flare while mid-air, so to avoid missing ledge grabs (#1989) +- fixed Lara at times not being able to jump immediately after going from her walking to running animation (#1587) - fixed software renderer not applying underwater tint (#2066, regression from 0.7) - fixed some enemies not looking at Lara (#2080, regression from 0.6) - fixed the camera getting stuck at the start of Home Sweet Home (#2129, regression from 0.7) diff --git a/docs/tr2/README.md b/docs/tr2/README.md index 7fa253962..c3e3a35fa 100644 --- a/docs/tr2/README.md +++ b/docs/tr2/README.md @@ -53,6 +53,7 @@ game with new enhancements and features. - fixed exiting the game with Alt+F4 not immediately working in cutscenes - fixed a crash when trying to draw too many rooms at once - fixed Lara prioritising throwing a spent flare while mid-air, so to avoid missing ledge grabs +- fixed Lara at times not being able to jump immediately after going from her walking to running animation - fixed the following floor data issues: - **Opera House**: fixed the trigger under item 203 to trigger it rather than item 204 - **Wreck of the Maria Doria**: fixed room 98 not having water diff --git a/src/tr2/config.h b/src/tr2/config.h index a7ff77a58..3e7ed1f59 100644 --- a/src/tr2/config.h +++ b/src/tr2/config.h @@ -37,6 +37,7 @@ typedef struct { bool fix_pickup_drift_glitch; bool fix_floor_data_issues; bool fix_flare_throw_priority; + bool fix_walk_run_jump; bool enable_cheats; bool enable_console; bool enable_fmv; diff --git a/src/tr2/config_map.def b/src/tr2/config_map.def index 222317eb9..e8a5a4743 100644 --- a/src/tr2/config_map.def +++ b/src/tr2/config_map.def @@ -6,6 +6,7 @@ CFG_BOOL(g_Config, gameplay.fix_free_flare_glitch, false) CFG_BOOL(g_Config, gameplay.fix_pickup_drift_glitch, false) CFG_BOOL(g_Config, gameplay.fix_floor_data_issues, true) CFG_BOOL(g_Config, gameplay.fix_flare_throw_priority, true) +CFG_BOOL(g_Config, gameplay.fix_walk_run_jump, true) CFG_BOOL(g_Config, gameplay.enable_cheats, false) CFG_BOOL(g_Config, gameplay.enable_console, true) CFG_BOOL(g_Config, gameplay.enable_fmv, true) diff --git a/src/tr2/game/lara/state.c b/src/tr2/game/lara/state.c index cfafeafd8..ddea93a28 100644 --- a/src/tr2/game/lara/state.c +++ b/src/tr2/game/lara/state.c @@ -1,5 +1,6 @@ #include "game/lara/state.h" +#include "config.h" #include "game/input.h" #include "game/inventory/backpack.h" #include "game/lara/control.h" @@ -60,6 +61,9 @@ void Lara_State_Walk(ITEM *item, COLL_INFO *coll) } else if (g_Input.slow) { item->goal_anim_state = LS_WALK; } else { + if (g_Config.gameplay.fix_walk_run_jump) { + m_JumpPermitted = true; + } item->goal_anim_state = LS_RUN; } } else { diff --git a/tools/tr2/config/TR2X_ConfigTool/Resources/Lang/en.json b/tools/tr2/config/TR2X_ConfigTool/Resources/Lang/en.json index 783c55b1d..444d89435 100644 --- a/tools/tr2/config/TR2X_ConfigTool/Resources/Lang/en.json +++ b/tools/tr2/config/TR2X_ConfigTool/Resources/Lang/en.json @@ -62,6 +62,10 @@ "Title": "Fix flare throwing priority", "Description": "Fixes Lara prioritising throwing a spent flare while in mid-air, which can lead to being unable to grab ledges." }, + "fix_walk_run_jump": { + "Title": "Fix walk-run-jump breaking", + "Description": "Fixes Lara at times not being able to jump immediately after going from her walking to running animation." + }, "fix_floor_data_issues": { "Title": "Fix floor data issues", "Description": "Fixes original issues with floor data/triggers." diff --git a/tools/tr2/config/TR2X_ConfigTool/Resources/specification.json b/tools/tr2/config/TR2X_ConfigTool/Resources/specification.json index 7d1991091..8c2e36d50 100644 --- a/tools/tr2/config/TR2X_ConfigTool/Resources/specification.json +++ b/tools/tr2/config/TR2X_ConfigTool/Resources/specification.json @@ -32,6 +32,11 @@ "DataType": "Bool", "DefaultValue": true }, + { + "Field": "fix_walk_run_jump", + "DataType": "Bool", + "DefaultValue": true + }, { "Field": "fix_floor_data_issues", "DataType": "Bool",