Branch G_Controldefault into FPS and PLATFORM

This commit is contained in:
mazmazz 2018-11-10 13:28:10 -05:00
parent 896de73c60
commit 727ca143b5
3 changed files with 66 additions and 38 deletions

View File

@ -611,42 +611,66 @@ INT32 G_KeyStringtoNum(const char *keystr)
return 0; return 0;
} }
void G_Controldefault(void) void G_Controldefault(INT32 scheme, boolean setcommon)
{ {
gamecontrol[gc_forward ][0] = 'w'; if (scheme == CONTROL_DEFAULT_PLATFORM)
gamecontrol[gc_backward ][0] = 's'; {
gamecontrol[gc_strafeleft ][0] = 'a'; gamecontrol[gc_forward ][0] = KEY_UPARROW;
gamecontrol[gc_straferight][0] = 'd'; gamecontrol[gc_backward ][0] = KEY_DOWNARROW;
gamecontrol[gc_turnleft ][0] = KEY_LEFTARROW; gamecontrol[gc_strafeleft ][0] = 'a';
gamecontrol[gc_turnright ][0] = KEY_RIGHTARROW; gamecontrol[gc_straferight][0] = 'd';
gamecontrol[gc_weaponnext ][0] = 'e'; gamecontrol[gc_lookup ][0] = KEY_PGUP;
gamecontrol[gc_weaponprev ][0] = 'q'; gamecontrol[gc_lookdown ][0] = KEY_PGDN;
gamecontrol[gc_wepslot1 ][0] = '1'; gamecontrol[gc_turnleft ][0] = KEY_LEFTARROW;
gamecontrol[gc_wepslot2 ][0] = '2'; gamecontrol[gc_turnright ][0] = KEY_RIGHTARROW;
gamecontrol[gc_wepslot3 ][0] = '3'; gamecontrol[gc_centerview ][0] = KEY_END;
gamecontrol[gc_wepslot4 ][0] = '4'; gamecontrol[gc_jump ][0] = KEY_SPACE;
gamecontrol[gc_wepslot5 ][0] = '5'; gamecontrol[gc_use ][0] = KEY_LSHIFT;
gamecontrol[gc_wepslot6 ][0] = '6'; gamecontrol[gc_fire ][0] = 's';
gamecontrol[gc_wepslot7 ][0] = '7'; gamecontrol[gc_fire ][1] = KEY_MOUSE1+0;
gamecontrol[gc_wepslot8 ][0] = '8'; gamecontrol[gc_firenormal ][0] = 'w';
gamecontrol[gc_wepslot9 ][0] = '9'; }
gamecontrol[gc_wepslot10 ][0] = '0'; else // if (scheme == CONTROL_DEFAULT_FPS)
gamecontrol[gc_fire ][0] = KEY_RCTRL; {
gamecontrol[gc_fire ][1] = KEY_MOUSE1+0; gamecontrol[gc_forward ][0] = 'w';
gamecontrol[gc_firenormal ][0] = 'c'; gamecontrol[gc_backward ][0] = 's';
gamecontrol[gc_tossflag ][0] = '\''; gamecontrol[gc_strafeleft ][0] = 'a';
gamecontrol[gc_use ][0] = KEY_LSHIFT; gamecontrol[gc_straferight][0] = 'd';
gamecontrol[gc_camtoggle ][0] = 'v'; gamecontrol[gc_lookup ][0] = KEY_UPARROW;
gamecontrol[gc_camreset ][0] = 'r'; gamecontrol[gc_lookdown ][0] = KEY_DOWNARROW;
gamecontrol[gc_lookup ][0] = KEY_UPARROW; gamecontrol[gc_turnleft ][0] = KEY_LEFTARROW;
gamecontrol[gc_lookdown ][0] = KEY_DOWNARROW; gamecontrol[gc_turnright ][0] = KEY_RIGHTARROW;
gamecontrol[gc_centerview ][0] = KEY_END; gamecontrol[gc_centerview ][0] = KEY_END;
gamecontrol[gc_talkkey ][0] = 't'; gamecontrol[gc_jump ][0] = KEY_SPACE;
gamecontrol[gc_teamkey ][0] = 'y'; gamecontrol[gc_use ][0] = KEY_LSHIFT;
gamecontrol[gc_scores ][0] = KEY_TAB; gamecontrol[gc_fire ][0] = KEY_RCTRL;
gamecontrol[gc_jump ][0] = KEY_SPACE; gamecontrol[gc_fire ][1] = KEY_MOUSE1+0;
gamecontrol[gc_console ][0] = KEY_CONSOLE; gamecontrol[gc_firenormal ][0] = 'c';
gamecontrol[gc_pause ][0] = KEY_PAUSE; }
if (setcommon)
{
gamecontrol[gc_weaponnext ][0] = 'e';
gamecontrol[gc_weaponprev ][0] = 'q';
gamecontrol[gc_wepslot1 ][0] = '1';
gamecontrol[gc_wepslot2 ][0] = '2';
gamecontrol[gc_wepslot3 ][0] = '3';
gamecontrol[gc_wepslot4 ][0] = '4';
gamecontrol[gc_wepslot5 ][0] = '5';
gamecontrol[gc_wepslot6 ][0] = '6';
gamecontrol[gc_wepslot7 ][0] = '7';
gamecontrol[gc_wepslot8 ][0] = '8';
gamecontrol[gc_wepslot9 ][0] = '9';
gamecontrol[gc_wepslot10 ][0] = '0';
gamecontrol[gc_tossflag ][0] = '\'';
gamecontrol[gc_camtoggle ][0] = 'v';
gamecontrol[gc_camreset ][0] = 'r';
gamecontrol[gc_talkkey ][0] = 't';
gamecontrol[gc_teamkey ][0] = 'y';
gamecontrol[gc_scores ][0] = KEY_TAB;
gamecontrol[gc_console ][0] = KEY_CONSOLE;
gamecontrol[gc_pause ][0] = KEY_PAUSE;
}
} }
void G_SaveKeySetting(FILE *f) void G_SaveKeySetting(FILE *f)

