X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=44ac3e3448626e95065285ae524203ae6ab0a396;hb=098f7183b1fa2bc65346a699c4513892ac20df16;hp=b9a7c4647619d083d956f6238cfe10ea16d6730f;hpb=fea9a68bc45aeb19f3364e34290222ce24b61b73;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index b9a7c464..44ac3e34 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -288,6 +288,7 @@ // values for drawing stages for global animations #define DRAW_GLOBAL_ANIM_STAGE_1 1 #define DRAW_GLOBAL_ANIM_STAGE_2 2 +#define DRAW_GLOBAL_ANIM_STAGE_3 3 // values for drawing target (various functions) #define DRAW_TO_BACKBUFFER 0 @@ -378,23 +379,31 @@ #define ANIM_DEFAULT ANIM_LOOP -// values for special drawing styles and event handling -#define STYLE_NONE 0 - -// values used for crumbled graphics -#define STYLE_ACCURATE_BORDERS (1 << 0) -#define STYLE_INNER_CORNERS (1 << 1) +// values for special global animation events +#define ANIM_EVENT_UNDEFINED -1 +#define ANIM_EVENT_NONE 0 +#define ANIM_EVENT_SELF (1 << 0) +#define ANIM_EVENT_ANY (1 << 1) +#define ANIM_EVENT_CLICK (1 << 2) +#define ANIM_EVENT_INIT (1 << 3) +#define ANIM_EVENT_START (1 << 4) +#define ANIM_EVENT_END (1 << 5) +#define ANIM_EVENT_POST (1 << 6) +#define ANIM_EVENT_UNCLICK_ANY (1 << 7) + +// event mask: bits 0-7 +// anim number: bits 8-15 +// part number: bits 16-23 +#define ANIM_EVENT_ANIM_BIT 8 +#define ANIM_EVENT_PART_BIT 16 -// values used for game panel graphics -#define STYLE_REVERSE (1 << 2) -#define STYLE_LEFTMOST_POSITION (1 << 3) +#define ANIM_EVENT_ANIM_MASK (0xff << ANIM_EVENT_ANIM_BIT) +#define ANIM_EVENT_PART_MASK (0xff << ANIM_EVENT_PART_BIT) -// values used for global animations -#define STYLE_BLOCK (1 << 4) -#define STYLE_PASSTHROUGH (1 << 5) -#define STYLE_MULTIPLE_ACTIONS (1 << 6) +#define ANIM_EVENT_DEFAULT ANIM_EVENT_NONE -#define STYLE_DEFAULT STYLE_NONE +// values for special global animation event actions +#define ANIM_EVENT_ACTION_NONE -1 // values for special global animation delay types #define ANIM_DELAY_UNDEFINED -1 @@ -406,30 +415,23 @@ // values for special global animation delay actions #define ANIM_DELAY_ACTION_NONE -1 -// values for special global animation events -#define ANIM_EVENT_UNDEFINED -1 -#define ANIM_EVENT_NONE 0 -#define ANIM_EVENT_SELF (1 << 16) -#define ANIM_EVENT_ANY (1 << 17) -#define ANIM_EVENT_CLICK (1 << 18) -#define ANIM_EVENT_INIT (1 << 19) -#define ANIM_EVENT_START (1 << 20) -#define ANIM_EVENT_END (1 << 21) -#define ANIM_EVENT_POST (1 << 22) -#define ANIM_EVENT_UNCLICK_ANY (1 << 23) - -// anim number: bits 0-7 -// part number: bits 8-15 -#define ANIM_EVENT_ANIM_BIT 0 -#define ANIM_EVENT_PART_BIT 8 +// values for special drawing styles and event handling +#define STYLE_NONE 0 -#define ANIM_EVENT_ANIM_MASK (0xff << ANIM_EVENT_ANIM_BIT) -#define ANIM_EVENT_PART_MASK (0xff << ANIM_EVENT_PART_BIT) +// values used for crumbled graphics +#define STYLE_ACCURATE_BORDERS (1 << 0) +#define STYLE_INNER_CORNERS (1 << 1) -#define ANIM_EVENT_DEFAULT ANIM_EVENT_NONE +// values used for game panel graphics +#define STYLE_REVERSE (1 << 2) +#define STYLE_LEFTMOST_POSITION (1 << 3) -// values for special global animation event actions -#define ANIM_EVENT_ACTION_NONE -1 +// values used for global animations +#define STYLE_BLOCK (1 << 4) +#define STYLE_PASSTHROUGH (1 << 5) +#define STYLE_MULTIPLE_ACTIONS (1 << 6) + +#define STYLE_DEFAULT STYLE_NONE // values for fade mode #define FADE_TYPE_NONE 0 @@ -482,9 +484,9 @@ #define VALIGN_MIDDLE (1 << 2) #define VALIGN_DEFAULT VALIGN_TOP -#define ALIGNED_XPOS(x,w,a) ((a) == ALIGN_CENTER ? (x) - (w) / 2 : \ +#define ALIGNED_XPOS(x, w, a) ((a) == ALIGN_CENTER ? (x) - (w) / 2 : \ (a) == ALIGN_RIGHT ? (x) - (w) : (x)) -#define ALIGNED_YPOS(y,h,v) ((v) == VALIGN_MIDDLE ? (y) - (h) / 2 : \ +#define ALIGNED_YPOS(y, h, v) ((v) == VALIGN_MIDDLE ? (y) - (h) / 2 : \ (v) == VALIGN_BOTTOM ? (y) - (h) : (y)) #define ALIGNED_TEXT_XPOS(p) ALIGNED_XPOS((p)->x, (p)->width, (p)->align) #define ALIGNED_TEXT_YPOS(p) ALIGNED_YPOS((p)->y, (p)->height, (p)->valign) @@ -607,7 +609,7 @@ JOY_NO_ACTION) // maximum number of level sets in the level set history -#define MAX_LEVELDIR_HISTORY 12 +#define MAX_LEVELDIR_HISTORY 100 // default name for empty highscore entry #define EMPTY_PLAYER_NAME "no name" @@ -633,10 +635,13 @@ // default value for undefined password #define UNDEFINED_PASSWORD "[undefined]" -// default value for undefined parameter +// default value for undefined string parameter +#define ARG_UNDEFINED_STRING "[undefined]" + +// default value for default string parameter #define ARG_DEFAULT "[DEFAULT]" -// default values for undefined configuration file parameters +// default values for undefined numerical parameter (as string and integer) #define ARG_UNDEFINED "-1000000" #define ARG_UNDEFINED_VALUE (-1000000) @@ -706,13 +711,6 @@ #define FALLBACK_TEXT_FILENAME "fallback.txt" -#define LOG_OUT_BASENAME "stdout.txt" -#define LOG_ERR_BASENAME "stderr.txt" - -#define LOG_OUT_ID 0 -#define LOG_ERR_ID 1 -#define NUM_LOGS 2 - #define STRING_PARENT_DIRECTORY ".." #define STRING_TOP_DIRECTORY "/" @@ -1035,9 +1033,9 @@ struct ProgramInfo char *cookie_prefix; - char *log_filename[NUM_LOGS]; // log filenames for out/err messages - FILE *log_file[NUM_LOGS]; // log file handles for out/err files - FILE *log_file_default[NUM_LOGS]; // default log file handles (out/err) + char *log_filename; // filename for log messages + FILE *log_file; // file handle for log files + FILE *log_file_default; // default log file handle int version_super; int version_major; @@ -2002,7 +2000,7 @@ Bitmap *CreateBitmap(int, int, int); void ReCreateBitmap(Bitmap **, int, int); void FreeBitmap(Bitmap *); void BlitBitmap(Bitmap *, Bitmap *, int, int, int, int, int, int); -void BlitBitmapTiled(Bitmap *, Bitmap *, int, int, int, int, int, int, int,int); +void BlitBitmapTiled(Bitmap *, Bitmap *, int, int, int, int, int, int, int, int); void FadeRectangle(int, int, int, int, int, int, int, void (*draw_border_function)(void)); void FillRectangle(Bitmap *, int, int, int, int, Pixel); @@ -2021,7 +2019,7 @@ void BlitToScreenMasked(Bitmap *, int, int, int, int, int, int); void DrawSimpleWhiteLine(Bitmap *, int, int, int, int); void DrawLines(Bitmap *, struct XY *, int, Pixel); Pixel GetPixel(Bitmap *, int, int); -Pixel GetPixelFromRGB(Bitmap *, unsigned int,unsigned int,unsigned int); +Pixel GetPixelFromRGB(Bitmap *, unsigned int, unsigned int, unsigned int); void KeyboardAutoRepeatOn(void); void KeyboardAutoRepeatOff(void);