projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added optional button to restart game (door, panel and touch variants)
[rocksndiamonds.git]
/
src
/
game_sp
/
export.h
diff --git
a/src/game_sp/export.h
b/src/game_sp/export.h
index eb4074a12a123198126ce23bdb9acf4e525d8096..cd1804dd1523bc7b8a58cd100def884f91333158 100644
(file)
--- a/
src/game_sp/export.h
+++ b/
src/game_sp/export.h
@@
-1,13
+1,13
@@
#ifndef GAME_SP_EXPORT_H
#define GAME_SP_EXPORT_H
#ifndef GAME_SP_EXPORT_H
#define GAME_SP_EXPORT_H
-/
* ========================================================================= */
-/
* functions and definitions exported from game_sp to main program */
-/
* ========================================================================= */
+/
/ ============================================================================
+/
/ functions and definitions exported from game_sp to main program
+/
/ ============================================================================
-/
* ------------------------------------------------------------------------- */
-/
* constant definitions */
-/
* ------------------------------------------------------------------------- */
+/
/ ----------------------------------------------------------------------------
+/
/ constant definitions
+/
/ ----------------------------------------------------------------------------
#define SP_MAX_PLAYFIELD_WIDTH MAX_PLAYFIELD_WIDTH
#define SP_MAX_PLAYFIELD_HEIGHT MAX_PLAYFIELD_HEIGHT
#define SP_MAX_PLAYFIELD_WIDTH MAX_PLAYFIELD_WIDTH
#define SP_MAX_PLAYFIELD_HEIGHT MAX_PLAYFIELD_HEIGHT
@@
-26,16
+26,15
@@
SP_MAX_PLAYFIELD_HEIGHT)
#define SP_STD_LEVEL_SIZE (SP_HEADER_SIZE + SP_STD_PLAYFIELD_SIZE)
SP_MAX_PLAYFIELD_HEIGHT)
#define SP_STD_LEVEL_SIZE (SP_HEADER_SIZE + SP_STD_PLAYFIELD_SIZE)
-#if 0
-#define SP_SCREEN_BUFFER_XSIZE (SCR_FIELDX + 2)
-#define SP_SCREEN_BUFFER_YSIZE (SCR_FIELDY + 2)
-#endif
-
#define SP_FRAMES_PER_SECOND 35
#define SP_FRAMES_PER_SECOND 35
-#define SP_MAX_TAPE_LEN 64010 /* (see "spfix63.doc") */
+
+// use a much higher value to be able to load ultra-long MPX demo files
+// (like for level collection 78, level 88 ("WAITING FOR GODOT AGAIN"))
+// #define SP_MAX_TAPE_LEN 500000
+#define SP_MAX_TAPE_LEN 64010 // (see "spfix63.doc")
-/
* sound actions */
+/
/ sound actions
#define actActive 0
#define actImpact 1
#define actActive 0
#define actImpact 1
@@
-48,18
+47,14
@@
#define actDropping 8
#define actDropping 8
-/
* ------------------------------------------------------------------------- */
-/
* data structure definitions */
-/
* ------------------------------------------------------------------------- */
+/
/ ----------------------------------------------------------------------------
+/
/ data structure definitions
+/
/ ----------------------------------------------------------------------------
#ifndef HAS_SpecialPortType
typedef struct
{
#ifndef HAS_SpecialPortType
typedef struct
{
-#if 1
- short PortLocation; // = 2*(x+(y*60)) /* big endian format */
-#else
- int PortLocation; // = 2*(x+(y*60))
-#endif
+ short PortLocation; // = 2*(x+(y*60)) // big endian format
byte Gravity; // 1 = turn on, anything else (0) = turn off
byte FreezeZonks; // 2 = turn on, anything else (0) = turn off (1=off!)
byte FreezeEnemies; // 1 = turn on, anything else (0) = turn off
byte Gravity; // 1 = turn on, anything else (0) = turn off
byte FreezeZonks; // 2 = turn on, anything else (0) = turn off (1=off!)
byte FreezeEnemies; // 1 = turn on, anything else (0) = turn off
@@
-85,31
+80,24
@@
typedef struct
SpecialPortType SpecialPort[10];
byte SpeedByte; // = Speed XOR Highbyte(RandomSeed)
byte CheckSumByte; // = CheckSum XOR SpeedByte
SpecialPortType SpecialPort[10];
byte SpeedByte; // = Speed XOR Highbyte(RandomSeed)
byte CheckSumByte; // = CheckSum XOR SpeedByte
-#if 1
- short DemoRandomSeed; /* little endian format */
-#else
- int DemoRandomSeed;
-#endif
+ short DemoRandomSeed; // little endian format
} LevelInfoType;
#define HAS_LevelInfoType
#endif
} LevelInfoType;
#define HAS_LevelInfoType
#endif
-struct GlobalInfo_SP
-{
-};
-
struct GameInfo_SP
{
struct GameInfo_SP
{
- boolean
LevelS
olved;
- boolean
GameO
ver;
+ boolean
level_s
olved;
+ boolean
game_o
ver;
- /
* needed for updating panel */
+ /
/ needed for updating panel
int time_played;
int infotrons_still_needed;
int red_disk_count;
int score;
int time_played;
int infotrons_still_needed;
int red_disk_count;
int score;
- /* needed for engine snapshots */
+ // needed for engine snapshots
+ char **preceding_buffer;
int preceding_buffer_size;
int scroll_xoffset, scroll_yoffset;
int preceding_buffer_size;
int scroll_xoffset, scroll_yoffset;
@@
-117,12
+105,12
@@
struct GameInfo_SP
struct DemoInfo_SP
{
struct DemoInfo_SP
{
- boolean is_available; /
* structure contains valid demo */
+ boolean is_available; /
/ structure contains valid demo
- int level_nr; /
* number of corresponding level */
+ int level_nr; /
/ number of corresponding level
- int length; /
* number of demo entries */
- byte data[SP_MAX_TAPE_LEN]; /
* array of demo entries */
+ int length; /
/ number of demo entries
+ byte data[SP_MAX_TAPE_LEN]; /
/ array of demo entries
};
struct LevelInfo_SP
};
struct LevelInfo_SP
@@
-135,9
+123,6
@@
struct LevelInfo_SP
byte playfield[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
struct DemoInfo_SP demo;
byte playfield[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
struct DemoInfo_SP demo;
-
- /* used for runtime values */
- struct GameInfo_SP *game_sp;
};
struct GraphicInfo_SP
};
struct GraphicInfo_SP
@@
-155,7
+140,7
@@
struct GraphicInfo_SP
boolean has_crumbled_graphics;
boolean preserve_background;
boolean has_crumbled_graphics;
boolean preserve_background;
- int unique_identifier; /
* used to identify needed screen updates */
+ int unique_identifier; /
/ used to identify needed screen updates
};
struct EngineSnapshotInfo_SP
};
struct EngineSnapshotInfo_SP
@@
-172,43
+157,42
@@
struct EngineSnapshotInfo_SP
};
};
-/
* ------------------------------------------------------------------------- */
-/
* exported functions */
-/
* ------------------------------------------------------------------------- */
+/
/ ----------------------------------------------------------------------------
+/
/ exported functions
+/
/ ----------------------------------------------------------------------------
-extern struct GlobalInfo_SP global_sp_info;
extern struct GameInfo_SP game_sp;
extern struct LevelInfo_SP native_sp_level;
extern struct GameInfo_SP game_sp;
extern struct LevelInfo_SP native_sp_level;
-extern struct GraphicInfo_SP graphic_info_sp_object[TILE_MAX][8];
-extern struct GraphicInfo_SP graphic_info_sp_player[MAX_PLAYERS][SPR_MAX][8];
extern struct EngineSnapshotInfo_SP engine_snapshot_sp;
extern struct EngineSnapshotInfo_SP engine_snapshot_sp;
-extern void sp_open_all();
-extern void sp_close_all();
+void sp_open_all(void);
+void sp_close_all(void);
+
+void InitPrecedingPlayfieldMemory(void);
+void InitGfxBuffers_SP(void);
-extern void InitGfxBuffers_SP();
+void InitGameEngine_SP(void);
+void GameActions_SP(byte[MAX_PLAYERS]);
-extern void InitGameEngine_SP();
-extern void GameActions_SP(byte *, boolean);
+unsigned int InitEngineRandom_SP(int);
-extern unsigned int InitEngineRandom_SP(long);
+void setLevelInfoToDefaults_SP(void);
+void copyInternalEngineVars_SP(void);
+boolean LoadNativeLevel_SP(char *, int, boolean);
+void SaveNativeLevel_SP(char *);
-extern void setLevelInfoToDefaults_SP();
-extern void copyInternalEngineVars_SP();
-extern boolean LoadNativeLevel_SP(char *, int);
-extern void SaveNativeLevel_SP(char *);
+int getFieldbufferOffsetX_SP(void);
+int getFieldbufferOffsetY_SP(void);
-extern void BackToFront_SP(void);
-extern void BlitScreenToBitmap_SP(Bitmap *);
-extern void RedrawPlayfield_SP(boolean);
-extern void DrawGameDoorValues_SP();
+void BlitScreenToBitmap_SP(Bitmap *);
+void RedrawPlayfield_SP(boolean);
-
extern void LoadEngineSnapshotValues_SP(
);
-
extern void SaveEngineSnapshotValues_SP(
);
+
void LoadEngineSnapshotValues_SP(void
);
+
void SaveEngineSnapshotValues_SP(ListNode **
);
-
extern
int map_key_RND_to_SP(int);
-
extern
int map_key_SP_to_RND(int);
+int map_key_RND_to_SP(int);
+int map_key_SP_to_RND(int);
-
extern int getRedDiskReleaseFlag_SP(
);
+
int getRedDiskReleaseFlag_SP(void
);
-#endif /
* GAME_SP_EXPORT_H */
+#endif /
/ GAME_SP_EXPORT_H