X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=976325dac8d68b13216a2f4f69d0563cebe76b4e;hb=b13dc8e30a0c07bea53bf168ae6d1017394d3c22;hp=71cfcdf9402604d4342fa48810b122a28fd8fcdc;hpb=2fc3381a6d44fe617388ac019170910e337bb07e;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 71cfcdf9..976325da 100644 --- a/src/main.h +++ b/src/main.h @@ -180,6 +180,7 @@ #define MAX_TAPELEN (1000 * 50) /* max. time * framerate */ #define MAX_SCORE_ENTRIES 100 #define MAX_ELEMENTS 700 /* 500 static + 200 runtime */ +#define MAX_GRAPHICS 1536 /* see below: NUM_TILES */ #define MAX_NUM_AMOEBA 100 /* values for elements with content */ @@ -340,8 +341,19 @@ struct GlobalInfo struct ElementInfo { - char *sound_class_name; - char *editor_description; + char *sound_class_name; /* classification for custom sound effects */ + char *editor_description; /* short description for level editor */ + + int graphic; +}; + +struct GraphicInfo +{ + Bitmap *bitmap; + int src_x, src_y; + int anim_frames; + int anim_delay; + int anim_mode; }; extern GC tile_clip_gc; @@ -402,7 +414,10 @@ extern struct TapeInfo tape; extern struct GameInfo game; extern struct GlobalInfo global; extern struct ElementInfo element_info[]; -extern struct SoundEffectInfo sound_effects[]; +extern struct GraphicInfo graphic_info[]; +extern struct ConfigInfo image_config[], sound_config[]; +extern struct FileInfo *image_files, *sound_files; +extern char *image_config_suffix[], *sound_config_suffix[]; /* often used screen positions */ #define SX 8 @@ -900,7 +915,7 @@ extern struct SoundEffectInfo sound_effects[]; #define GFX_START_ROCKSMORE 1280 #define GFX_END_ROCKSMORE 1535 -#define NUM_TILES 1536 +#define NUM_TILES 1536 /* see above: MAX_GRAPHICS */ /* graphics from "RocksScreen" */ /* Zeile 0 (0) */ @@ -1445,7 +1460,14 @@ extern struct SoundEffectInfo sound_effects[]; #define NUM_SOUNDS 55 -/* values for sound effects */ +/* values for image configuration */ +#define GFX_BD_DIAMOND 0 +#define GFX_ROBOT_WHEEL 1 + +#define NUM_IMAGE_FILES 2 + + +/* values for sound configuration */ #define SND_BD_EMPTY_SPACE_DIGGING 0 #define SND_BD_SAND_DIGGING 1 #define SND_BD_DIAMOND_COLLECTING 2 @@ -1616,7 +1638,7 @@ extern struct SoundEffectInfo sound_effects[]; #define SND_MENU_HALL_OF_FAME 167 #define SND_MENU_INFO_SCREEN 168 -#define NUM_SOUND_EFFECTS 169 +#define NUM_SOUND_FILES 169 /* values for game_status */ @@ -1632,8 +1654,8 @@ extern struct SoundEffectInfo sound_effects[]; #define PROGRAM_VERSION_MAJOR 2 #define PROGRAM_VERSION_MINOR 1 -#define PROGRAM_VERSION_PATCH 1 -#define PROGRAM_VERSION_STRING "2.1.1" +#define PROGRAM_VERSION_PATCH 2 +#define PROGRAM_VERSION_STRING "2.1.2" #define PROGRAM_TITLE_STRING "Rocks'n'Diamonds" #define PROGRAM_AUTHOR_STRING "Holger Schemel"