Skip to content

Commit

Permalink
input: define photo mode toggle
Browse files Browse the repository at this point in the history
This adds a toggle input for photo mode, defaulting to F1.
  • Loading branch information
lahm86 committed Oct 5, 2024
1 parent 6047b13 commit 2e5a327
Show file tree
Hide file tree
Showing 7 changed files with 19 additions and 1 deletion.
1 change: 1 addition & 0 deletions data/tr1/ship/cfg/TR1X_gameflow.json5
Original file line number Diff line number Diff line change
Expand Up @@ -689,6 +689,7 @@
"KEYMAP_SAVE": "Quick Save",
"KEYMAP_STEP_LEFT": "Step Left",
"KEYMAP_STEP_RIGHT": "Step Right",
"KEYMAP_TOGGLE_PHOTO_MODE": "Toggle Photo Mode",
"KEYMAP_TOGGLE_UI": "Toggle UI",
"KEYMAP_TURBO_CHEAT": "Turbo Speed",
"KEYMAP_USE_BIG_MEDI": "Large Medi",
Expand Down
1 change: 1 addition & 0 deletions data/tr1/ship/cfg/TR1X_gameflow_demo_pc.json5
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,7 @@
"KEYMAP_SAVE": "Quick Save",
"KEYMAP_STEP_LEFT": "Step Left",
"KEYMAP_STEP_RIGHT": "Step Right",
"KEYMAP_TOGGLE_PHOTO_MODE": "Toggle Photo Mode",
"KEYMAP_TOGGLE_UI": "Toggle UI",
"KEYMAP_TURBO_CHEAT": "Turbo Speed",
"KEYMAP_USE_BIG_MEDI": "Large Medi",
Expand Down
1 change: 1 addition & 0 deletions data/tr1/ship/cfg/TR1X_gameflow_ub.json5
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,7 @@
"KEYMAP_SAVE": "Quick Save",
"KEYMAP_STEP_LEFT": "Step Left",
"KEYMAP_STEP_RIGHT": "Step Right",
"KEYMAP_TOGGLE_PHOTO_MODE": "Toggle Photo Mode",
"KEYMAP_TOGGLE_UI": "Toggle UI",
"KEYMAP_TURBO_CHEAT": "Turbo Speed",
"KEYMAP_USE_BIG_MEDI": "Large Medi",
Expand Down
1 change: 1 addition & 0 deletions src/tr1/game/game_string.def
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ GS_DEFINE(KEYMAP_TURBO_CHEAT, "Turbo Speed")
GS_DEFINE(KEYMAP_ENTER_CONSOLE, "Enter Console")
GS_DEFINE(KEYMAP_CHANGE_TARGET, "Change Target")
GS_DEFINE(KEYMAP_TOGGLE_UI, "Toggle UI")
GS_DEFINE(KEYMAP_TOGGLE_PHOTO_MODE, "Toggle Photo Mode")
GS_DEFINE(KEYMAP_CAMERA_FORWARD, "Camera Forward")
GS_DEFINE(KEYMAP_CAMERA_BACK, "Camera Back")
GS_DEFINE(KEYMAP_CAMERA_LEFT, "Camera Left")
Expand Down
2 changes: 2 additions & 0 deletions src/tr1/game/option/option_control.c
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@ static const TEXT_COLUMN_PLACEMENT CtrlTextPlacementNormal[] = {
{ INPUT_ROLE_OPTION, GS_ID(KEYMAP_INVENTORY), false },
{ INPUT_ROLE_PAUSE, GS_ID(KEYMAP_PAUSE), true },
{ INPUT_ROLE_CHANGE_TARGET, GS_ID(KEYMAP_CHANGE_TARGET), true },
{ INPUT_ROLE_TOGGLE_PHOTO_MODE, GS_ID(KEYMAP_TOGGLE_PHOTO_MODE), true },
{ INPUT_ROLE_CAMERA_UP, GS_ID(KEYMAP_CAMERA_UP), true },
{ INPUT_ROLE_CAMERA_DOWN, GS_ID(KEYMAP_CAMERA_DOWN), true },
{ INPUT_ROLE_CAMERA_FORWARD, GS_ID(KEYMAP_CAMERA_FORWARD), true },
Expand Down Expand Up @@ -167,6 +168,7 @@ static const TEXT_COLUMN_PLACEMENT CtrlTextPlacementCheats[] = {
{ INPUT_ROLE_OPTION, GS_ID(KEYMAP_INVENTORY), false },
{ INPUT_ROLE_PAUSE, GS_ID(KEYMAP_PAUSE), true },
{ INPUT_ROLE_CHANGE_TARGET, GS_ID(KEYMAP_CHANGE_TARGET), true },
{ INPUT_ROLE_TOGGLE_PHOTO_MODE, GS_ID(KEYMAP_TOGGLE_PHOTO_MODE), true },
{ INPUT_ROLE_CAMERA_UP, GS_ID(KEYMAP_CAMERA_UP), true },
{ INPUT_ROLE_CAMERA_DOWN, GS_ID(KEYMAP_CAMERA_DOWN), true },
{ INPUT_ROLE_CAMERA_FORWARD, GS_ID(KEYMAP_CAMERA_FORWARD), true },
Expand Down
4 changes: 3 additions & 1 deletion src/tr1/global/types.h
Original file line number Diff line number Diff line change
Expand Up @@ -969,6 +969,7 @@ typedef union INPUT_STATE {
uint64_t enter_console : 1;
uint64_t change_target : 1;
uint64_t toggle_ui : 1;
uint64_t toggle_photo_mode : 1;
};
} INPUT_STATE;

Expand Down Expand Up @@ -1011,7 +1012,8 @@ typedef enum {
INPUT_ROLE_TOGGLE_UI = 35,
INPUT_ROLE_CAMERA_UP = 36,
INPUT_ROLE_CAMERA_DOWN = 37,
INPUT_ROLE_NUMBER_OF = 38,
INPUT_ROLE_TOGGLE_PHOTO_MODE = 38,
INPUT_ROLE_NUMBER_OF = 39,
} INPUT_ROLE;

typedef enum {
Expand Down
10 changes: 10 additions & 0 deletions src/tr1/specific/s_input.c
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ static INPUT_SCANCODE m_Layout[INPUT_LAYOUT_NUMBER_OF][INPUT_ROLE_NUMBER_OF] = {
SDL_SCANCODE_H, // INPUT_ROLE_TOGGLE_UI
SDL_SCANCODE_Q, // INPUT_ROLE_CAMERA_UP
SDL_SCANCODE_E, // INPUT_ROLE_CAMERA_DOWN
SDL_SCANCODE_F1, // INPUT_ROLE_TOGGLE_PHOTO_MODE
},

// custom user controls
Expand Down Expand Up @@ -109,6 +110,7 @@ static INPUT_SCANCODE m_Layout[INPUT_LAYOUT_NUMBER_OF][INPUT_ROLE_NUMBER_OF] = {
SDL_SCANCODE_H, // INPUT_ROLE_TOGGLE_UI
SDL_SCANCODE_Q, // INPUT_ROLE_CAMERA_UP
SDL_SCANCODE_E, // INPUT_ROLE_CAMERA_DOWN
SDL_SCANCODE_F1, // INPUT_ROLE_TOGGLE_PHOTO_MODE
},

{
Expand Down Expand Up @@ -150,6 +152,7 @@ static INPUT_SCANCODE m_Layout[INPUT_LAYOUT_NUMBER_OF][INPUT_ROLE_NUMBER_OF] = {
SDL_SCANCODE_H, // INPUT_ROLE_TOGGLE_UI
SDL_SCANCODE_Q, // INPUT_ROLE_CAMERA_UP
SDL_SCANCODE_E, // INPUT_ROLE_CAMERA_DOWN
SDL_SCANCODE_F1, // INPUT_ROLE_TOGGLE_PHOTO_MODE
},

{
Expand Down Expand Up @@ -191,6 +194,7 @@ static INPUT_SCANCODE m_Layout[INPUT_LAYOUT_NUMBER_OF][INPUT_ROLE_NUMBER_OF] = {
SDL_SCANCODE_H, // INPUT_ROLE_TOGGLE_UI
SDL_SCANCODE_Q, // INPUT_ROLE_CAMERA_UP
SDL_SCANCODE_E, // INPUT_ROLE_CAMERA_DOWN
SDL_SCANCODE_F1, // INPUT_ROLE_TOGGLE_PHOTO_MODE
}
// clang-format on
};
Expand Down Expand Up @@ -237,6 +241,7 @@ static CONTROLLER_MAP
{ BT_BUTTON, {SDL_CONTROLLER_BUTTON_INVALID}, 0 }, // INPUT_ROLE_TOGGLE_UI
{ BT_AXIS, {SDL_CONTROLLER_AXIS_LEFTY}, -1 }, // INPUT_ROLE_CAMERA_UP
{ BT_AXIS, {SDL_CONTROLLER_AXIS_LEFTY}, 1 }, // INPUT_ROLE_CAMERA_DOWN
{ BT_BUTTON, {SDL_CONTROLLER_BUTTON_INVALID}, 0 }, // INPUT_ROLE_TOGGLE_PHOTO_MODE
},

{
Expand Down Expand Up @@ -278,6 +283,7 @@ static CONTROLLER_MAP
{ BT_BUTTON, {SDL_CONTROLLER_BUTTON_INVALID}, 0 }, // INPUT_ROLE_TOGGLE_UI
{ BT_AXIS, {SDL_CONTROLLER_AXIS_LEFTY}, -1 }, // INPUT_ROLE_CAMERA_UP
{ BT_AXIS, {SDL_CONTROLLER_AXIS_LEFTY}, 1 }, // INPUT_ROLE_CAMERA_DOWN
{ BT_BUTTON, {SDL_CONTROLLER_BUTTON_INVALID}, 0 }, // INPUT_ROLE_TOGGLE_PHOTO_MODE
},

{
Expand Down Expand Up @@ -319,6 +325,7 @@ static CONTROLLER_MAP
{ BT_BUTTON, {SDL_CONTROLLER_BUTTON_INVALID}, 0 }, // INPUT_ROLE_TOGGLE_UI
{ BT_AXIS, {SDL_CONTROLLER_AXIS_LEFTY}, -1 }, // INPUT_ROLE_CAMERA_UP
{ BT_AXIS, {SDL_CONTROLLER_AXIS_LEFTY}, 1 }, // INPUT_ROLE_CAMERA_DOWN
{ BT_BUTTON, {SDL_CONTROLLER_BUTTON_INVALID}, 0 }, // INPUT_ROLE_TOGGLE_PHOTO_MODE
},

{
Expand Down Expand Up @@ -360,6 +367,7 @@ static CONTROLLER_MAP
{ BT_BUTTON, {SDL_CONTROLLER_BUTTON_INVALID}, 0 }, // INPUT_ROLE_TOGGLE_UI
{ BT_AXIS, {SDL_CONTROLLER_AXIS_LEFTY}, -1 }, // INPUT_ROLE_CAMERA_UP
{ BT_AXIS, {SDL_CONTROLLER_AXIS_LEFTY}, 1 }, // INPUT_ROLE_CAMERA_DOWN
{ BT_BUTTON, {SDL_CONTROLLER_BUTTON_INVALID}, 0 }, // INPUT_ROLE_TOGGLE_PHOTO_MODE
}
// clang-format on
};
Expand Down Expand Up @@ -873,6 +881,7 @@ static INPUT_STATE M_GetControllerState(
state.roll |= M_GetBindState(INPUT_ROLE_ROLL, cntlr_layout_num);
state.option |= M_GetBindState(INPUT_ROLE_OPTION, cntlr_layout_num);
state.pause |= M_GetBindState(INPUT_ROLE_PAUSE, cntlr_layout_num);
state.toggle_photo_mode |= M_GetBindState(INPUT_ROLE_TOGGLE_PHOTO_MODE, cntlr_layout_num);
state.camera_up |= M_GetBindState(INPUT_ROLE_CAMERA_UP, cntlr_layout_num);
state.camera_down |= M_GetBindState(INPUT_ROLE_CAMERA_DOWN, cntlr_layout_num);
state.camera_forward |= M_GetBindState(INPUT_ROLE_CAMERA_FORWARD, cntlr_layout_num);
Expand Down Expand Up @@ -974,6 +983,7 @@ INPUT_STATE S_Input_GetCurrentState(
linput.roll = M_Key(INPUT_ROLE_ROLL, layout_num);
linput.option = M_Key(INPUT_ROLE_OPTION, layout_num);
linput.pause = M_Key(INPUT_ROLE_PAUSE, layout_num);
linput.toggle_photo_mode = M_Key(INPUT_ROLE_TOGGLE_PHOTO_MODE, layout_num);
linput.camera_up = M_Key(INPUT_ROLE_CAMERA_UP, layout_num);
linput.camera_down = M_Key(INPUT_ROLE_CAMERA_DOWN, layout_num);
linput.camera_forward = M_Key(INPUT_ROLE_CAMERA_FORWARD, layout_num);
Expand Down

0 comments on commit 2e5a327

Please sign in to comment.