X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=18d355d045aad8aabe748ce49aa35874ffcbd327;hb=884db54d739f5838243315f390d28634cb99a7d9;hp=86377ccf152a4df2741a069c899cc16518f20584;hpb=bf7f1c667ad861d6cadacd0b9d6fe517be977a6e;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 86377ccf..18d355d0 100644 --- a/src/main.h +++ b/src/main.h @@ -49,8 +49,6 @@ #define MAX_LEV_FIELDX 128 #define MAX_LEV_FIELDY 128 -#define MAX_PLAYERS 4 - #define SCREENX(a) ((a) - scroll_x) #define SCREENY(a) ((a) - scroll_y) #define LEVELX(a) ((a) + scroll_x) @@ -158,7 +156,7 @@ #define IS_DRAWABLE(e) ((e) < EL_BLOCKED) #define IS_NOT_DRAWABLE(e) ((e) >= EL_BLOCKED) #define TAPE_IS_EMPTY(x) ((x).length == 0) -#define TAPE_IS_STOPPED(x) (!(x).recording && !(x).playing &&!(x).pausing) +#define TAPE_IS_STOPPED(x) (!(x).recording && !(x).playing) #define PLAYERINFO(x,y) (&stored_player[StorePlayer[x][y]-EL_SPIELER1]) #define SHIELD_ON(p) ((p)->shield_passive_time_left > 0) @@ -185,7 +183,6 @@ #define NUM_BITMAPS 12 /* boundaries of arrays etc. */ -#define MAX_PLAYER_NAME_LEN 10 #define MAX_LEVEL_NAME_LEN 32 #define MAX_LEVEL_AUTHOR_LEN 32 #define MAX_TAPELEN (1000 * 50) /* max. time * framerate */ @@ -213,56 +210,6 @@ struct HiScore int Score; }; -struct SetupJoystickInfo -{ - char *device_name; - int xleft, xmiddle, xright; - int yupper, ymiddle, ylower; - int snap; - int bomb; -}; - -struct SetupKeyboardInfo -{ - Key left; - Key right; - Key up; - Key down; - Key snap; - Key bomb; -}; - -struct SetupInputInfo -{ - boolean use_joystick; - struct SetupJoystickInfo joy; - struct SetupKeyboardInfo key; -}; - -struct SetupInfo -{ - char *player_name; - - boolean sound; - boolean sound_loops; - boolean sound_music; - boolean sound_simple; - boolean toons; - boolean double_buffering; - boolean direct_draw; /* !double_buffering (redundant!) */ - boolean scroll_delay; - boolean soft_scrolling; - boolean fading; - boolean autorecord; - boolean quick_doors; - boolean team_mode; - boolean handicap; - boolean time_limit; - boolean fullscreen; - - struct SetupInputInfo input[MAX_PLAYERS]; -}; - struct PlayerInfo { boolean present; /* player present in level playfield */ @@ -278,8 +225,6 @@ struct PlayerInfo byte programmed_action; /* action forced by game itself (like moving through doors); overrides other actions */ - int joystick_fd; /* file descriptor of player's joystick */ - int jx,jy, last_jx,last_jy; int MovDir, MovPos, GfxPos; int Frame; @@ -289,12 +234,12 @@ struct PlayerInfo boolean LevelSolved, GameOver; boolean snapped; - unsigned long move_delay; - int move_delay_value; - int last_move_dir; int is_moving; + unsigned long move_delay; + int move_delay_value; + unsigned long push_delay; unsigned long push_delay_value; @@ -357,9 +302,13 @@ struct TapeInfo boolean pause_before_death; boolean recording, playing, pausing; boolean fast_forward; + boolean index_search; + boolean quick_resume; + boolean single_step; boolean changed; boolean player_participates[MAX_PLAYERS]; int num_participating_players; + struct { byte action[MAX_PLAYERS]; @@ -396,15 +345,11 @@ extern Pixmap tile_clipmask[]; extern DrawBuffer *fieldbuffer; extern DrawBuffer *drawto_field; -extern int joystick_device; -extern char *joystick_device_name[]; - extern int game_status; extern boolean level_editor_test_game; extern boolean network_playing; extern int key_joystick_mapping; -extern int global_joystick_status, joystick_status; extern boolean redraw[MAX_BUF_XSIZE][MAX_BUF_YSIZE]; extern int redraw_x1, redraw_y1; @@ -426,7 +371,6 @@ extern short ExplodeField[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; extern unsigned long Elementeigenschaften1[MAX_ELEMENTS]; extern unsigned long Elementeigenschaften2[MAX_ELEMENTS]; -extern int level_nr; extern int lev_fieldx,lev_fieldy, scroll_x,scroll_y; extern int FX,FY, ScrollStepSize; @@ -450,14 +394,10 @@ extern struct LevelInfo level; extern struct PlayerInfo stored_player[], *local_player; extern struct HiScore highscore[]; extern struct TapeInfo tape; -extern struct JoystickInfo joystick[]; -extern struct SetupInfo setup; extern struct GameInfo game; extern struct GlobalInfo global; extern char *sound_name[]; -extern int background_loop[]; -extern int num_bg_loops; extern char *element_info[]; extern int num_element_info; @@ -1498,22 +1438,14 @@ extern int num_element_info; #define NUM_SOUNDS 55 -/* default input keys */ -#define DEFAULT_KEY_LEFT KSYM_Left -#define DEFAULT_KEY_RIGHT KSYM_Right -#define DEFAULT_KEY_UP KSYM_Up -#define DEFAULT_KEY_DOWN KSYM_Down -#define DEFAULT_KEY_SNAP KSYM_Shift_L -#define DEFAULT_KEY_BOMB KSYM_Shift_R -#define DEFAULT_KEY_OKAY KSYM_Return -#define DEFAULT_KEY_CANCEL KSYM_Escape - -/* directions for moving */ -#define MV_NO_MOVING 0 -#define MV_LEFT (1 << 0) -#define MV_RIGHT (1 << 1) -#define MV_UP (1 << 2) -#define MV_DOWN (1 << 3) + +/* sound effects */ +#define SND_TEST1 0 +#define SND_TEST2 1 +#define SND_TEST3 2 + +#define NUM_SOUND_EFFECTS 3 + /* values for game_status */ #define EXITGAME 0 @@ -1525,8 +1457,6 @@ extern int num_element_info; #define TYPENAME 6 #define HALLOFFAME 7 #define SETUP 8 -#define SETUPINPUT 9 -#define CALIBRATION 10 #define PROGRAM_VERSION_MAJOR 2 #define PROGRAM_VERSION_MINOR 0 @@ -1542,6 +1472,8 @@ extern int num_element_info; #define WINDOW_SUBTITLE_STRING PROGRAM_RIGHTS_STRING " " PROGRAM_AUTHOR_STRING #define ICON_TITLE_STRING PROGRAM_TITLE_STRING #define UNIX_USERDATA_DIRECTORY ".rocksndiamonds" +#define COOKIE_PREFIX "ROCKSNDIAMONDS" +#define FILENAME_PREFIX "Rocks" #define X11_ICON_FILENAME "rocks_icon.xbm" #define X11_ICONMASK_FILENAME "rocks_iconmask.xbm"