mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2025-01-26 19:20:55 +00:00
Reset to defaults option in controls
This commit is contained in:
parent
c2c799c885
commit
00fc67ba36
4 changed files with 241 additions and 158 deletions
127
src/g_input.c
127
src/g_input.c
|
@ -1274,71 +1274,82 @@ INT32 G_KeyStringtoNum(const char *keystr)
|
|||
}
|
||||
|
||||
// SRB2Kart
|
||||
void G_Controldefault(void)
|
||||
void G_Controldefault(UINT8 player)
|
||||
{
|
||||
// Main controls
|
||||
gamecontrol[gc_aimforward ][0] = KEY_UPARROW;
|
||||
gamecontrol[gc_aimbackward][0] = KEY_DOWNARROW;
|
||||
gamecontrol[gc_turnleft ][0] = KEY_LEFTARROW;
|
||||
gamecontrol[gc_turnright ][0] = KEY_RIGHTARROW;
|
||||
gamecontrol[gc_accelerate ][0] = 'a';
|
||||
gamecontrol[gc_drift ][0] = 's';
|
||||
gamecontrol[gc_brake ][0] = 'd';
|
||||
gamecontrol[gc_fire ][0] = KEY_SPACE;
|
||||
gamecontrol[gc_lookback ][0] = KEY_LSHIFT;
|
||||
if (player == 0 || player == 1)
|
||||
{
|
||||
// Main controls
|
||||
gamecontrol[gc_aimforward ][0] = KEY_UPARROW;
|
||||
gamecontrol[gc_aimbackward][0] = KEY_DOWNARROW;
|
||||
gamecontrol[gc_turnleft ][0] = KEY_LEFTARROW;
|
||||
gamecontrol[gc_turnright ][0] = KEY_RIGHTARROW;
|
||||
gamecontrol[gc_accelerate ][0] = 'a';
|
||||
gamecontrol[gc_drift ][0] = 's';
|
||||
gamecontrol[gc_brake ][0] = 'd';
|
||||
gamecontrol[gc_fire ][0] = KEY_SPACE;
|
||||
gamecontrol[gc_lookback ][0] = KEY_LSHIFT;
|
||||
|
||||
gamecontrol[gc_accelerate ][1] = KEY_JOY1+0; // A
|
||||
gamecontrol[gc_lookback ][1] = KEY_JOY1+2; // X
|
||||
gamecontrol[gc_brake ][1] = KEY_JOY1+1; // B
|
||||
gamecontrol[gc_fire ][1] = KEY_JOY1+4; // LB
|
||||
gamecontrol[gc_drift ][1] = KEY_JOY1+5; // RB
|
||||
|
||||
// Extra controls
|
||||
gamecontrol[gc_pause ][0] = KEY_PAUSE;
|
||||
gamecontrol[gc_console ][0] = KEY_CONSOLE;
|
||||
gamecontrol[gc_screenshot ][0] = KEY_F8;
|
||||
gamecontrol[gc_recordgif ][0] = KEY_F9;
|
||||
gamecontrol[gc_viewpoint ][0] = KEY_F12;
|
||||
gamecontrol[gc_talkkey ][0] = 't';
|
||||
//gamecontrol[gc_teamkey ][0] = 'y';
|
||||
gamecontrol[gc_scores ][0] = KEY_TAB;
|
||||
gamecontrol[gc_spectate ][0] = '\'';
|
||||
gamecontrol[gc_lookup ][0] = KEY_PGUP;
|
||||
gamecontrol[gc_lookdown ][0] = KEY_PGDN;
|
||||
gamecontrol[gc_centerview ][0] = KEY_END;
|
||||
gamecontrol[gc_camreset ][0] = KEY_HOME;
|
||||
gamecontrol[gc_camtoggle ][0] = KEY_BACKSPACE;
|
||||
gamecontrol[gc_accelerate ][1] = KEY_JOY1+0; // A
|
||||
gamecontrol[gc_lookback ][1] = KEY_JOY1+2; // X
|
||||
gamecontrol[gc_brake ][1] = KEY_JOY1+1; // B
|
||||
gamecontrol[gc_fire ][1] = KEY_JOY1+4; // LB
|
||||
gamecontrol[gc_drift ][1] = KEY_JOY1+5; // RB
|
||||
|
||||
// Extra controls
|
||||
gamecontrol[gc_pause ][0] = KEY_PAUSE;
|
||||
gamecontrol[gc_console ][0] = KEY_CONSOLE;
|
||||
gamecontrol[gc_screenshot ][0] = KEY_F8;
|
||||
gamecontrol[gc_recordgif ][0] = KEY_F9;
|
||||
gamecontrol[gc_viewpoint ][0] = KEY_F12;
|
||||
gamecontrol[gc_talkkey ][0] = 't';
|
||||
//gamecontrol[gc_teamkey ][0] = 'y';
|
||||
gamecontrol[gc_scores ][0] = KEY_TAB;
|
||||
gamecontrol[gc_spectate ][0] = '\'';
|
||||
gamecontrol[gc_lookup ][0] = KEY_PGUP;
|
||||
gamecontrol[gc_lookdown ][0] = KEY_PGDN;
|
||||
gamecontrol[gc_centerview ][0] = KEY_END;
|
||||
gamecontrol[gc_camreset ][0] = KEY_HOME;
|
||||
gamecontrol[gc_camtoggle ][0] = KEY_BACKSPACE;
|
||||
|
||||
gamecontrol[gc_viewpoint ][1] = KEY_JOY1+3; // Y
|
||||
gamecontrol[gc_pause ][1] = KEY_JOY1+6; // Back
|
||||
gamecontrol[gc_systemmenu ][0] = KEY_JOY1+7; // Start
|
||||
gamecontrol[gc_camtoggle ][1] = KEY_HAT1+0; // D-Pad Up
|
||||
gamecontrol[gc_screenshot ][1] = KEY_HAT1+1; // D-Pad Down
|
||||
gamecontrol[gc_talkkey ][1] = KEY_HAT1+2; // D-Pad Left
|
||||
gamecontrol[gc_scores ][1] = KEY_HAT1+3; // D-Pad Right
|
||||
gamecontrol[gc_viewpoint ][1] = KEY_JOY1+3; // Y
|
||||
gamecontrol[gc_pause ][1] = KEY_JOY1+6; // Back
|
||||
gamecontrol[gc_systemmenu ][0] = KEY_JOY1+7; // Start
|
||||
gamecontrol[gc_camtoggle ][1] = KEY_HAT1+0; // D-Pad Up
|
||||
gamecontrol[gc_screenshot ][1] = KEY_HAT1+1; // D-Pad Down
|
||||
gamecontrol[gc_talkkey ][1] = KEY_HAT1+2; // D-Pad Left
|
||||
gamecontrol[gc_scores ][1] = KEY_HAT1+3; // D-Pad Right
|
||||
}
|
||||
|
||||
// Player 2 controls
|
||||
gamecontrolbis[gc_accelerate ][0] = KEY_2JOY1+0; // A
|
||||
gamecontrolbis[gc_lookback ][0] = KEY_2JOY1+2; // X
|
||||
gamecontrolbis[gc_brake ][0] = KEY_2JOY1+1; // B
|
||||
gamecontrolbis[gc_fire ][0] = KEY_2JOY1+4; // LB
|
||||
gamecontrolbis[gc_drift ][0] = KEY_2JOY1+5; // RB
|
||||
if (player == 0 || player == 2)
|
||||
{
|
||||
// Player 2 controls
|
||||
gamecontrolbis[gc_accelerate ][0] = KEY_2JOY1+0; // A
|
||||
gamecontrolbis[gc_lookback ][0] = KEY_2JOY1+2; // X
|
||||
gamecontrolbis[gc_brake ][0] = KEY_2JOY1+1; // B
|
||||
gamecontrolbis[gc_fire ][0] = KEY_2JOY1+4; // LB
|
||||
gamecontrolbis[gc_drift ][0] = KEY_2JOY1+5; // RB
|
||||
}
|
||||
|
||||
// Player 3 controls
|
||||
gamecontrol3[gc_accelerate ][0] = KEY_3JOY1+0; // A
|
||||
gamecontrol3[gc_lookback ][0] = KEY_3JOY1+2; // X
|
||||
gamecontrol3[gc_brake ][0] = KEY_3JOY1+1; // B
|
||||
gamecontrol3[gc_fire ][0] = KEY_3JOY1+4; // LB
|
||||
gamecontrol3[gc_drift ][0] = KEY_3JOY1+5; // RB
|
||||
if (player == 0 || player == 3)
|
||||
{
|
||||
// Player 3 controls
|
||||
gamecontrol3[gc_accelerate ][0] = KEY_3JOY1+0; // A
|
||||
gamecontrol3[gc_lookback ][0] = KEY_3JOY1+2; // X
|
||||
gamecontrol3[gc_brake ][0] = KEY_3JOY1+1; // B
|
||||
gamecontrol3[gc_fire ][0] = KEY_3JOY1+4; // LB
|
||||
gamecontrol3[gc_drift ][0] = KEY_3JOY1+5; // RB
|
||||
}
|
||||
|
||||
// Player 4 controls
|
||||
gamecontrol4[gc_accelerate ][0] = KEY_4JOY1+0; // A
|
||||
gamecontrol4[gc_lookback ][0] = KEY_4JOY1+2; // X
|
||||
gamecontrol4[gc_brake ][0] = KEY_4JOY1+1; // B
|
||||
gamecontrol4[gc_fire ][0] = KEY_4JOY1+4; // LB
|
||||
gamecontrol4[gc_drift ][0] = KEY_4JOY1+5; // RB
|
||||
if (player == 0 || player == 4)
|
||||
{
|
||||
// Player 4 controls
|
||||
gamecontrol4[gc_accelerate ][0] = KEY_4JOY1+0; // A
|
||||
gamecontrol4[gc_lookback ][0] = KEY_4JOY1+2; // X
|
||||
gamecontrol4[gc_brake ][0] = KEY_4JOY1+1; // B
|
||||
gamecontrol4[gc_fire ][0] = KEY_4JOY1+4; // LB
|
||||
gamecontrol4[gc_drift ][0] = KEY_4JOY1+5; // RB
|
||||
}
|
||||
}
|
||||
//#endif
|
||||
|
||||
void G_SaveKeySetting(FILE *f)
|
||||
{
|
||||
|
|
|
@ -165,7 +165,7 @@ void Command_Setcontrol_f(void);
|
|||
void Command_Setcontrol2_f(void);
|
||||
void Command_Setcontrol3_f(void);
|
||||
void Command_Setcontrol4_f(void);
|
||||
void G_Controldefault(void);
|
||||
void G_Controldefault(UINT8 player);
|
||||
void G_SaveKeySetting(FILE *f);
|
||||
void G_CheckDoubleUsage(INT32 keynum);
|
||||
|
||||
|
|
268
src/m_menu.c
268
src/m_menu.c
|
@ -180,9 +180,7 @@ INT16 startmap; // Mario, NiGHTS, or just a plain old normal game?
|
|||
static INT16 itemOn = 1; // menu item skull is on, Hack by Tails 09-18-2002
|
||||
static INT16 skullAnimCounter = 10; // skull animation counter
|
||||
|
||||
static boolean setupcontrols_secondaryplayer;
|
||||
static boolean setupcontrols_thirdplayer;
|
||||
static boolean setupcontrols_fourthplayer;
|
||||
static UINT8 setupcontrolplayer;
|
||||
static INT32 (*setupcontrols)[2]; // pointer to the gamecontrols of the player being edited
|
||||
|
||||
// shhh... what am I doing... nooooo!
|
||||
|
@ -304,6 +302,7 @@ static void M_Setup4PJoystickMenu(INT32 choice);
|
|||
|
||||
static void M_AssignJoystick(INT32 choice);
|
||||
static void M_ChangeControl(INT32 choice);
|
||||
static void M_ResetControls(INT32 choice);
|
||||
|
||||
// Video & Sound
|
||||
menu_t OP_VideoOptionsDef, OP_VideoModeDef;
|
||||
|
@ -1093,12 +1092,13 @@ static menuitem_t OP_ControlsMenu[] =
|
|||
{IT_CALL | IT_STRING, NULL, "Player 3 Controls...", &M_Setup3PControlsMenu, 30},
|
||||
{IT_CALL | IT_STRING, NULL, "Player 4 Controls...", &M_Setup4PControlsMenu, 40},
|
||||
|
||||
{IT_STRING | IT_CVAR, NULL, "Controls per key", &cv_controlperkey, 60},
|
||||
{IT_STRING | IT_CVAR, NULL, "Controls per key", &cv_controlperkey, 60},
|
||||
};
|
||||
|
||||
static menuitem_t OP_AllControlsMenu[] =
|
||||
{
|
||||
{IT_SUBMENU|IT_STRING, NULL, "Gamepad Options...", &OP_Joystick1Def, 0},
|
||||
{IT_CALL|IT_STRING, NULL, "Reset to defaults", M_ResetControls, 0},
|
||||
{IT_SUBMENU|IT_STRING, NULL, "Gamepad Options...", &OP_Joystick1Def, 8},
|
||||
//{IT_SPACE, NULL, NULL, NULL, 0},
|
||||
{IT_HEADER, NULL, "Gameplay Controls", NULL, 0},
|
||||
{IT_SPACE, NULL, NULL, NULL, 0},
|
||||
|
@ -8514,10 +8514,10 @@ static void M_DrawJoystick(void)
|
|||
{
|
||||
M_DrawSaveLoadBorder(OP_JoystickSetDef.x, OP_JoystickSetDef.y+LINEHEIGHT*i);
|
||||
|
||||
if ((setupcontrols_fourthplayer && (i == cv_usejoystick4.value))
|
||||
|| (setupcontrols_thirdplayer && (i == cv_usejoystick3.value))
|
||||
|| (setupcontrols_secondaryplayer && (i == cv_usejoystick2.value))
|
||||
|| (!(setupcontrols_secondaryplayer || setupcontrols_thirdplayer || setupcontrols_fourthplayer) && (i == cv_usejoystick.value)))
|
||||
if ((setupcontrolplayer == 4 && (i == cv_usejoystick4.value))
|
||||
|| (setupcontrolplayer == 3 && (i == cv_usejoystick3.value))
|
||||
|| (setupcontrolplayer == 2 && (i == cv_usejoystick2.value))
|
||||
|| (setupcontrolplayer == 1 && (i == cv_usejoystick.value)))
|
||||
V_DrawString(OP_JoystickSetDef.x, OP_JoystickSetDef.y+LINEHEIGHT*i,recommendedflags,joystickInfo[i]);
|
||||
else
|
||||
V_DrawString(OP_JoystickSetDef.x, OP_JoystickSetDef.y+LINEHEIGHT*i,0,joystickInfo[i]);
|
||||
|
@ -8550,42 +8550,39 @@ static void M_SetupJoystickMenu(INT32 choice)
|
|||
|
||||
static void M_Setup1PJoystickMenu(INT32 choice)
|
||||
{
|
||||
setupcontrols_secondaryplayer = setupcontrols_thirdplayer = setupcontrols_fourthplayer = false;
|
||||
setupcontrolplayer = 1;
|
||||
OP_JoystickSetDef.prevMenu = &OP_Joystick1Def;
|
||||
M_SetupJoystickMenu(choice);
|
||||
}
|
||||
|
||||
static void M_Setup2PJoystickMenu(INT32 choice)
|
||||
{
|
||||
setupcontrols_secondaryplayer = true;
|
||||
setupcontrols_thirdplayer = setupcontrols_fourthplayer = false;
|
||||
setupcontrolplayer = 2;
|
||||
OP_JoystickSetDef.prevMenu = &OP_Joystick2Def;
|
||||
M_SetupJoystickMenu(choice);
|
||||
}
|
||||
|
||||
static void M_Setup3PJoystickMenu(INT32 choice)
|
||||
{
|
||||
setupcontrols_thirdplayer = true;
|
||||
setupcontrols_secondaryplayer = setupcontrols_fourthplayer = false;
|
||||
setupcontrolplayer = 3;
|
||||
OP_JoystickSetDef.prevMenu = &OP_Joystick3Def;
|
||||
M_SetupJoystickMenu(choice);
|
||||
}
|
||||
|
||||
static void M_Setup4PJoystickMenu(INT32 choice)
|
||||
{
|
||||
setupcontrols_fourthplayer = true;
|
||||
setupcontrols_secondaryplayer = setupcontrols_thirdplayer = false;
|
||||
setupcontrolplayer = 3;
|
||||
OP_JoystickSetDef.prevMenu = &OP_Joystick4Def;
|
||||
M_SetupJoystickMenu(choice);
|
||||
}
|
||||
|
||||
static void M_AssignJoystick(INT32 choice)
|
||||
{
|
||||
if (setupcontrols_fourthplayer)
|
||||
if (setupcontrolplayer == 4)
|
||||
CV_SetValue(&cv_usejoystick4, choice);
|
||||
else if (setupcontrols_thirdplayer)
|
||||
else if (setupcontrolplayer == 3)
|
||||
CV_SetValue(&cv_usejoystick3, choice);
|
||||
else if (setupcontrols_secondaryplayer)
|
||||
else if (setupcontrolplayer == 2)
|
||||
CV_SetValue(&cv_usejoystick2, choice);
|
||||
else
|
||||
CV_SetValue(&cv_usejoystick, choice);
|
||||
|
@ -8598,30 +8595,30 @@ static void M_AssignJoystick(INT32 choice)
|
|||
static void M_Setup1PControlsMenu(INT32 choice)
|
||||
{
|
||||
(void)choice;
|
||||
setupcontrols_secondaryplayer = setupcontrols_thirdplayer = setupcontrols_fourthplayer = false;
|
||||
setupcontrolplayer = 1;
|
||||
setupcontrols = gamecontrol; // was called from main Options (for console player, then)
|
||||
currentMenu->lastOn = itemOn;
|
||||
|
||||
// Set proper gamepad options
|
||||
OP_AllControlsMenu[0].itemaction = &OP_Joystick1Def;
|
||||
OP_AllControlsMenu[1].itemaction = &OP_Joystick1Def;
|
||||
|
||||
// Unhide P1-only controls
|
||||
OP_AllControlsMenu[14].status = IT_CONTROL; // Chat
|
||||
//OP_AllControlsMenu[15].status = IT_CONTROL; // Team-chat
|
||||
OP_AllControlsMenu[15].status = IT_CONTROL; // Rankings
|
||||
OP_AllControlsMenu[16].status = IT_CONTROL; // Viewpoint
|
||||
// 17 is Reset Camera, 18 is Toggle Chasecam
|
||||
OP_AllControlsMenu[19].status = IT_CONTROL; // Pause
|
||||
OP_AllControlsMenu[20].status = IT_CONTROL; // Screenshot
|
||||
OP_AllControlsMenu[21].status = IT_CONTROL; // GIF
|
||||
OP_AllControlsMenu[22].status = IT_CONTROL; // System Menu
|
||||
OP_AllControlsMenu[23].status = IT_CONTROL; // Console
|
||||
/*OP_AllControlsMenu[24].status = IT_HEADER; // Spectator Controls header
|
||||
OP_AllControlsMenu[25].status = IT_SPACE; // Spectator Controls space
|
||||
OP_AllControlsMenu[26].status = IT_CONTROL; // Spectate
|
||||
OP_AllControlsMenu[27].status = IT_CONTROL; // Look Up
|
||||
OP_AllControlsMenu[28].status = IT_CONTROL; // Look Down
|
||||
OP_AllControlsMenu[29].status = IT_CONTROL; // Center View
|
||||
OP_AllControlsMenu[15].status = IT_CONTROL; // Chat
|
||||
//OP_AllControlsMenu[16].status = IT_CONTROL; // Team-chat
|
||||
OP_AllControlsMenu[16].status = IT_CONTROL; // Rankings
|
||||
OP_AllControlsMenu[17].status = IT_CONTROL; // Viewpoint
|
||||
// 18 is Reset Camera, 19 is Toggle Chasecam
|
||||
OP_AllControlsMenu[20].status = IT_CONTROL; // Pause
|
||||
OP_AllControlsMenu[21].status = IT_CONTROL; // Screenshot
|
||||
OP_AllControlsMenu[22].status = IT_CONTROL; // GIF
|
||||
OP_AllControlsMenu[23].status = IT_CONTROL; // System Menu
|
||||
OP_AllControlsMenu[24].status = IT_CONTROL; // Console
|
||||
/*OP_AllControlsMenu[25].status = IT_HEADER; // Spectator Controls header
|
||||
OP_AllControlsMenu[26].status = IT_SPACE; // Spectator Controls space
|
||||
OP_AllControlsMenu[27].status = IT_CONTROL; // Spectate
|
||||
OP_AllControlsMenu[28].status = IT_CONTROL; // Look Up
|
||||
OP_AllControlsMenu[29].status = IT_CONTROL; // Look Down
|
||||
OP_AllControlsMenu[30].status = IT_CONTROL; // Center View
|
||||
*/
|
||||
|
||||
M_SetupNextMenu(&OP_AllControlsDef);
|
||||
|
@ -8630,31 +8627,30 @@ static void M_Setup1PControlsMenu(INT32 choice)
|
|||
static void M_Setup2PControlsMenu(INT32 choice)
|
||||
{
|
||||
(void)choice;
|
||||
setupcontrols_secondaryplayer = true;
|
||||
setupcontrols_thirdplayer = setupcontrols_fourthplayer = false;
|
||||
setupcontrolplayer = 2;
|
||||
setupcontrols = gamecontrolbis;
|
||||
currentMenu->lastOn = itemOn;
|
||||
|
||||
// Set proper gamepad options
|
||||
OP_AllControlsMenu[0].itemaction = &OP_Joystick2Def;
|
||||
OP_AllControlsMenu[1].itemaction = &OP_Joystick2Def;
|
||||
|
||||
// Hide P1-only controls
|
||||
OP_AllControlsMenu[14].status = IT_GRAYEDOUT2; // Chat
|
||||
//OP_AllControlsMenu[15].status = IT_GRAYEDOUT2; // Team-chat
|
||||
OP_AllControlsMenu[15].status = IT_GRAYEDOUT2; // Rankings
|
||||
OP_AllControlsMenu[16].status = IT_GRAYEDOUT2; // Viewpoint
|
||||
// 17 is Reset Camera, 18 is Toggle Chasecam
|
||||
OP_AllControlsMenu[19].status = IT_GRAYEDOUT2; // Pause
|
||||
OP_AllControlsMenu[20].status = IT_GRAYEDOUT2; // Screenshot
|
||||
OP_AllControlsMenu[21].status = IT_GRAYEDOUT2; // GIF
|
||||
OP_AllControlsMenu[22].status = IT_GRAYEDOUT2; // System Menu
|
||||
OP_AllControlsMenu[23].status = IT_GRAYEDOUT2; // Console
|
||||
/*OP_AllControlsMenu[24].status = IT_GRAYEDOUT2; // Spectator Controls header
|
||||
OP_AllControlsMenu[25].status = IT_GRAYEDOUT2; // Spectator Controls space
|
||||
OP_AllControlsMenu[26].status = IT_GRAYEDOUT2; // Spectate
|
||||
OP_AllControlsMenu[27].status = IT_GRAYEDOUT2; // Look Up
|
||||
OP_AllControlsMenu[28].status = IT_GRAYEDOUT2; // Look Down
|
||||
OP_AllControlsMenu[29].status = IT_GRAYEDOUT2; // Center View
|
||||
OP_AllControlsMenu[15].status = IT_GRAYEDOUT2; // Chat
|
||||
//OP_AllControlsMenu[16].status = IT_GRAYEDOUT2; // Team-chat
|
||||
OP_AllControlsMenu[16].status = IT_GRAYEDOUT2; // Rankings
|
||||
OP_AllControlsMenu[17].status = IT_GRAYEDOUT2; // Viewpoint
|
||||
// 18 is Reset Camera, 19 is Toggle Chasecam
|
||||
OP_AllControlsMenu[20].status = IT_GRAYEDOUT2; // Pause
|
||||
OP_AllControlsMenu[21].status = IT_GRAYEDOUT2; // Screenshot
|
||||
OP_AllControlsMenu[22].status = IT_GRAYEDOUT2; // GIF
|
||||
OP_AllControlsMenu[23].status = IT_GRAYEDOUT2; // System Menu
|
||||
OP_AllControlsMenu[24].status = IT_GRAYEDOUT2; // Console
|
||||
/*OP_AllControlsMenu[25].status = IT_GRAYEDOUT2; // Spectator Controls header
|
||||
OP_AllControlsMenu[26].status = IT_GRAYEDOUT2; // Spectator Controls space
|
||||
OP_AllControlsMenu[27].status = IT_GRAYEDOUT2; // Spectate
|
||||
OP_AllControlsMenu[28].status = IT_GRAYEDOUT2; // Look Up
|
||||
OP_AllControlsMenu[29].status = IT_GRAYEDOUT2; // Look Down
|
||||
OP_AllControlsMenu[30].status = IT_GRAYEDOUT2; // Center View
|
||||
*/
|
||||
|
||||
M_SetupNextMenu(&OP_AllControlsDef);
|
||||
|
@ -8663,31 +8659,30 @@ static void M_Setup2PControlsMenu(INT32 choice)
|
|||
static void M_Setup3PControlsMenu(INT32 choice)
|
||||
{
|
||||
(void)choice;
|
||||
setupcontrols_thirdplayer = true;
|
||||
setupcontrols_secondaryplayer = setupcontrols_fourthplayer = false;
|
||||
setupcontrolplayer = 3;
|
||||
setupcontrols = gamecontrol3;
|
||||
currentMenu->lastOn = itemOn;
|
||||
|
||||
// Set proper gamepad options
|
||||
OP_AllControlsMenu[0].itemaction = &OP_Joystick3Def;
|
||||
OP_AllControlsMenu[1].itemaction = &OP_Joystick3Def;
|
||||
|
||||
// Hide P1-only controls
|
||||
OP_AllControlsMenu[14].status = IT_GRAYEDOUT2; // Chat
|
||||
//OP_AllControlsMenu[15].status = IT_GRAYEDOUT2; // Team-chat
|
||||
OP_AllControlsMenu[15].status = IT_GRAYEDOUT2; // Rankings
|
||||
OP_AllControlsMenu[16].status = IT_GRAYEDOUT2; // Viewpoint
|
||||
// 17 is Reset Camera, 18 is Toggle Chasecam
|
||||
OP_AllControlsMenu[19].status = IT_GRAYEDOUT2; // Pause
|
||||
OP_AllControlsMenu[20].status = IT_GRAYEDOUT2; // Screenshot
|
||||
OP_AllControlsMenu[21].status = IT_GRAYEDOUT2; // GIF
|
||||
OP_AllControlsMenu[22].status = IT_GRAYEDOUT2; // System Menu
|
||||
OP_AllControlsMenu[23].status = IT_GRAYEDOUT2; // Console
|
||||
/*OP_AllControlsMenu[24].status = IT_GRAYEDOUT2; // Spectator Controls header
|
||||
OP_AllControlsMenu[25].status = IT_GRAYEDOUT2; // Spectator Controls space
|
||||
OP_AllControlsMenu[26].status = IT_GRAYEDOUT2; // Spectate
|
||||
OP_AllControlsMenu[27].status = IT_GRAYEDOUT2; // Look Up
|
||||
OP_AllControlsMenu[28].status = IT_GRAYEDOUT2; // Look Down
|
||||
OP_AllControlsMenu[29].status = IT_GRAYEDOUT2; // Center View
|
||||
OP_AllControlsMenu[15].status = IT_GRAYEDOUT2; // Chat
|
||||
//OP_AllControlsMenu[16].status = IT_GRAYEDOUT2; // Team-chat
|
||||
OP_AllControlsMenu[16].status = IT_GRAYEDOUT2; // Rankings
|
||||
OP_AllControlsMenu[17].status = IT_GRAYEDOUT2; // Viewpoint
|
||||
// 18 is Reset Camera, 19 is Toggle Chasecam
|
||||
OP_AllControlsMenu[20].status = IT_GRAYEDOUT2; // Pause
|
||||
OP_AllControlsMenu[21].status = IT_GRAYEDOUT2; // Screenshot
|
||||
OP_AllControlsMenu[22].status = IT_GRAYEDOUT2; // GIF
|
||||
OP_AllControlsMenu[23].status = IT_GRAYEDOUT2; // System Menu
|
||||
OP_AllControlsMenu[24].status = IT_GRAYEDOUT2; // Console
|
||||
/*OP_AllControlsMenu[25].status = IT_GRAYEDOUT2; // Spectator Controls header
|
||||
OP_AllControlsMenu[26].status = IT_GRAYEDOUT2; // Spectator Controls space
|
||||
OP_AllControlsMenu[27].status = IT_GRAYEDOUT2; // Spectate
|
||||
OP_AllControlsMenu[28].status = IT_GRAYEDOUT2; // Look Up
|
||||
OP_AllControlsMenu[29].status = IT_GRAYEDOUT2; // Look Down
|
||||
OP_AllControlsMenu[30].status = IT_GRAYEDOUT2; // Center View
|
||||
*/
|
||||
|
||||
M_SetupNextMenu(&OP_AllControlsDef);
|
||||
|
@ -8696,31 +8691,30 @@ static void M_Setup3PControlsMenu(INT32 choice)
|
|||
static void M_Setup4PControlsMenu(INT32 choice)
|
||||
{
|
||||
(void)choice;
|
||||
setupcontrols_fourthplayer = true;
|
||||
setupcontrols_secondaryplayer = setupcontrols_thirdplayer = false;
|
||||
setupcontrolplayer = 4;
|
||||
setupcontrols = gamecontrol4;
|
||||
currentMenu->lastOn = itemOn;
|
||||
|
||||
// Set proper gamepad options
|
||||
OP_AllControlsMenu[0].itemaction = &OP_Joystick4Def;
|
||||
OP_AllControlsMenu[1].itemaction = &OP_Joystick4Def;
|
||||
|
||||
// Hide P1-only controls
|
||||
OP_AllControlsMenu[14].status = IT_GRAYEDOUT2; // Chat
|
||||
//OP_AllControlsMenu[15].status = IT_GRAYEDOUT2; // Team-chat
|
||||
OP_AllControlsMenu[15].status = IT_GRAYEDOUT2; // Rankings
|
||||
OP_AllControlsMenu[16].status = IT_GRAYEDOUT2; // Viewpoint
|
||||
// 17 is Reset Camera, 18 is Toggle Chasecam
|
||||
OP_AllControlsMenu[19].status = IT_GRAYEDOUT2; // Pause
|
||||
OP_AllControlsMenu[20].status = IT_GRAYEDOUT2; // Screenshot
|
||||
OP_AllControlsMenu[21].status = IT_GRAYEDOUT2; // GIF
|
||||
OP_AllControlsMenu[22].status = IT_GRAYEDOUT2; // System Menu
|
||||
OP_AllControlsMenu[23].status = IT_GRAYEDOUT2; // Console
|
||||
/*OP_AllControlsMenu[24].status = IT_GRAYEDOUT2; // Spectator Controls header
|
||||
OP_AllControlsMenu[25].status = IT_GRAYEDOUT2; // Spectator Controls space
|
||||
OP_AllControlsMenu[26].status = IT_GRAYEDOUT2; // Spectate
|
||||
OP_AllControlsMenu[27].status = IT_GRAYEDOUT2; // Look Up
|
||||
OP_AllControlsMenu[28].status = IT_GRAYEDOUT2; // Look Down
|
||||
OP_AllControlsMenu[29].status = IT_GRAYEDOUT2; // Center View
|
||||
OP_AllControlsMenu[15].status = IT_GRAYEDOUT2; // Chat
|
||||
//OP_AllControlsMenu[16].status = IT_GRAYEDOUT2; // Team-chat
|
||||
OP_AllControlsMenu[16].status = IT_GRAYEDOUT2; // Rankings
|
||||
OP_AllControlsMenu[17].status = IT_GRAYEDOUT2; // Viewpoint
|
||||
// 18 is Reset Camera, 19 is Toggle Chasecam
|
||||
OP_AllControlsMenu[20].status = IT_GRAYEDOUT2; // Pause
|
||||
OP_AllControlsMenu[21].status = IT_GRAYEDOUT2; // Screenshot
|
||||
OP_AllControlsMenu[22].status = IT_GRAYEDOUT2; // GIF
|
||||
OP_AllControlsMenu[23].status = IT_GRAYEDOUT2; // System Menu
|
||||
OP_AllControlsMenu[24].status = IT_GRAYEDOUT2; // Console
|
||||
/*OP_AllControlsMenu[25].status = IT_GRAYEDOUT2; // Spectator Controls header
|
||||
OP_AllControlsMenu[26].status = IT_GRAYEDOUT2; // Spectator Controls space
|
||||
OP_AllControlsMenu[27].status = IT_GRAYEDOUT2; // Spectate
|
||||
OP_AllControlsMenu[28].status = IT_GRAYEDOUT2; // Look Up
|
||||
OP_AllControlsMenu[29].status = IT_GRAYEDOUT2; // Look Down
|
||||
OP_AllControlsMenu[30].status = IT_GRAYEDOUT2; // Center View
|
||||
*/
|
||||
|
||||
M_SetupNextMenu(&OP_AllControlsDef);
|
||||
|
@ -8783,10 +8777,10 @@ static void M_DrawControl(void)
|
|||
M_DrawMenuTitle();
|
||||
|
||||
M_CentreText(28,
|
||||
(setupcontrols_fourthplayer ? "\x86""Set controls for ""\x82""Player 4" :
|
||||
(setupcontrols_thirdplayer ? "\x86""Set controls for ""\x82""Player 3" :
|
||||
(setupcontrols_secondaryplayer ? "\x86""Set controls for ""\x82""Player 2" :
|
||||
"\x86""Press ""\x82""ENTER""\x86"" to change, ""\x82""BACKSPACE""\x86"" to clear"))));
|
||||
(setupcontrolplayer == 4 ? "\x86""Set controls for ""\x82""Player 4" :
|
||||
(setupcontrolplayer == 3 ? "\x86""Set controls for ""\x82""Player 3" :
|
||||
(setupcontrolplayer == 2 ? "\x86""Set controls for ""\x82""Player 2" :
|
||||
"\x86""Press ""\x82""ENTER""\x86"" to change, ""\x82""BACKSPACE""\x86"" to clear"))));
|
||||
|
||||
if (i)
|
||||
V_DrawCharacter(currentMenu->x - 16, y-(skullAnimCounter/5),
|
||||
|
@ -8934,6 +8928,84 @@ static void M_ChangeControl(INT32 choice)
|
|||
M_StartMessage(tmp, M_ChangecontrolResponse, MM_EVENTHANDLER);
|
||||
}
|
||||
|
||||
static void M_ResetControls(INT32 choice)
|
||||
{
|
||||
INT32 i;
|
||||
(void)choice;
|
||||
|
||||
// clear all controls
|
||||
for (i = 0; i < num_gamecontrols; i++)
|
||||
{
|
||||
switch (setupcontrolplayer)
|
||||
{
|
||||
case 4:
|
||||
G_ClearControlKeys(gamecontrol4, i);
|
||||
break;
|
||||
case 3:
|
||||
G_ClearControlKeys(gamecontrol3, i);
|
||||
break;
|
||||
case 2:
|
||||
G_ClearControlKeys(gamecontrolbis, i);
|
||||
break;
|
||||
case 1:
|
||||
default:
|
||||
G_ClearControlKeys(gamecontrol, i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Setup original defaults
|
||||
G_Controldefault(setupcontrolplayer);
|
||||
|
||||
// Setup gamepad option defaults (yucky)
|
||||
switch (setupcontrolplayer)
|
||||
{
|
||||
case 4:
|
||||
CV_StealthSet(&cv_usejoystick4, cv_usejoystick4.defaultvalue);
|
||||
CV_StealthSet(&cv_turnaxis4, cv_turnaxis4.defaultvalue);
|
||||
CV_StealthSet(&cv_moveaxis4, cv_moveaxis4.defaultvalue);
|
||||
CV_StealthSet(&cv_brakeaxis4, cv_brakeaxis4.defaultvalue);
|
||||
CV_StealthSet(&cv_aimaxis4, cv_aimaxis4.defaultvalue);
|
||||
CV_StealthSet(&cv_lookaxis4, cv_lookaxis4.defaultvalue);
|
||||
CV_StealthSet(&cv_fireaxis4, cv_fireaxis4.defaultvalue);
|
||||
CV_StealthSet(&cv_driftaxis4, cv_driftaxis4.defaultvalue);
|
||||
break;
|
||||
case 3:
|
||||
CV_StealthSet(&cv_usejoystick3, cv_usejoystick3.defaultvalue);
|
||||
CV_StealthSet(&cv_turnaxis3, cv_turnaxis3.defaultvalue);
|
||||
CV_StealthSet(&cv_moveaxis3, cv_moveaxis3.defaultvalue);
|
||||
CV_StealthSet(&cv_brakeaxis3, cv_brakeaxis3.defaultvalue);
|
||||
CV_StealthSet(&cv_aimaxis3, cv_aimaxis3.defaultvalue);
|
||||
CV_StealthSet(&cv_lookaxis3, cv_lookaxis3.defaultvalue);
|
||||
CV_StealthSet(&cv_fireaxis3, cv_fireaxis3.defaultvalue);
|
||||
CV_StealthSet(&cv_driftaxis3, cv_driftaxis3.defaultvalue);
|
||||
break;
|
||||
case 2:
|
||||
CV_StealthSet(&cv_usejoystick2, cv_usejoystick2.defaultvalue);
|
||||
CV_StealthSet(&cv_turnaxis2, cv_turnaxis2.defaultvalue);
|
||||
CV_StealthSet(&cv_moveaxis2, cv_moveaxis2.defaultvalue);
|
||||
CV_StealthSet(&cv_brakeaxis2, cv_brakeaxis2.defaultvalue);
|
||||
CV_StealthSet(&cv_aimaxis2, cv_aimaxis2.defaultvalue);
|
||||
CV_StealthSet(&cv_lookaxis2, cv_lookaxis2.defaultvalue);
|
||||
CV_StealthSet(&cv_fireaxis2, cv_fireaxis2.defaultvalue);
|
||||
CV_StealthSet(&cv_driftaxis2, cv_driftaxis2.defaultvalue);
|
||||
break;
|
||||
case 1:
|
||||
default:
|
||||
CV_StealthSet(&cv_usejoystick, cv_usejoystick.defaultvalue);
|
||||
CV_StealthSet(&cv_turnaxis, cv_turnaxis.defaultvalue);
|
||||
CV_StealthSet(&cv_moveaxis, cv_moveaxis.defaultvalue);
|
||||
CV_StealthSet(&cv_brakeaxis, cv_brakeaxis.defaultvalue);
|
||||
CV_StealthSet(&cv_aimaxis, cv_aimaxis.defaultvalue);
|
||||
CV_StealthSet(&cv_lookaxis, cv_lookaxis.defaultvalue);
|
||||
CV_StealthSet(&cv_fireaxis, cv_fireaxis.defaultvalue);
|
||||
CV_StealthSet(&cv_driftaxis, cv_driftaxis.defaultvalue);
|
||||
break;
|
||||
}
|
||||
|
||||
S_StartSound(NULL, sfx_s224);
|
||||
}
|
||||
|
||||
// =====
|
||||
// SOUND
|
||||
// =====
|
||||
|
|
|
@ -475,7 +475,7 @@ void M_FirstLoadConfig(void)
|
|||
}
|
||||
|
||||
// load default control
|
||||
G_Controldefault();
|
||||
G_Controldefault(0);
|
||||
|
||||
// load config, make sure those commands doesnt require the screen...
|
||||
COM_BufInsertText(va("exec \"%s\"\n", configfile));
|
||||
|
|
Loading…
Reference in a new issue