View File

@ -27,6 +27,10 @@
#define JOYHATS 4 // 4 hats #define JOYHATS 4 // 4 hats
#define JOYAXISSET 4 // 4 Sets of 2 axises #define JOYAXISSET 4 // 4 Sets of 2 axises
#define CONTROL_DEFAULT_FPS 0
#define CONTROL_DEFAULT_PLATFORM 1
#define CONTROL_DEFAULT_CUSTOM 2
// //
// mouse and joystick buttons are handled as 'virtual' keys // mouse and joystick buttons are handled as 'virtual' keys
// //
@ -133,7 +137,7 @@ INT32 G_KeyStringtoNum(const char *keystr);
void G_ClearControlKeys(INT32 (*setupcontrols)[2], INT32 control); void G_ClearControlKeys(INT32 (*setupcontrols)[2], INT32 control);
void Command_Setcontrol_f(void); void Command_Setcontrol_f(void);
void Command_Setcontrol2_f(void); void Command_Setcontrol2_f(void);
void G_Controldefault(void); void G_Controldefault(INT32 scheme);
void G_SaveKeySetting(FILE *f); void G_SaveKeySetting(FILE *f);
void G_CheckDoubleUsage(INT32 keynum); void G_CheckDoubleUsage(INT32 keynum);

View File

@ -58,7 +58,7 @@ typedef off_t off64_t;
#if defined(__MINGW32__) && ((__GNUC__ > 7) || (__GNUC__ == 6 && __GNUC_MINOR__ >= 3)) #if defined(__MINGW32__) && ((__GNUC__ > 7) || (__GNUC__ == 6 && __GNUC_MINOR__ >= 3))
#define PRIdS "u" #define PRIdS "u"
#elif defined (_WIN32) #elif defined (_WIN32)
#define PRIdS "Iu" #define PRIdS "Iu"
#elif defined (DJGPP) #elif defined (DJGPP)
#define PRIdS "u" #define PRIdS "u"
@ -475,7 +475,7 @@ void M_FirstLoadConfig(void)
} }
// load default control // load default control
G_Controldefault(); G_Controldefault(CONTROL_DEFAULT_FPS, true);
// load config, make sure those commands doesnt require the screen... // load config, make sure those commands doesnt require the screen...
COM_BufInsertText(va("exec \"%s\"\n", configfile)); COM_BufInsertText(va("exec \"%s\"\n", configfile));