X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=d05943775b1e7de7aba3bf502239588bbae01ae4;hb=8a0ac1d204ca31a92875d378138e3ec4889ef37c;hp=d1c41d2a91164a39378f07590767a0b548bf61c3;hpb=1bd9644544424ed912d886777c6e8ed387aac24a;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index d1c41d2a..d0594377 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -157,6 +157,12 @@ #define REDRAW_FPS (1 << 11) #define REDRAWTILES_THRESHOLD (SCR_FIELDX * SCR_FIELDY / 2) +#define IN_GFX_SCREEN(x, y) (x >= gfx.sx && x < gfx.sx + gfx.sxsize && \ + y >= gfx.sy && y < gfx.sy + gfx.sysize) +#define IN_GFX_DOOR(x, y) (x >= gfx.dx && x < gfx.dx + gfx.dxsize && \ + y >= gfx.dy && y < gfx.dy + gfx.dysize) +#define IN_GFX_VIDEO(x, y) (x >= gfx.vx && x < gfx.vx + gfx.vxsize && \ + y >= gfx.vy && y < gfx.vy + gfx.vysize) /* values for mouse cursor */ #define CURSOR_DEFAULT 0 @@ -175,6 +181,9 @@ /* default name for unknown player names */ #define ANONYMOUS_NAME "anonymous" +/* default for other unknown names */ +#define UNKNOWN_NAME "unknown" + /* default name for new levels */ #define NAMELESS_LEVEL_NAME "nameless level" @@ -227,6 +236,9 @@ #define LEVELSETUP_DIRECTORY "levelsetup" #define SETUP_FILENAME "setup.conf" #define LEVELSETUP_FILENAME "levelsetup.conf" +#define EDITORSETUP_FILENAME "editorsetup.conf" +#define HELPANIM_FILENAME "helpanim.conf" +#define HELPTEXT_FILENAME "helptext.conf" #define LEVELINFO_FILENAME "levelinfo.conf" #define GRAPHICSINFO_FILENAME "graphicsinfo.conf" #define SOUNDSINFO_FILENAME "soundsinfo.conf" @@ -238,6 +250,9 @@ #define LEVELSETUP_DIRECTORY "lvlsetup" #define SETUP_FILENAME "setup.cnf" #define LEVELSETUP_FILENAME "lvlsetup.cnf" +#define EDITORSETUP_FILENAME "edsetup.cnf" +#define HELPANIM_FILENAME "helpanim.conf" +#define HELPTEXT_FILENAME "helptext.conf" #define LEVELINFO_FILENAME "lvlinfo.cnf" #define GRAPHICSINFO_FILENAME "gfxinfo.cnf" #define SOUNDSINFO_FILENAME "sndinfo.cnf" @@ -269,12 +284,11 @@ /* macros for version handling */ -#define VERSION_IDENT(x,y,z) ((x) * 1000000 + (y) * 10000 + (z) * 100) -#define RELEASE_IDENT(x,y,z,r) (VERSION_IDENT(x,y,z) + (r)) #define VERSION_MAJOR(x) ((x) / 1000000) #define VERSION_MINOR(x) (((x) % 1000000) / 10000) #define VERSION_PATCH(x) (((x) % 10000) / 100) -#define VERSION_RELEASE(x) ((x) % 100) +#define VERSION_BUILD(x) ((x) % 100) +#define VERSION_IDENT(a,b,c,d) ((a) * 1000000 + (b) * 10000 + (c) * 100 + (d)) /* macros for parent/child process identification */ @@ -540,6 +554,7 @@ struct SetupEditorInfo boolean el_chars; boolean el_custom; boolean el_custom_more; + boolean el_user_defined; boolean el_headlines; }; @@ -628,6 +643,8 @@ struct TreeInfo int last_level; /* last level number (automatically calculated) */ int sort_priority; /* sort levels by 'sort_priority' and then by name */ + boolean latest_engine;/* force level set to use the latest game engine */ + boolean level_group; /* directory contains more level series directories */ boolean parent_link; /* entry links back to parent directory */ boolean user_defined; /* user defined levels are stored in home directory */