added Makefile targets to clean up header dependency files
[rocksndiamonds.git] / src / game_em / main_em.h
index 11341158a207f204abc1d4d549f8e91630ec8a37..0870b040fcd076a9a8722015f17b724dc5827ede 100644 (file)
@@ -1,3 +1,14 @@
+// ============================================================================
+// Rocks'n'Diamonds - McDuffin Strikes Back!
+// ----------------------------------------------------------------------------
+// (c) 1995-2024 by Artsoft Entertainment
+//                         Holger Schemel
+//                 info@artsoft.org
+//                 https://www.artsoft.org/
+// ----------------------------------------------------------------------------
+// main_em.h
+// ============================================================================
+
 #ifndef MAIN_EM_H
 #define MAIN_EM_H
 
 // external functions and definitions imported from main program to game_em
 // ============================================================================
 
-#include "../engines.h"
+#include "import_em.h"
 
 
 // ============================================================================
 // functions and definitions that are exported from game_em to main program
 // ============================================================================
 
-#include "export.h"
+#include "export_em.h"
 
 
 // ============================================================================
@@ -48,8 +59,8 @@ extern int                    TILESIZE_VAR;
 
 extern int                     SCR_FIELDX, SCR_FIELDY;
 
-#define MAX_BUF_XSIZE          (SCR_FIELDX + 2)
-#define MAX_BUF_YSIZE          (SCR_FIELDY + 2)
+#define MAX_BUF_XSIZE          (SCR_FIELDX + 2 * CAVE_BUFFER_XOFFSET)
+#define MAX_BUF_YSIZE          (SCR_FIELDY + 2 * CAVE_BUFFER_YOFFSET)
 
 /* often used screen positions */
 
@@ -76,6 +87,9 @@ extern int                    SX, SY;
 
 #define DISPLAY_TIME(x)                ROUNDED_DIVIDE(x, FRAMES_PER_SECOND)
 
+#define CAVE_POS_X(x)          ((x) - lev.left)
+#define CAVE_POS_Y(x)          ((x) - lev.top)
+
 
 // ----------------------------------------------------------------------------
 // data structure definitions
@@ -90,7 +104,7 @@ extern struct LOGIC lev;
 extern struct PLAYER ply[MAX_PLAYERS];
 
 extern struct LevelInfo_EM native_em_level;
-extern struct GraphicInfo_EM graphic_info_em_object[TILE_MAX][8];
+extern struct GraphicInfo_EM graphic_info_em_object[GAME_TILE_MAX][8];
 extern struct GraphicInfo_EM graphic_info_em_player[MAX_PLAYERS][PLY_MAX][8];
 extern struct GameInfo_EM game_em;