projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-19990220-1-src
[rocksndiamonds.git]
/
src
/
main.h
diff --git
a/src/main.h
b/src/main.h
index ec429bfbffdc15bd954b50b79b1aa09aec8ac4ee..5f0a813a1c71a68b98995920e798a855c0df7f65 100644
(file)
--- a/
src/main.h
+++ b/
src/main.h
@@
-208,6
+208,11
@@
typedef unsigned char byte;
#define MAX_ELEMENTS 512
#define MAX_NUM_AMOEBA 100
#define MAX_ELEMENTS 512
#define MAX_NUM_AMOEBA 100
+/* values for elements with content */
+#define MIN_ELEMENT_CONTENTS 1
+#define STD_ELEMENT_CONTENTS 4
+#define MAX_ELEMENT_CONTENTS 8
+
#define LEVEL_SCORE_ELEMENTS 16 /* level elements with score */
/* fundamental game speed values */
#define LEVEL_SCORE_ELEMENTS 16 /* level elements with score */
/* fundamental game speed values */
@@
-305,12
+310,6
@@
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 */
-
-#if 0
- byte programmed_speed; /* speed (for only one move) forced by game */
-#endif
-
-
int joystick_fd; /* file descriptor of player's joystick */
int jx,jy, last_jx,last_jy;
int joystick_fd; /* file descriptor of player's joystick */
int jx,jy, last_jx,last_jy;
@@
-318,11
+317,12
@@
struct PlayerInfo
int Frame;
boolean Pushing;
int Frame;
boolean Pushing;
- boolean
gone,
LevelSolved, GameOver;
+ boolean LevelSolved, GameOver;
boolean snapped;
boolean snapped;
- int move_speed;
unsigned long move_delay;
unsigned long move_delay;
+ int move_delay_value;
+
int last_move_dir;
unsigned long push_delay;
int last_move_dir;
unsigned long push_delay;
@@
-347,16
+347,18
@@
struct LevelInfo
int fieldx;
int fieldy;
int time;
int fieldx;
int fieldy;
int time;
- int
edelsteine
;
+ int
gems_needed
;
char name[MAX_LEVEL_NAME_LEN + 1];
char author[MAX_LEVEL_AUTHOR_LEN + 1];
int score[LEVEL_SCORE_ELEMENTS];
char name[MAX_LEVEL_NAME_LEN + 1];
char author[MAX_LEVEL_AUTHOR_LEN + 1];
int score[LEVEL_SCORE_ELEMENTS];
- int mampfer_inhalt[8][3][3];
- int tempo_amoebe;
- int dauer_sieb;
- int dauer_ablenk;
- int amoebe_inhalt;
+ int yam_content[MAX_ELEMENT_CONTENTS][3][3];
+ int num_yam_contents;
+ int amoeba_speed;
+ int amoeba_content;
+ int time_magic_wall;
+ int time_wheel;
boolean double_speed;
boolean double_speed;
+ boolean gravity;
};
struct LevelDirInfo
};
struct LevelDirInfo
@@
-394,6
+396,18
@@
struct TapeInfo
} pos[MAX_TAPELEN];
};
} pos[MAX_TAPELEN];
};
+struct GameInfo
+{
+ int emulation;
+ int yam_content_nr;
+ boolean magic_wall_active;
+ int magic_wall_time_left;
+};
+
+struct GlobalInfo
+{
+};
+
extern Display *display;
extern Visual *visual;
extern int screen;
extern Display *display;
extern Visual *visual;
extern int screen;
@@
-461,12
+475,9
@@
extern int SBY_Upper, SBY_Lower;
extern int ZX,ZY, ExitX,ExitY;
extern int AllPlayersGone;
extern int FrameCounter, TimeFrames, TimePlayed, TimeLeft;
extern int ZX,ZY, ExitX,ExitY;
extern int AllPlayersGone;
extern int FrameCounter, TimeFrames, TimePlayed, TimeLeft;
-extern int MampferMax, MampferNr;
extern boolean SiebAktiv;
extern int SiebCount;
extern boolean SiebAktiv;
extern int SiebCount;
-extern int game_emulation;
-
extern boolean network_player_action_received;
extern struct LevelDirInfo leveldir[];
extern boolean network_player_action_received;
extern struct LevelDirInfo leveldir[];
@@
-480,6
+491,8
@@
extern struct OptionInfo options;
extern struct SetupInfo setup;
extern struct SetupFileList *setup_list;
extern struct SetupFileList *level_setup_list;
extern struct SetupInfo setup;
extern struct SetupFileList *setup_list;
extern struct SetupFileList *level_setup_list;
+extern struct GameInfo game;
+extern struct GlobalInfo global;
extern char *sound_name[];
extern int background_loop[];
extern char *sound_name[];
extern int background_loop[];
@@
-531,6
+544,8
@@
extern char *element_info[];
#define FONT3_YSIZE 14
#define FONT4_XSIZE 16
#define FONT4_YSIZE 16
#define FONT3_YSIZE 14
#define FONT4_XSIZE 16
#define FONT4_YSIZE 16
+#define FONT5_XSIZE 10
+#define FONT5_YSIZE 12
#define GFX_STARTX SX
#define GFX_STARTY SY
#define GFX_STARTX SX
#define GFX_STARTY SY
@@
-1281,6
+1296,7
@@
extern char *element_info[];
#define FC_YELLOW 3
#define FC_SPECIAL1 4
#define FC_SPECIAL2 5
#define FC_YELLOW 3
#define FC_SPECIAL1 4
#define FC_SPECIAL2 5
+#define FC_SPECIAL3 6
/* values for game_status */
#define EXITGAME 0
/* values for game_status */
#define EXITGAME 0