X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=a820598a929e7d4ca06c2a779be55f39282302a6;hb=7b6d9e43fdb99e1923f4a2a401ae60e7b2975bd8;hp=416ba9f2308c21090ca24b846c25fa8eb3868fc4;hpb=4a137589031aa2c7effd6b020170098a976c566b;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 416ba9f2..a820598a 100644 --- a/src/main.h +++ b/src/main.h @@ -156,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) @@ -234,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; @@ -304,6 +304,7 @@ struct TapeInfo boolean fast_forward; boolean index_search; boolean quick_resume; + boolean single_step; boolean changed; boolean player_participates[MAX_PLAYERS]; int num_participating_players; @@ -396,9 +397,9 @@ extern struct TapeInfo tape; extern struct GameInfo game; extern struct GlobalInfo global; +extern struct SoundEffectInfo sound_effects[]; + extern char *sound_name[]; -extern int background_loop[]; -extern int num_bg_loops; extern char *element_info[]; extern int num_element_info; @@ -1439,6 +1440,112 @@ extern int num_element_info; #define NUM_SOUNDS 55 + +/* sound effects */ +#define SND_TEST1 0 +#define SND_TEST2 1 +#define SND_TEST3 2 + +#define NUM_SOUND_EFFECTS 3 + + +#define SND_AMOEBA_GROWING 0 +#define SND_PLAYER_SCREAMING 0 +#define SND_ACID_SPLASHING 0 +#define SND_MOLE_EATING_AMOEBA 0 +#define SND_PENGUIN_ENTERING_EXIT 0 +#define SND_PLAYER_ENTERING_EXIT 0 +#define SND_PLAYER_SOLVING_SOKOBAN 0 +#define SND_TIME_ORB_FULL_IMPACT 0 +#define SND_TIME_ORB_EMPTY_IMPACT 0 +#define SND_ELECTRIC_BULB_LIGHT 0 +#define SND_SOKOBAN_FIELD_FILLING 0 +#define SND_LEVELTIME_RUNNING_OUT 0 +#define SND_EXTRA_TIME_COLLECTING 0 +#define SND_TIME_ORB_FULL_COLLECTING 0 +#define SND_MENU_HALL_OF_FAME 0 +#define SND_KEY_IMPACT 0 +#define SND_EM_KEY_IMPACT 0 +#define SND_BUG_MOVING 0 +#define SND_BUTTERFLY_MOVING 0 +#define SND_ROCK_IMPACT 0 +#define SND_BD_ROCK_IMPACT 0 +#define SND_AMOEBA_TURNS_TO_ROCK 0 +#define SND_NUT_IMPACT 0 +#define SND_PEARL_BREAKING 0 +#define SND_NUT_CRACKING 0 +#define SND_NUT_PUSHING 0 +#define SND_PLAYER_LAUGHING_AT 0 +#define SND_ROBOT_WHEEL_RUNNING 0 +#define SND_TIMEGATE_WHEEL_RUNNING 0 +#define SND_MAGIC_WALL_RUNNING 0 +#define SND_YAMYAM_WAITING 0 +#define SND_MENU_DOOR 0 +#define SND_SWITCHGATE_OPENING 0 +#define SND_SWITCHGATE_CLOSING 0 +#define SND_TIMEGATE_OPENING 0 +#define SND_TIMEGATE_CLOSING 0 +#define SND_EXIT_OPENING 0 +#define SND_EMERALD_IMPACT 0 +#define SND_BD_DIAMOND_IMPACT 0 +#define SND_DIAMOND_IMPACT 0 +#define SND_INFOTRON_IMPACT 0 +#define SND_AMOEBA_TURNS_TO_GEM 0 +#define SND_EMERALD_COLLECTING 0 +#define SND_BD_DIAMOND_COLLECTING 0 +#define SND_DIAMOND_COLLECTING 0 +#define SND_PEARL_COLLECTING 0 +#define SND_CRYSTAL_COLLECTING 0 +#define SND_SPEED_PILL_COLLECTING 0 +#define SND_ENVELOPE_COLLECTING 0 +#define SND_SHIELD_PASSIVE_COLLECTING 0 +#define SND_SHIELD_ACTIVE_COLLECTING 0 +#define SND_DYNAMITE_COLLECTING 0 +#define SND_DYNABOMB_NR_COLLECTING 0 +#define SND_DYNABOMB_SZ_COLLECTING 0 +#define SND_DYNABOMB_XL_COLLECTING 0 +#define SND_KEY_COLLECTING 0 +#define SND_EM_KEY_COLLECTING 0 +#define SND_ROCK_PUSHING 0 +#define SND_BD_ROCK_PUSHING 0 +#define SND_BOMB_PUSHING 0 +#define SND_DX_SUPABOMB_PUSHING 0 +#define SND_TIME_ORB_EMPTY_PUSHING 0 +#define SND_SPRING_PUSHING 0 +#define SND_SOKOBAN_OBJECT_PUSHING 0 +#define SND_SATELLITE_PUSHING 0 +#define SND_SP_DISK_YELLOW_PUSHING 0 +#define SND_DIAMOND_SMASHING 0 +#define SND_MAGIC_WALL_ACTIVATING 0 +#define SND_MENU_INFO_SCREEN 0 +#define SND_EXPLOSION 0 +#define SND_SPACESHIP_MOVING 0 +#define SND_FIREFLY_MOVING 0 +#define SND_ROBOT_MOVING 0 +#define SND_SAND_DIGGING 0 +#define SND_SAND_INVISIBLE_DIGGING 0 +#define SND_TRAP_INACTIVE_DIGGING 0 +#define SND_BALLOON_MOVING 0 +#define SND_LEVELTIME_BONUS 0 +#define SND_DYNAMITE_BURNING 0 +#define SND_SP_BASE_DIGGING 0 +#define SND_SP_BUGGY_BASE_DIGGING 0 +#define SND_SP_INFOTRON_COLLECTING 0 +#define SND_SP_DISK_RED_COLLECTING 0 +#define SND_SP_ZONK_IMPACT 0 +#define SND_SP_ZONK_PUSHING 0 +#define SND_SP_DISK_ORANGE_PUSHING 0 +#define SND_SP_BUGGY_BASE_PASSING 0 +#define SND_SP_EXPLOSION 0 +#define SND_EMPTY_SPACE_DIGGING 0 +#define SND_EM_GATE_PASSING 0 +#define SND_SWITCHGATE_PASSING 0 +#define SND_TIMEGATE_PASSING 0 +#define SND_SP_PORT_PASSING 0 + +#define NUM_SOUND_EFFECTS__NEW 0 + + /* values for game_status */ #define EXITGAME 0 #define MAINMENU 1 @@ -1455,19 +1562,12 @@ extern int num_element_info; #define PROGRAM_VERSION_PATCH 2 #define PROGRAM_VERSION_STRING "2.0.2" -#define PROGRAM_DATE_STRING "[2002-04-01 01:11]" - #define PROGRAM_TITLE_STRING "Rocks'n'Diamonds" #define PROGRAM_AUTHOR_STRING "Holger Schemel" #define PROGRAM_RIGHTS_STRING "Copyright ^1995-2002 by" #define PROGRAM_DOS_PORT_STRING "DOS port done by Guido Schulz" #define PROGRAM_IDENT_STRING PROGRAM_VERSION_STRING " " TARGET_STRING -#define PROGRAM_BUILD_STRING PROGRAM_IDENT_STRING " " PROGRAM_DATE_STRING -#ifdef DEBUG -#define WINDOW_TITLE_STRING PROGRAM_TITLE_STRING " " PROGRAM_BUILD_STRING -#else #define WINDOW_TITLE_STRING PROGRAM_TITLE_STRING " " PROGRAM_IDENT_STRING -#endif #define WINDOW_SUBTITLE_STRING PROGRAM_RIGHTS_STRING " " PROGRAM_AUTHOR_STRING #define ICON_TITLE_STRING PROGRAM_TITLE_STRING #define UNIX_USERDATA_DIRECTORY ".rocksndiamonds"