rnd-19990109-1
[rocksndiamonds.git] / src / main.h
index cd8366f6b60ae33bea4bcc800ad471e4fc0c2ad6..f6c62f4bab65df47335734d2ad5b88ac439f0509 100644 (file)
@@ -65,13 +65,14 @@ typedef unsigned char byte;
 #define SCR_FIELDY     17
 #define MAX_BUF_XSIZE  (SCR_FIELDX + 2)
 #define MAX_BUF_YSIZE  (SCR_FIELDY + 2)
-
-#define MIN_LEV_FIELDX (SCR_FIELDX - 2)
-#define MIN_LEV_FIELDY (SCR_FIELDY - 2)
+#define MIN_LEV_FIELDX 3
+#define MIN_LEV_FIELDY 3
 #define STD_LEV_FIELDX 64
 #define STD_LEV_FIELDY 32
 #define MAX_LEV_FIELDX 128
 #define MAX_LEV_FIELDY 128
+#define ED_FIELDX      (2 * SCR_FIELDX - 2)
+#define ED_FIELDY      (2 * SCR_FIELDY - 2)
 
 #define MAX_PLAYERS    4
 
@@ -101,7 +102,7 @@ typedef unsigned char byte;
 #define EP_BIT_SCHLUESSEL      (1 << 2)
 #define EP_BIT_PFORTE          (1 << 3)
 #define EP_BIT_SOLID           (1 << 4)
-#define EP_BIT_MASSIV          (1 << 5)
+#define EP_BIT_MASSIVE         (1 << 5)
 #define EP_BIT_SLIPPERY                (1 << 6)
 #define EP_BIT_ENEMY           (1 << 7)
 #define EP_BIT_MAUER           (1 << 8)
@@ -131,7 +132,7 @@ typedef unsigned char byte;
 #define IS_SCHLUESSEL(e)       (Elementeigenschaften[e] & EP_BIT_SCHLUESSEL)
 #define IS_PFORTE(e)           (Elementeigenschaften[e] & EP_BIT_PFORTE)
 #define IS_SOLID(e)            (Elementeigenschaften[e] & EP_BIT_SOLID)
-#define IS_MASSIV(e)           (Elementeigenschaften[e] & EP_BIT_MASSIV)
+#define IS_MASSIVE(e)          (Elementeigenschaften[e] & EP_BIT_MASSIVE)
 #define IS_SLIPPERY(e)         (Elementeigenschaften[e] & EP_BIT_SLIPPERY)
 #define IS_ENEMY(e)            (Elementeigenschaften[e] & EP_BIT_ENEMY)
 #define IS_MAUER(e)            (Elementeigenschaften[e] & EP_BIT_MAUER)
@@ -434,10 +435,13 @@ extern int                lev_fieldx,lev_fieldy, scroll_x,scroll_y;
 
 extern int             FX,FY, ScrollStepSize;
 extern int             ScreenMovDir, ScreenMovPos, ScreenGfxPos;
+extern int             BorderElement;
 extern int             GameFrameDelay;
 extern int             FfwdFrameDelay;
 extern int             MoveSpeed;
 extern int             BX1,BY1, BX2,BY2;
+extern int             SBX_Left, SBX_Right;
+extern int             SBY_Upper, SBY_Lower;
 extern int             ZX,ZY, ExitX,ExitY;
 extern int             AllPlayersGone;
 extern int             FrameCounter, TimeFrames, TimePlayed, TimeLeft;
@@ -445,6 +449,8 @@ extern int          MampferMax, MampferNr;
 extern boolean         SiebAktiv;
 extern int             SiebCount;
 
+extern int             game_emulation;
+
 extern boolean         network_player_action_received;
 
 extern struct LevelDirInfo     leveldir[];
@@ -1288,4 +1294,10 @@ extern int               num_bg_loops;
 #define ANIM_OSCILLATE 1
 #define ANIM_REVERSE   2
 
+/* values for game_emulation */
+#define EMU_NONE               0
+#define EMU_BOULDERDASH                1
+#define EMU_SOKOBAN            2
+#define EMU_SUPAPLEX           3
+
 #endif /* MAIN_H */