projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed bug with calling function with invalid (although ignored) parameter
[rocksndiamonds.git]
/
src
/
game.h
diff --git
a/src/game.h
b/src/game.h
index 22e59af69a8c24839ace1ba34453accf1d3fbaf0..d31d06951ac9a2d9630426631338ba63c49999c2 100644
(file)
--- a/
src/game.h
+++ b/
src/game.h
@@
-17,6
+17,8
@@
#define MAX_INVENTORY_SIZE 1000
#define MAX_INVENTORY_SIZE 1000
+#define MAX_HEALTH 100
+
#define STD_NUM_KEYS 4
#define MAX_NUM_KEYS 8
#define STD_NUM_KEYS 4
#define MAX_NUM_KEYS 8
@@
-57,6
+59,9
@@
struct GamePanelInfo
struct TextPosInfo time_hh;
struct TextPosInfo time_mm;
struct TextPosInfo time_ss;
struct TextPosInfo time_hh;
struct TextPosInfo time_mm;
struct TextPosInfo time_ss;
+ struct TextPosInfo time_anim;
+ struct TextPosInfo health;
+ struct TextPosInfo health_anim;
struct TextPosInfo frame;
struct TextPosInfo shield_normal;
struct TextPosInfo shield_normal_time;
struct TextPosInfo frame;
struct TextPosInfo shield_normal;
struct TextPosInfo shield_normal_time;
@@
-113,6
+118,14
@@
struct GameButtonInfo
struct XY sound_music;
struct XY sound_loops;
struct XY sound_simple;
struct XY sound_music;
struct XY sound_loops;
struct XY sound_simple;
+
+ struct XY panel_stop;
+ struct XY panel_pause;
+ struct XY panel_play;
+
+ struct XY panel_sound_music;
+ struct XY panel_sound_loops;
+ struct XY panel_sound_simple;
};
struct GameSnapshotInfo
};
struct GameSnapshotInfo
@@
-141,10
+154,6
@@
struct GameInfo
int scroll_delay_value;
int tile_size;
int scroll_delay_value;
int tile_size;
- /* values for engine initialization */
- int default_push_delay_fixed;
- int default_push_delay_random;
-
/* constant within running game */
int engine_version;
int emulation;
/* constant within running game */
int engine_version;
int emulation;
@@
-174,7
+183,6
@@
struct GameInfo
int belt_dir_nr[4];
int switchgate_pos;
int wind_direction;
int belt_dir_nr[4];
int switchgate_pos;
int wind_direction;
- boolean gravity;
boolean explosions_delayed;
boolean envelope_active;
boolean no_time_limit; /* (variable only in very special case) */
boolean explosions_delayed;
boolean envelope_active;
boolean no_time_limit; /* (variable only in very special case) */
@@
-194,6
+202,9
@@
struct GameInfo
/* values for special game initialization control */
boolean restart_level;
/* values for special game initialization control */
boolean restart_level;
+ /* trigger message to ask for restarting the game */
+ char *restart_game_message;
+
/* values for special game control */
int centered_player_nr;
int centered_player_nr_next;
/* values for special game control */
int centered_player_nr;
int centered_player_nr_next;
@@
-209,6
+220,8
@@
struct GameInfo
struct PlayerInfo
{
boolean present; /* player present in level playfield */
struct PlayerInfo
{
boolean present; /* player present in level playfield */
+ boolean connected_locally; /* player connected (locally) */
+ boolean connected_network; /* player connected (network) */
boolean connected; /* player connected (locally or via network) */
boolean active; /* player present and connected */
boolean mapped; /* player already mapped to input device */
boolean connected; /* player connected (locally or via network) */
boolean active; /* player present and connected */
boolean mapped; /* player already mapped to input device */
@@
-229,6
+242,9
@@
struct PlayerInfo
byte programmed_action; /* action forced by game itself (like moving
through doors); overrides other actions */
byte programmed_action; /* action forced by game itself (like moving
through doors); overrides other actions */
+ struct MouseActionInfo mouse_action; /* (used by MM engine only) */
+ struct MouseActionInfo effective_mouse_action; /* (used by MM engine only) */
+
int jx, jy, last_jx, last_jy;
int MovDir, MovPos, GfxDir, GfxPos;
int Frame, StepFrame;
int jx, jy, last_jx, last_jy;
int MovDir, MovPos, GfxDir, GfxPos;
int Frame, StepFrame;
@@
-253,8
+269,10
@@
struct PlayerInfo
boolean LevelSolved_PanelOff;
boolean LevelSolved_SaveTape;
boolean LevelSolved_SaveScore;
boolean LevelSolved_PanelOff;
boolean LevelSolved_SaveTape;
boolean LevelSolved_SaveScore;
+
int LevelSolved_CountingTime;
int LevelSolved_CountingScore;
int LevelSolved_CountingTime;
int LevelSolved_CountingScore;
+ int LevelSolved_CountingHealth;
int last_move_dir;
int last_move_dir;
@@
-281,6
+299,8
@@
struct PlayerInfo
boolean cannot_move;
boolean cannot_move;
+ boolean force_dropping; /* needed for single step mode */
+
int frame_counter_bored;
int frame_counter_sleeping;
int frame_counter_bored;
int frame_counter_sleeping;
@@
-318,9
+338,13
@@
struct PlayerInfo
int score;
int score_final;
int score;
int score_final;
+ int health;
+ int health_final;
+
int gems_still_needed;
int sokobanfields_still_needed;
int lights_still_needed;
int gems_still_needed;
int sokobanfields_still_needed;
int lights_still_needed;
+ int players_still_needed;
int friends_still_needed;
int key[MAX_NUM_KEYS];
int num_white_keys;
int friends_still_needed;
int key[MAX_NUM_KEYS];
int num_white_keys;
@@
-344,6
+368,8
@@
void DEBUG_SetMaximumDynamite();
void GetPlayerConfig(void);
int GetElementFromGroupElement(int);
void GetPlayerConfig(void);
int GetElementFromGroupElement(int);
+int getPlayerInventorySize(int);
+
void DrawGameValue_Time(int);
void DrawGameDoorValues(void);
void DrawGameValue_Time(int);
void DrawGameDoorValues(void);
@@
-366,6
+392,7
@@
void StartGameActions(boolean, boolean, int);
void GameActions(void);
void GameActions_EM_Main();
void GameActions_SP_Main();
void GameActions(void);
void GameActions_EM_Main();
void GameActions_SP_Main();
+void GameActions_MM_Main();
void GameActions_RND_Main();
void GameActions_RND();
void GameActions_RND_Main();
void GameActions_RND();
@@
-374,12
+401,17
@@
void ScrollLevel(int, int);
void InitPlayLevelSound();
void PlayLevelSound_EM(int, int, int, int);
void PlayLevelSound_SP(int, int, int, int);
void InitPlayLevelSound();
void PlayLevelSound_EM(int, int, int, int);
void PlayLevelSound_SP(int, int, int, int);
+void PlayLevelSound_MM(int, int, int, int);
+void PlaySound_MM(int);
+void PlaySoundLoop_MM(int);
+void StopSound_MM(int);
void RaiseScore(int);
void RaiseScoreElement(int);
void RequestQuitGameExt(boolean, boolean, char *);
void RequestQuitGame(boolean);
void RaiseScore(int);
void RaiseScoreElement(int);
void RequestQuitGameExt(boolean, boolean, char *);
void RequestQuitGame(boolean);
+void RequestRestartGame(char *);
unsigned int InitEngineRandom_RND(int);
unsigned int RND(int);
unsigned int InitEngineRandom_RND(int);
unsigned int RND(int);
@@
-401,6
+433,9
@@
void UnmapUndoRedoButtons();
void MapGameButtons();
void UnmapGameButtons();
void RedrawGameButtons();
void MapGameButtons();
void UnmapGameButtons();
void RedrawGameButtons();
+void MapGameButtonsOnTape();
+void UnmapGameButtonsOnTape();
+void RedrawGameButtonsOnTape();
void HandleSoundButtonKeys(Key);
void HandleSoundButtonKeys(Key);