X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fmain.h;h=3fd8c9150f51bb390fff3f7b4ba1bf294d5b965d;hp=e5631b498394ca6a22baa79ed7dd221e07e658a8;hb=42ffe4ef1bde9f93619d259af377083cdcd96da6;hpb=97baecdfcf386d972f6f8e6eec9ddfd3021ed7ed diff --git a/src/main.h b/src/main.h index e5631b49..3fd8c915 100644 --- a/src/main.h +++ b/src/main.h @@ -31,6 +31,9 @@ #include "conf_mus.h" /* include auto-generated data structure definitions */ +#define NEW_TILESIZE 1 +#define NEW_SCROLL 1 + #define IMG_UNDEFINED (-1) #define IMG_EMPTY IMG_EMPTY_SPACE #define IMG_SP_EMPTY IMG_EMPTY_SPACE @@ -962,6 +965,8 @@ #define TILESIZE 32 #define TILEX TILESIZE #define TILEY TILESIZE +#define TILEX_VAR TILESIZE_VAR +#define TILEY_VAR TILESIZE_VAR #define MINI_TILESIZE (TILESIZE / 2) #define MINI_TILEX MINI_TILESIZE #define MINI_TILEY MINI_TILESIZE @@ -970,18 +975,49 @@ #define MICRO_TILEY MICRO_TILESIZE #define MIDPOSX (SCR_FIELDX / 2) #define MIDPOSY (SCR_FIELDY / 2) +#if NEW_TILESIZE +#if NEW_SCROLL +#if 0 +#define SXSIZE (SCR_FIELDX * TILEX_VAR) +#define SYSIZE (SCR_FIELDY * TILEY_VAR) +#endif +#define FXSIZE ((2 + SCR_FIELDX + 2) * TILEX_VAR) +#define FYSIZE ((2 + SCR_FIELDY + 2) * TILEY_VAR) +#else +#if 0 +#define SXSIZE (SCR_FIELDX * TILEX_VAR) +#define SYSIZE (SCR_FIELDY * TILEY_VAR) +#endif +#define FXSIZE ((SCR_FIELDX + 2) * TILEX_VAR) +#define FYSIZE ((SCR_FIELDY + 2) * TILEY_VAR) +#endif +#else +#if NEW_SCROLL +#if 0 #define SXSIZE (SCR_FIELDX * TILEX) #define SYSIZE (SCR_FIELDY * TILEY) +#endif +#define FXSIZE ((2 + SCR_FIELDX + 2) * TILEX) +#define FYSIZE ((2 + SCR_FIELDY + 2) * TILEY) +#else +#if 0 +#define SXSIZE (SCR_FIELDX * TILEX) +#define SYSIZE (SCR_FIELDY * TILEY) +#endif #define FXSIZE ((SCR_FIELDX + 2) * TILEX) #define FYSIZE ((SCR_FIELDY + 2) * TILEY) +#endif +#endif #define DXSIZE 100 #define DYSIZE 280 #define VXSIZE DXSIZE #define VYSIZE 100 #define EXSIZE DXSIZE #define EYSIZE (VYSIZE + 44) +#if 0 #define FULL_SXSIZE (2 + SXSIZE + 2) #define FULL_SYSIZE (2 + SYSIZE + 2) +#endif #define MICROLEVEL_XSIZE ((STD_LEV_FIELDX + 2) * MICRO_TILEX) #define MICROLEVEL_YSIZE ((STD_LEV_FIELDY + 2) * MICRO_TILEY) #define MICROLEVEL_XPOS (SX + (SXSIZE - MICROLEVEL_XSIZE) / 2) @@ -2827,7 +2863,11 @@ extern SDL_Thread *server_thread; extern int key_joystick_mapping; #if 1 +#if NEW_SCROLL +extern boolean redraw[2 + MAX_LEV_FIELDX + 2][2 + MAX_LEV_FIELDY + 2]; +#else extern boolean redraw[MAX_LEV_FIELDX + 2][MAX_LEV_FIELDY + 2]; +#endif #else extern boolean redraw[MAX_BUF_XSIZE][MAX_BUF_YSIZE]; #endif @@ -2883,6 +2923,9 @@ extern int DX, DY; extern int VX, VY; extern int EX, EY; extern int dDX, dDY; +extern int SXSIZE, SYSIZE; +extern int FULL_SXSIZE, FULL_SYSIZE; +extern int TILESIZE_VAR; extern int FX, FY; extern int ScrollStepSize;