mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-01-09 00:12:56 +00:00
Merge g_input.c/h
This commit is contained in:
parent
6d850b51d9
commit
b546f7d188
2 changed files with 92 additions and 276 deletions
306
src/g_input.c
306
src/g_input.c
|
|
@ -44,56 +44,34 @@ joy3xmove[JOYAXISSET], joy3ymove[JOYAXISSET], joy4xmove[JOYAXISSET], joy4ymove[J
|
|||
UINT8 gamekeydown[NUMINPUTS];
|
||||
|
||||
// two key codes (or virtual key) per game control
|
||||
INT32 gamecontrol[num_gamecontrols][2];
|
||||
INT32 gamecontrolbis[num_gamecontrols][2]; // secondary splitscreen player
|
||||
<<<<<<< HEAD
|
||||
INT32 gamecontrol3[num_gamecontrols][2]; // tertiary splitscreen player
|
||||
INT32 gamecontrol4[num_gamecontrols][2]; // quarternary splitscreen player
|
||||
=======
|
||||
INT32 gamecontroldefault[num_gamecontrolschemes][num_gamecontrols][2]; // default control storage, use 0 (gcs_custom) for memory retention
|
||||
INT32 gamecontrolbisdefault[num_gamecontrolschemes][num_gamecontrols][2];
|
||||
INT32 gamecontrol[MAXSPLITSCREENPLAYERS][num_gamecontrols][2];
|
||||
INT32 gamecontroldefault[MAXSPLITSCREENPLAYERS][num_gamecontrolschemes][num_gamecontrols][2]; // default control storage, use 0 (gcs_custom) for memory retention
|
||||
|
||||
// lists of GC codes for selective operation
|
||||
const INT32 gcl_tutorial_check[num_gcl_tutorial_check] = {
|
||||
gc_forward, gc_backward, gc_strafeleft, gc_straferight,
|
||||
gc_turnleft, gc_turnright
|
||||
};
|
||||
const INT32 gcl_accelerate[num_gcl_accelerate] = { gc_accelerate };
|
||||
|
||||
const INT32 gcl_tutorial_used[num_gcl_tutorial_used] = {
|
||||
gc_forward, gc_backward, gc_strafeleft, gc_straferight,
|
||||
gc_turnleft, gc_turnright,
|
||||
gc_jump, gc_use
|
||||
};
|
||||
const INT32 gcl_brake[num_gcl_brake] = { gc_brake };
|
||||
|
||||
const INT32 gcl_tutorial_full[num_gcl_tutorial_full] = {
|
||||
gc_forward, gc_backward, gc_strafeleft, gc_straferight,
|
||||
gc_lookup, gc_lookdown, gc_turnleft, gc_turnright, gc_centerview,
|
||||
gc_jump, gc_use,
|
||||
gc_fire, gc_firenormal
|
||||
const INT32 gcl_drift[num_gcl_drift] = { gc_drift };
|
||||
|
||||
const INT32 gcl_spindash[num_gcl_spindash] = {
|
||||
gc_accelerate, gc_drift, gc_brake
|
||||
};
|
||||
|
||||
const INT32 gcl_movement[num_gcl_movement] = {
|
||||
gc_forward, gc_backward, gc_strafeleft, gc_straferight
|
||||
gc_accelerate, gc_drift, gc_brake, gc_turnleft, gc_turnright
|
||||
};
|
||||
|
||||
const INT32 gcl_camera[num_gcl_camera] = {
|
||||
gc_turnleft, gc_turnright
|
||||
const INT32 gcl_item[num_gcl_item] = {
|
||||
gc_fire, gc_aimforward, gc_aimbackward
|
||||
};
|
||||
|
||||
const INT32 gcl_movement_camera[num_gcl_movement_camera] = {
|
||||
gc_forward, gc_backward, gc_strafeleft, gc_straferight,
|
||||
gc_turnleft, gc_turnright
|
||||
const INT32 gcl_full[num_gcl_full] = {
|
||||
gc_accelerate, gc_drift, gc_brake, gc_turnleft, gc_turnright,
|
||||
gc_fire, gc_aimforward, gc_aimbackward,
|
||||
gc_lookback
|
||||
};
|
||||
|
||||
const INT32 gcl_jump[num_gcl_jump] = { gc_jump };
|
||||
|
||||
const INT32 gcl_use[num_gcl_use] = { gc_use };
|
||||
|
||||
const INT32 gcl_jump_use[num_gcl_jump_use] = {
|
||||
gc_jump, gc_use
|
||||
};
|
||||
>>>>>>> srb2/next
|
||||
|
||||
typedef struct
|
||||
{
|
||||
UINT8 time;
|
||||
|
|
@ -807,14 +785,7 @@ static const char *gamecontrolname[num_gamecontrols] =
|
|||
"drift",
|
||||
"brake",
|
||||
"fire",
|
||||
<<<<<<< HEAD
|
||||
"lookback",
|
||||
=======
|
||||
"firenormal",
|
||||
"tossflag",
|
||||
"use",
|
||||
"camtoggle",
|
||||
>>>>>>> srb2/next
|
||||
"camreset",
|
||||
"camtoggle",
|
||||
"spectate",
|
||||
|
|
@ -909,174 +880,68 @@ INT32 G_KeyStringtoNum(const char *keystr)
|
|||
return 0;
|
||||
}
|
||||
|
||||
<<<<<<< HEAD
|
||||
// SRB2Kart
|
||||
void G_Controldefault(UINT8 player)
|
||||
{
|
||||
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_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 // absolutely fucking NOT
|
||||
gamecontrol[gc_talkkey ][1] = KEY_HAT1+1; // D-Pad Down
|
||||
gamecontrol[gc_scores ][1] = KEY_HAT1+0; // D-Pad Up
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
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
|
||||
=======
|
||||
void G_DefineDefaultControls(void)
|
||||
{
|
||||
INT32 i;
|
||||
INT32 i, j;
|
||||
|
||||
// FPS game controls (WASD)
|
||||
gamecontroldefault[gcs_fps][gc_forward ][0] = 'w';
|
||||
gamecontroldefault[gcs_fps][gc_backward ][0] = 's';
|
||||
gamecontroldefault[gcs_fps][gc_strafeleft ][0] = 'a';
|
||||
gamecontroldefault[gcs_fps][gc_straferight][0] = 'd';
|
||||
gamecontroldefault[gcs_fps][gc_lookup ][0] = KEY_UPARROW;
|
||||
gamecontroldefault[gcs_fps][gc_lookdown ][0] = KEY_DOWNARROW;
|
||||
gamecontroldefault[gcs_fps][gc_turnleft ][0] = KEY_LEFTARROW;
|
||||
gamecontroldefault[gcs_fps][gc_turnright ][0] = KEY_RIGHTARROW;
|
||||
gamecontroldefault[gcs_fps][gc_centerview ][0] = KEY_END;
|
||||
gamecontroldefault[gcs_fps][gc_jump ][0] = KEY_SPACE;
|
||||
gamecontroldefault[gcs_fps][gc_use ][0] = KEY_LSHIFT;
|
||||
gamecontroldefault[gcs_fps][gc_fire ][0] = KEY_RCTRL;
|
||||
gamecontroldefault[gcs_fps][gc_fire ][1] = KEY_MOUSE1+0;
|
||||
gamecontroldefault[gcs_fps][gc_firenormal ][0] = 'c';
|
||||
// Keyboard controls
|
||||
gamecontrol[0][gcs_kart][gc_aimforward ][0] = KEY_UPARROW;
|
||||
gamecontrol[0][gcs_kart][gc_aimbackward][0] = KEY_DOWNARROW;
|
||||
gamecontrol[0][gcs_kart][gc_turnleft ][0] = KEY_LEFTARROW;
|
||||
gamecontrol[0][gcs_kart][gc_turnright ][0] = KEY_RIGHTARROW;
|
||||
gamecontrol[0][gcs_kart][gc_accelerate ][0] = 'a';
|
||||
gamecontrol[0][gcs_kart][gc_drift ][0] = 's';
|
||||
gamecontrol[0][gcs_kart][gc_brake ][0] = 'd';
|
||||
gamecontrol[0][gcs_kart][gc_fire ][0] = KEY_SPACE;
|
||||
gamecontrol[0][gcs_kart][gc_lookback ][0] = KEY_LSHIFT;
|
||||
|
||||
// Platform game controls (arrow keys)
|
||||
gamecontroldefault[gcs_platform][gc_forward ][0] = KEY_UPARROW;
|
||||
gamecontroldefault[gcs_platform][gc_backward ][0] = KEY_DOWNARROW;
|
||||
gamecontroldefault[gcs_platform][gc_strafeleft ][0] = 'a';
|
||||
gamecontroldefault[gcs_platform][gc_straferight][0] = 'd';
|
||||
gamecontroldefault[gcs_platform][gc_lookup ][0] = KEY_PGUP;
|
||||
gamecontroldefault[gcs_platform][gc_lookdown ][0] = KEY_PGDN;
|
||||
gamecontroldefault[gcs_platform][gc_turnleft ][0] = KEY_LEFTARROW;
|
||||
gamecontroldefault[gcs_platform][gc_turnright ][0] = KEY_RIGHTARROW;
|
||||
gamecontroldefault[gcs_platform][gc_centerview ][0] = KEY_END;
|
||||
gamecontroldefault[gcs_platform][gc_jump ][0] = KEY_SPACE;
|
||||
gamecontroldefault[gcs_platform][gc_use ][0] = KEY_LSHIFT;
|
||||
gamecontroldefault[gcs_platform][gc_fire ][0] = 's';
|
||||
gamecontroldefault[gcs_platform][gc_fire ][1] = KEY_MOUSE1+0;
|
||||
gamecontroldefault[gcs_platform][gc_firenormal ][0] = 'w';
|
||||
gamecontrol[0][gcs_kart][gc_pause ][0] = KEY_PAUSE;
|
||||
gamecontrol[0][gcs_kart][gc_console ][0] = KEY_CONSOLE;
|
||||
gamecontrol[0][gcs_kart][gc_screenshot ][0] = KEY_F8;
|
||||
gamecontrol[0][gcs_kart][gc_recordgif ][0] = KEY_F9;
|
||||
gamecontrol[0][gcs_kart][gc_viewpoint ][0] = KEY_F12;
|
||||
gamecontrol[0][gcs_kart][gc_talkkey ][0] = 't';
|
||||
//gamecontrol[0][gcs_kart][gc_teamkey ][0] = 'y';
|
||||
gamecontrol[0][gcs_kart][gc_scores ][0] = KEY_TAB;
|
||||
gamecontrol[0][gcs_kart][gc_spectate ][0] = '\'';
|
||||
gamecontrol[0][gcs_kart][gc_lookup ][0] = KEY_PGUP;
|
||||
gamecontrol[0][gcs_kart][gc_lookdown ][0] = KEY_PGDN;
|
||||
gamecontrol[0][gcs_kart][gc_centerview ][0] = KEY_END;
|
||||
gamecontrol[0][gcs_kart][gc_camreset ][0] = KEY_HOME;
|
||||
gamecontrol[0][gcs_kart][gc_camtoggle ][0] = KEY_BACKSPACE;
|
||||
|
||||
for (i = 1; i < num_gamecontrolschemes; i++) // skip gcs_custom (0)
|
||||
for (i = gcs_custom+1; i < num_gamecontrolschemes; i++) // skip gcs_custom
|
||||
{
|
||||
gamecontroldefault[i][gc_weaponnext ][0] = KEY_MOUSEWHEELUP+0;
|
||||
gamecontroldefault[i][gc_weaponprev ][0] = KEY_MOUSEWHEELDOWN+0;
|
||||
gamecontroldefault[i][gc_wepslot1 ][0] = '1';
|
||||
gamecontroldefault[i][gc_wepslot2 ][0] = '2';
|
||||
gamecontroldefault[i][gc_wepslot3 ][0] = '3';
|
||||
gamecontroldefault[i][gc_wepslot4 ][0] = '4';
|
||||
gamecontroldefault[i][gc_wepslot5 ][0] = '5';
|
||||
gamecontroldefault[i][gc_wepslot6 ][0] = '6';
|
||||
gamecontroldefault[i][gc_wepslot7 ][0] = '7';
|
||||
gamecontroldefault[i][gc_wepslot8 ][0] = '8';
|
||||
gamecontroldefault[i][gc_wepslot9 ][0] = '9';
|
||||
gamecontroldefault[i][gc_wepslot10 ][0] = '0';
|
||||
gamecontroldefault[i][gc_tossflag ][0] = '\'';
|
||||
gamecontroldefault[i][gc_camtoggle ][0] = 'v';
|
||||
gamecontroldefault[i][gc_camreset ][0] = 'r';
|
||||
gamecontroldefault[i][gc_talkkey ][0] = 't';
|
||||
gamecontroldefault[i][gc_teamkey ][0] = 'y';
|
||||
gamecontroldefault[i][gc_scores ][0] = KEY_TAB;
|
||||
gamecontroldefault[i][gc_console ][0] = KEY_CONSOLE;
|
||||
gamecontroldefault[i][gc_pause ][0] = 'p';
|
||||
gamecontroldefault[i][gc_screenshot ][0] = KEY_F8;
|
||||
gamecontroldefault[i][gc_recordgif ][0] = KEY_F9;
|
||||
gamecontroldefault[i][gc_viewpoint ][0] = KEY_F12;
|
||||
// Gamepad controls -- same for all schemes
|
||||
gamecontrol[0][j][gc_accelerate ][1] = KEY_JOY1+0; // A
|
||||
gamecontrol[0][j][gc_lookback ][1] = KEY_JOY1+2; // X
|
||||
gamecontrol[0][j][gc_brake ][1] = KEY_JOY1+1; // B
|
||||
gamecontrol[0][j][gc_fire ][1] = KEY_JOY1+4; // LB
|
||||
gamecontrol[0][j][gc_drift ][1] = KEY_JOY1+5; // RB
|
||||
|
||||
// Gamepad controls -- same for both schemes
|
||||
gamecontroldefault[i][gc_weaponnext ][1] = KEY_JOY1+1; // B
|
||||
gamecontroldefault[i][gc_weaponprev ][1] = KEY_JOY1+2; // X
|
||||
gamecontroldefault[i][gc_tossflag ][1] = KEY_JOY1+0; // A
|
||||
gamecontroldefault[i][gc_use ][1] = KEY_JOY1+4; // LB
|
||||
gamecontroldefault[i][gc_camtoggle ][1] = KEY_HAT1+0; // D-Pad Up
|
||||
gamecontroldefault[i][gc_camreset ][1] = KEY_JOY1+3; // Y
|
||||
gamecontroldefault[i][gc_centerview ][1] = KEY_JOY1+9; // Right Stick
|
||||
gamecontroldefault[i][gc_talkkey ][1] = KEY_HAT1+2; // D-Pad Left
|
||||
gamecontroldefault[i][gc_scores ][1] = KEY_HAT1+3; // D-Pad Right
|
||||
gamecontroldefault[i][gc_jump ][1] = KEY_JOY1+5; // RB
|
||||
gamecontroldefault[i][gc_pause ][1] = KEY_JOY1+6; // Back
|
||||
gamecontroldefault[i][gc_screenshot ][1] = KEY_HAT1+1; // D-Pad Down
|
||||
gamecontroldefault[i][gc_systemmenu ][0] = KEY_JOY1+7; // Start
|
||||
gamecontrol[0][j][gc_viewpoint ][1] = KEY_JOY1+3; // Y
|
||||
gamecontrol[0][j][gc_pause ][1] = KEY_JOY1+6; // Back
|
||||
gamecontrol[0][j][gc_systemmenu ][0] = KEY_JOY1+7; // Start
|
||||
gamecontrol[0][j][gc_talkkey ][1] = KEY_HAT1+1; // D-Pad Down
|
||||
gamecontrol[0][j][gc_scores ][1] = KEY_HAT1+0; // D-Pad Up
|
||||
|
||||
// Second player controls only have joypad defaults
|
||||
gamecontrolbisdefault[i][gc_weaponnext][0] = KEY_2JOY1+1; // B
|
||||
gamecontrolbisdefault[i][gc_weaponprev][0] = KEY_2JOY1+2; // X
|
||||
gamecontrolbisdefault[i][gc_tossflag ][0] = KEY_2JOY1+0; // A
|
||||
gamecontrolbisdefault[i][gc_use ][0] = KEY_2JOY1+4; // LB
|
||||
gamecontrolbisdefault[i][gc_camreset ][0] = KEY_2JOY1+3; // Y
|
||||
gamecontrolbisdefault[i][gc_centerview][0] = KEY_2JOY1+9; // Right Stick
|
||||
gamecontrolbisdefault[i][gc_jump ][0] = KEY_2JOY1+5; // RB
|
||||
//gamecontrolbisdefault[i][gc_pause ][0] = KEY_2JOY1+6; // Back
|
||||
//gamecontrolbisdefault[i][gc_systemmenu][0] = KEY_2JOY1+7; // Start
|
||||
gamecontrolbisdefault[i][gc_camtoggle ][0] = KEY_2HAT1+0; // D-Pad Up
|
||||
gamecontrolbisdefault[i][gc_screenshot][0] = KEY_2HAT1+1; // D-Pad Down
|
||||
//gamecontrolbisdefault[i][gc_talkkey ][0] = KEY_2HAT1+2; // D-Pad Left
|
||||
//gamecontrolbisdefault[i][gc_scores ][0] = KEY_2HAT1+3; // D-Pad Right
|
||||
gamecontrol[1][i][gc_accelerate ][0] = KEY_2JOY1+0; // A
|
||||
gamecontrol[1][i][gc_lookback ][0] = KEY_2JOY1+2; // X
|
||||
gamecontrol[1][i][gc_brake ][0] = KEY_2JOY1+1; // B
|
||||
gamecontrol[1][i][gc_fire ][0] = KEY_2JOY1+4; // LB
|
||||
gamecontrol[1][i][gc_drift ][0] = KEY_2JOY1+5; // RB
|
||||
|
||||
gamecontrol[2][i][gc_accelerate ][0] = KEY_3JOY1+0; // A
|
||||
gamecontrol[2][i][gc_lookback ][0] = KEY_3JOY1+2; // X
|
||||
gamecontrol[2][i][gc_brake ][0] = KEY_3JOY1+1; // B
|
||||
gamecontrol[2][i][gc_fire ][0] = KEY_3JOY1+4; // LB
|
||||
gamecontrol[2][i][gc_drift ][0] = KEY_3JOY1+5; // RB
|
||||
|
||||
gamecontrol[3][i][gc_accelerate ][0] = KEY_3JOY1+0; // A
|
||||
gamecontrol[3][i][gc_lookback ][0] = KEY_3JOY1+2; // X
|
||||
gamecontrol[3][i][gc_brake ][0] = KEY_3JOY1+1; // B
|
||||
gamecontrol[3][i][gc_fire ][0] = KEY_3JOY1+4; // LB
|
||||
gamecontrol[3][i][gc_drift ][0] = KEY_3JOY1+5; // RB
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1116,7 +981,6 @@ void G_CopyControls(INT32 (*setupcontrols)[2], INT32 (*fromcontrols)[2], const I
|
|||
gc = (gclist && gclen) ? gclist[i] : i;
|
||||
setupcontrols[gc][0] = fromcontrols[gc][0];
|
||||
setupcontrols[gc][1] = fromcontrols[gc][1];
|
||||
>>>>>>> srb2/next
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1174,27 +1038,19 @@ INT32 G_CheckDoubleUsage(INT32 keynum, boolean modify)
|
|||
INT32 result = gc_null;
|
||||
if (cv_controlperkey.value == 1)
|
||||
{
|
||||
INT32 i, j;
|
||||
INT32 i, j, k;
|
||||
for (i = 0; i < num_gamecontrols; i++)
|
||||
{
|
||||
for (j = 0; j < 2; j++)
|
||||
{
|
||||
if (gamecontrol[i][j] == keynum) {
|
||||
result = i;
|
||||
if (modify) gamecontrol[i][j] = KEY_NULL;
|
||||
}
|
||||
if (gamecontrolbis[i][j] == keynum) {
|
||||
result = i;
|
||||
if (modify) gamecontrolbis[i][j] = KEY_NULL;
|
||||
}
|
||||
if (gamecontrol3[i][j] == keynum) {
|
||||
result = i;
|
||||
if (modify) gamecontrol3[i][j] = KEY_NULL;
|
||||
}
|
||||
if (gamecontrol4[i][j] == keynum) {
|
||||
result = i;
|
||||
if (modify) gamecontrol4[i][j] = KEY_NULL;
|
||||
for (k = 0; k < MAXSPLITSCREENPLAYERS; k++)
|
||||
{
|
||||
if (gamecontrol[k][i][j] == keynum) {
|
||||
result = i;
|
||||
if (modify) gamecontrol[k][i][j] = KEY_NULL;
|
||||
}
|
||||
}
|
||||
|
||||
if (result && !modify)
|
||||
return result;
|
||||
}
|
||||
|
|
@ -1219,16 +1075,12 @@ static INT32 G_FilterKeyByVersion(INT32 numctrl, INT32 keyidx, INT32 player, INT
|
|||
else if (keyidx == 1 && *keynum2 == KEY_PAUSE)
|
||||
return -1; // skip setting control
|
||||
|
||||
<<<<<<< HEAD
|
||||
#if 1
|
||||
// We don't have changed control defaults yet
|
||||
(void)numctrl;
|
||||
(void)player;
|
||||
(void)nestedoverride;
|
||||
#else
|
||||
#if !defined (DC) && !defined (_PSP) && !defined (GP2X) && !defined (_NDS) && !defined(WMINPUT) && !defined(_WII)
|
||||
=======
|
||||
>>>>>>> srb2/next
|
||||
if (GETMAJOREXECVERSION(cv_execversion.value) < 27 && ( // v2.1.22
|
||||
numctrl == gc_weaponnext || numctrl == gc_weaponprev || numctrl == gc_tossflag ||
|
||||
numctrl == gc_use || numctrl == gc_camreset || numctrl == gc_jump ||
|
||||
|
|
@ -1321,11 +1173,7 @@ static INT32 G_FilterKeyByVersion(INT32 numctrl, INT32 keyidx, INT32 player, INT
|
|||
else
|
||||
return 0;
|
||||
}
|
||||
<<<<<<< HEAD
|
||||
#endif
|
||||
#endif
|
||||
=======
|
||||
>>>>>>> srb2/next
|
||||
|
||||
// All's good, so pass the keynum as-is
|
||||
if (keyidx == 1)
|
||||
|
|
|
|||
|
|
@ -79,14 +79,7 @@ typedef enum
|
|||
gc_drift,
|
||||
gc_brake,
|
||||
gc_fire,
|
||||
<<<<<<< HEAD
|
||||
gc_lookback,
|
||||
=======
|
||||
gc_firenormal,
|
||||
gc_tossflag,
|
||||
gc_use,
|
||||
gc_camtoggle,
|
||||
>>>>>>> srb2/next
|
||||
gc_camreset,
|
||||
gc_camtoggle,
|
||||
gc_spectate,
|
||||
|
|
@ -111,8 +104,7 @@ typedef enum
|
|||
typedef enum
|
||||
{
|
||||
gcs_custom,
|
||||
gcs_fps,
|
||||
gcs_platform,
|
||||
gcs_kart, // Kart doesn't really need this code, like, at all? But I don't feel like removing it.
|
||||
num_gamecontrolschemes
|
||||
} gamecontrolschemes_e;
|
||||
|
||||
|
|
@ -132,42 +124,23 @@ extern INT32 joyxmove[JOYAXISSET], joyymove[JOYAXISSET], joy2xmove[JOYAXISSET],
|
|||
extern UINT8 gamekeydown[NUMINPUTS];
|
||||
|
||||
// two key codes (or virtual key) per game control
|
||||
extern INT32 gamecontrol[num_gamecontrols][2];
|
||||
extern INT32 gamecontrolbis[num_gamecontrols][2]; // secondary splitscreen player
|
||||
<<<<<<< HEAD
|
||||
extern INT32 gamecontrol3[num_gamecontrols][2];
|
||||
extern INT32 gamecontrol4[num_gamecontrols][2];
|
||||
#define PLAYER1INPUTDOWN(gc) (gamekeydown[gamecontrol[gc][0]] || gamekeydown[gamecontrol[gc][1]])
|
||||
#define PLAYER2INPUTDOWN(gc) (gamekeydown[gamecontrolbis[gc][0]] || gamekeydown[gamecontrolbis[gc][1]])
|
||||
#define PLAYER3INPUTDOWN(gc) (gamekeydown[gamecontrol3[gc][0]] || gamekeydown[gamecontrol3[gc][1]])
|
||||
#define PLAYER4INPUTDOWN(gc) (gamekeydown[gamecontrol4[gc][0]] || gamekeydown[gamecontrol4[gc][1]])
|
||||
=======
|
||||
extern INT32 gamecontroldefault[num_gamecontrolschemes][num_gamecontrols][2]; // default control storage, use 0 (gcs_custom) for memory retention
|
||||
extern INT32 gamecontrolbisdefault[num_gamecontrolschemes][num_gamecontrols][2];
|
||||
#define PLAYER1INPUTDOWN(gc) (gamekeydown[gamecontrol[gc][0]] || gamekeydown[gamecontrol[gc][1]])
|
||||
#define PLAYER2INPUTDOWN(gc) (gamekeydown[gamecontrolbis[gc][0]] || gamekeydown[gamecontrolbis[gc][1]])
|
||||
#define PLAYERINPUTDOWN(p, gc) ((p) == 2 ? PLAYER2INPUTDOWN(gc) : PLAYER1INPUTDOWN(gc))
|
||||
extern INT32 gamecontrol[MAXSPLITSCREENPLAYERS][num_gamecontrols][2];
|
||||
extern INT32 gamecontroldefault[MAXSPLITSCREENPLAYERS][num_gamecontrolschemes][num_gamecontrols][2]; // default control storage, use 0 (gcs_custom) for memory retention
|
||||
#define PLAYERINPUTDOWN(p, gc) (gamekeydown[p-1][gamecontrol[gc][0]] || gamekeydown[p-1][gamecontrol[gc][1]])
|
||||
|
||||
#define num_gcl_tutorial_check 6
|
||||
#define num_gcl_tutorial_used 8
|
||||
#define num_gcl_tutorial_full 13
|
||||
#define num_gcl_movement 4
|
||||
#define num_gcl_camera 2
|
||||
#define num_gcl_movement_camera 6
|
||||
#define num_gcl_jump 1
|
||||
#define num_gcl_use 1
|
||||
#define num_gcl_jump_use 2
|
||||
#define num_gcl_accelerate 1
|
||||
#define num_gcl_brake 1
|
||||
#define num_gcl_spindash 3
|
||||
#define num_gcl_movement 5
|
||||
#define num_gcl_item 3
|
||||
#define num_gcl_full 9
|
||||
|
||||
extern const INT32 gcl_tutorial_check[num_gcl_tutorial_check];
|
||||
extern const INT32 gcl_tutorial_used[num_gcl_tutorial_used];
|
||||
extern const INT32 gcl_tutorial_full[num_gcl_tutorial_full];
|
||||
extern const INT32 gcl_accelerate[num_gcl_accelerate];
|
||||
extern const INT32 gcl_brake[num_gcl_brake];
|
||||
extern const INT32 gcl_spindash[num_gcl_spindash];
|
||||
extern const INT32 gcl_movement[num_gcl_movement];
|
||||
extern const INT32 gcl_camera[num_gcl_camera];
|
||||
extern const INT32 gcl_movement_camera[num_gcl_movement_camera];
|
||||
extern const INT32 gcl_jump[num_gcl_jump];
|
||||
extern const INT32 gcl_use[num_gcl_use];
|
||||
extern const INT32 gcl_jump_use[num_gcl_jump_use];
|
||||
>>>>>>> srb2/next
|
||||
extern const INT32 gcl_item[num_gcl_item];
|
||||
extern const INT32 gcl_full[num_gcl_full];
|
||||
|
||||
// peace to my little coder fingers!
|
||||
// check a gamecontrol being active or not
|
||||
|
|
@ -184,17 +157,12 @@ void G_ClearControlKeys(INT32 (*setupcontrols)[2], INT32 control);
|
|||
void G_ClearAllControlKeys(void);
|
||||
void Command_Setcontrol_f(void);
|
||||
void Command_Setcontrol2_f(void);
|
||||
<<<<<<< HEAD
|
||||
void Command_Setcontrol3_f(void);
|
||||
void Command_Setcontrol4_f(void);
|
||||
void G_Controldefault(UINT8 player);
|
||||
void G_SaveKeySetting(FILE *f);
|
||||
=======
|
||||
void G_DefineDefaultControls(void);
|
||||
INT32 G_GetControlScheme(INT32 (*fromcontrols)[2], const INT32 *gclist, INT32 gclen);
|
||||
void G_CopyControls(INT32 (*setupcontrols)[2], INT32 (*fromcontrols)[2], const INT32 *gclist, INT32 gclen);
|
||||
void G_SaveKeySetting(FILE *f, INT32 (*fromcontrols)[2], INT32 (*fromcontrolsbis)[2]);
|
||||
>>>>>>> srb2/next
|
||||
INT32 G_CheckDoubleUsage(INT32 keynum, boolean modify);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue