X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_sp%2Fmain_sp.h;h=00aa5129fcbaba79313bf62313491c3cabfc99ea;hb=e0826aa063b692928c1fb971d883fe004a548a15;hp=008afa319562d3ab84a781ae6b70b84e2fa00194;hpb=df8f020b9c0aad57e1f2e790c771550232fb6ce8;p=rocksndiamonds.git diff --git a/src/game_sp/main_sp.h b/src/game_sp/main_sp.h index 008afa31..00aa5129 100644 --- a/src/game_sp/main_sp.h +++ b/src/game_sp/main_sp.h @@ -1,77 +1,90 @@ +// ============================================================================ +// Rocks'n'Diamonds - McDuffin Strikes Back! +// ---------------------------------------------------------------------------- +// (c) 1995-2024 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// https://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// main_sp.h +// ============================================================================ + #ifndef MAIN_SP_H #define MAIN_SP_H -/* ========================================================================= */ -/* external functions and definitions imported from main program to game_sp */ -/* ========================================================================= */ +// ============================================================================ +// external functions and definitions imported from main program to game_sp +// ============================================================================ -#include "../engines.h" +#include "import_sp.h" -/* ========================================================================= */ -/* functions and definitions that are exported from game_sp to main program */ -/* ========================================================================= */ +// ============================================================================ +// functions and definitions that are exported from game_sp to main program +// ============================================================================ -#include "export.h" +#include "export_sp.h" -/* ========================================================================= */ -/* internal functions and definitions that are not exported to main program */ -/* ========================================================================= */ +// ============================================================================ +// internal functions and definitions that are not exported to main program +// ============================================================================ -/* ------------------------------------------------------------------------- */ -/* constant definitions */ -/* ------------------------------------------------------------------------- */ +// ---------------------------------------------------------------------------- +// constant definitions +// ---------------------------------------------------------------------------- -/* screen sizes and positions for SP engine */ +// screen sizes and positions for SP engine -#define ORIG_TILEX 16 -#define ORIG_TILEY 16 +extern int TILESIZE_VAR; -#define ZOOM_FACTOR 2 +#define TILESIZE 32 +#define TILEX TILESIZE +#define TILEY TILESIZE +#define TILEX_VAR TILESIZE_VAR +#define TILEY_VAR TILESIZE_VAR -#define TILEX (ORIG_TILEX * ZOOM_FACTOR) -#define TILEY (ORIG_TILEY * ZOOM_FACTOR) +extern int SCR_FIELDX, SCR_FIELDY; -#define ORIG_SCR_MENUX 20 -#define ORIG_SCR_MENUY 12 -#define SCR_MENUX 17 -#define SCR_MENUY 12 -#define SCR_FIELDX 17 -#define SCR_FIELDY 17 #define MAX_BUF_XSIZE (2 + SCR_FIELDX + 2) #define MAX_BUF_YSIZE (2 + SCR_FIELDY + 2) -/* often used screen positions */ -#define SX 8 -#define SY 8 -#define SXSIZE (SCR_FIELDX * TILEX) -#define SYSIZE (SCR_FIELDY * TILEY) +// often used screen positions + +extern int SX, SY; + +#define SXSIZE (SCR_FIELDX * TILEX_VAR) +#define SYSIZE (SCR_FIELDY * TILEY_VAR) +#define FXSIZE (MAX_BUF_XSIZE * TILEX_VAR) +#define FYSIZE (MAX_BUF_YSIZE * TILEY_VAR) + +extern int REAL_SX, REAL_SY; -#define REAL_SX (SX - 2) -#define REAL_SY (SY - 2) #define FULL_SXSIZE (2 + SXSIZE + 2) #define FULL_SYSIZE (2 + SYSIZE + 2) -/* ------------------------------------------------------------------------- */ -/* data structure definitions */ -/* ------------------------------------------------------------------------- */ +// ---------------------------------------------------------------------------- +// data structure definitions +// ---------------------------------------------------------------------------- -/* ------------------------------------------------------------------------- */ -/* exported variables */ -/* ------------------------------------------------------------------------- */ +// ---------------------------------------------------------------------------- +// exported variables +// ---------------------------------------------------------------------------- extern struct LevelInfo_SP native_sp_level; -extern Bitmap *screenBitmap; +extern Bitmap *bitmap_db_field_sp; -extern Bitmap *sp_objects; +extern int GfxElementLast[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT]; +extern int GfxGraphicLast[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT]; +extern int GfxGraphic[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT]; +extern int GfxFrameSP[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT]; -/* ------------------------------------------------------------------------- */ -/* exported functions */ -/* ------------------------------------------------------------------------- */ +// ---------------------------------------------------------------------------- +// exported functions +// ---------------------------------------------------------------------------- -#endif /* MAIN_SP_H */ +#endif // MAIN_SP_H