diff --git a/src/deh_tables.c b/src/deh_tables.c index 1eaf74e8f..665bb0453 100644 --- a/src/deh_tables.c +++ b/src/deh_tables.c @@ -747,6 +747,7 @@ struct menu_routine_s const MENU_ROUTINES[] = { { "ASSIGNJOYSTICK", &MR_AssignJoystick }, { "HANDLEMONITORTOGGLES", &MR_HandleMonitorToggles }, { "RESTARTAUDIO", &MR_RestartAudio }, + { "CAMERASETUP", &MR_CameraSetup }, #ifdef HAVE_DISCORDRPC { "HANDLEDISCORDREQUESTS", &MR_HandleDiscordRequests }, #endif diff --git a/src/info/menus.h b/src/info/menus.h index febb36a16..b71459fc2 100644 --- a/src/info/menus.h +++ b/src/info/menus.h @@ -42,10 +42,7 @@ _(OP_GAMEHUD) _(OP_OFFSET) _(OP_CAMERA) -_(OP_P1CAMERA) -_(OP_P2CAMERA) -_(OP_P3CAMERA) -_(OP_P4CAMERA) +_(OP_CAMERASETUP) _(OP_GAME) _(OP_BLANKARTGAME) diff --git a/src/m_menu.c b/src/m_menu.c index d8111121f..b24639138 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -7404,6 +7404,19 @@ INT32 MR_HandleVideoMode(INT32 ch) return true; } +INT32 MR_CameraSetup(INT32 arg) +{ + if (arg < 0 || arg >= MAXSPLITSCREENPLAYERS) + return false; + + M_SetItemCvar(MN_OP_CAMERASETUP, "FLIPCAM", &cv_flipcam[arg]); + M_SetItemCvar(MN_OP_CAMERASETUP, "CAMDISTANCE", &cv_cam_dist[arg]); + M_SetItemCvar(MN_OP_CAMERASETUP, "CAMHEIGHT", &cv_cam_height[arg]); + M_SetItemCvar(MN_OP_CAMERASETUP, "CAMSPEED", &cv_cam_speed[arg]); + M_SetItemCvar(MN_OP_CAMERASETUP, "CHASECAM", &cv_chasecam[arg]); + return true; +} + // =============== // Monitor Toggles // =============== diff --git a/src/m_menu.h b/src/m_menu.h index 85e1f6578..00592d7e9 100644 --- a/src/m_menu.h +++ b/src/m_menu.h @@ -310,6 +310,7 @@ INT32 MR_ChangeControl(INT32 arg); INT32 MR_AssignJoystick(INT32 arg); INT32 MR_HandleMonitorToggles(INT32 choice); INT32 MR_RestartAudio(INT32 choice); +INT32 MR_CameraSetup(INT32 arg); #ifdef HAVE_DISCORDRPC INT32 MR_HandleDiscordRequests(INT32 choice); #endif