X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=16ff5403894d2771b5e3dc7726a0f5e7c3a4c47f;hb=1146572677fd6858df5fc1fabfd7f7294bdefed7;hp=7b9debaca77f20680ad0c35e467084e8e1bc9056;hpb=684ddd785539f8e049791894a3246db5dc020766;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 7b9debac..16ff5403 100644 --- a/src/main.h +++ b/src/main.h @@ -217,6 +217,22 @@ struct OptionInfo boolean verbose; }; +struct SetupKeyboardInfo +{ + KeySym left; + KeySym right; + KeySym up; + KeySym down; + KeySym snap; + KeySym bomb; +}; + +struct SetupJoystickInfo +{ + int snap; + int bomb; +}; + struct SetupInfo { boolean sound_on; @@ -230,7 +246,13 @@ struct SetupInfo boolean fading_on; boolean autorecord_on; boolean quick_doors; - int joystick_nr; + struct + { + boolean use_joystick; + int joystick_nr; + struct SetupJoystickInfo joy; + struct SetupKeyboardInfo key; + } input[MAX_PLAYERS]; }; struct PlayerInfo @@ -242,6 +264,8 @@ struct PlayerInfo int index_nr, client_nr, element_nr; + byte action; + char login_name[MAX_NAMELEN]; char alias_name[MAX_NAMELEN]; int handicap; @@ -395,20 +419,18 @@ extern int AllPlayersGone; extern int FrameCounter, TimeFrames, TimeLeft; extern int MampferNr, SiebAktiv; -extern byte network_player_action[]; extern boolean network_player_action_received; extern int TestPlayer; extern struct LevelDirInfo leveldir[]; extern struct LevelInfo level; -extern struct PlayerInfo stored_player[]; -extern struct PlayerInfo *local_player; +extern struct PlayerInfo stored_player[], *local_player; extern struct HiScore highscore[]; extern struct RecordingInfo tape; extern struct SoundInfo Sound[]; extern struct JoystickInfo joystick[]; -struct OptionInfo options; -struct SetupInfo setup; +extern struct OptionInfo options; +extern struct SetupInfo setup; extern char *sound_name[]; extern int background_loop[]; @@ -989,6 +1011,16 @@ extern int num_bg_loops; (s)==SND_TYGER || (s)==SND_VOYAGER || \ (s)==SND_TWILIGHT) +/* default input keys */ +#define KEY_UNDEFINDED 0 +#define DEFAULT_KEY_LEFT XK_Left +#define DEFAULT_KEY_RIGHT XK_Right +#define DEFAULT_KEY_UP XK_Up +#define DEFAULT_KEY_DOWN XK_Down +#define DEFAULT_KEY_SNAP XK_Shift_L +#define DEFAULT_KEY_BOMB XK_Shift_R +#define DEFAULT_KEY_OKAY XK_Return +#define DEFAULT_KEY_CANCEL XK_Escape /* directions for moving */ #define MV_NO_MOVING 0 @@ -1017,7 +1049,8 @@ extern int num_bg_loops; #define TYPENAME 5 #define HALLOFFAME 6 #define SETUP 7 -#define EXITGAME 8 +#define SETUPINPUT 8 +#define EXITGAME 9 /* values for game_emulation */ #define EMU_NONE 0