X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=19fdf64538fb42b88e55bac7d30f759065366305;hb=066b410c0573fe64a1783116daf9d64883e9f03e;hp=701df603adf356532173c5854f4a573268956ad8;hpb=bcb3453f710b95ec98b188b95574bea9ab336e96;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index 701df603..19fdf645 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -125,12 +125,22 @@ #define RW_BASE_PATH RW_GAME_DIR #define GRAPHICS_DIRECTORY "graphics" -#define MUSIC_DIRECTORY "music" #define SOUNDS_DIRECTORY "sounds" +#define MUSIC_DIRECTORY "music" #define LEVELS_DIRECTORY "levels" #define TAPES_DIRECTORY "tapes" #define SCORES_DIRECTORY "scores" +#if !defined(PLATFORM_MSDOS) +#define GRAPHICS_SUBDIR "gfx_classic" +#define SOUNDS_SUBDIR "snd_classic" +#define MUSIC_SUBDIR "mus_classic" +#else +#define GRAPHICS_SUBDIR "gfx_orig" +#define SOUNDS_SUBDIR "snd_orig" +#define MUSIC_SUBDIR "mus_orig" +#endif + /* areas in bitmap PIX_DOOR */ /* meaning in PIX_DB_DOOR: (3 PAGEs) PAGEX1: 1. buffer for DOOR_1 @@ -305,6 +315,11 @@ struct SetupInfo boolean handicap; boolean time_limit; boolean fullscreen; + boolean ask_on_escape; + + char *graphics_set; + char *sounds_set; + char *music_set; struct SetupShortcutInfo shortcut; struct SetupInputInfo input[MAX_PLAYERS]; @@ -318,6 +333,7 @@ struct SetupInfo struct TreeInfo { + struct TreeInfo **node_top; /* topmost node in tree */ struct TreeInfo *node_parent; /* parent level directory info */ struct TreeInfo *node_group; /* level group sub-directory info */ struct TreeInfo *next; /* next level series structure node */ @@ -364,6 +380,10 @@ struct ArtworkInfo SoundsDirTree *snd_current; MusicDirTree *mus_first; MusicDirTree *mus_current; + + char *graphics_set_current; + char *sounds_set_current; + char *music_set_current; }; @@ -423,6 +443,7 @@ inline void CloseVideoDisplay(void); inline void InitVideoBuffer(DrawBuffer **,DrawWindow **, int,int,int, boolean); inline Bitmap *CreateBitmapStruct(void); inline Bitmap *CreateBitmap(int, int, int); +inline void TransferBitmapPointers(Bitmap *, Bitmap *); inline void FreeBitmap(Bitmap *); inline void BlitBitmap(Bitmap *, Bitmap *, int, int, int, int, int, int); inline void ClearRectangle(Bitmap *, int, int, int, int); @@ -445,6 +466,7 @@ inline boolean ChangeVideoModeIfNeeded(boolean); Bitmap *LoadImage(char *); Bitmap *LoadCustomImage(char *); +Bitmap *ReloadCustomImage(Bitmap **, char *); inline void OpenAudio(void); inline void CloseAudio(void);