projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
moved initial cave data to level structure for EM engine
[rocksndiamonds.git]
/
src
/
game_em
/
emerald.h
diff --git
a/src/game_em/emerald.h
b/src/game_em/emerald.h
index 52a81bcead61b0786fb825fd4f4dd1ce6cddd6df..8e17761d8785402c1b32625cedcbf1b7565837c7 100644
(file)
--- a/
src/game_em/emerald.h
+++ b/
src/game_em/emerald.h
@@
-60,9
+60,9
@@
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
/*
-----------------------------------------------------------------------------
definition of elements used in the Emerald Mine Club engine;
/*
-----------------------------------------------------------------------------
definition of elements used in the Emerald Mine Club engine;
- the element names have the following properties:
+ the element names
(mostly)
have the following properties:
- elements that start with 'X' can be stored in a level file
- elements that start with 'X' can be stored in a level file
- - elements that start with 'Y' indicate moving elements
+ - elements that start with 'Y' indicate moving
or active
elements
- elements that end with 'B' are the "backside" of moving elements
-----------------------------------------------------------------------------
*/
- elements that end with 'B' are the "backside" of moving elements
-----------------------------------------------------------------------------
*/
@@
-71,8
+71,8
@@
enum
{
Xblank = 0,
{
Xblank = 0,
- X
acid_
splash_e,
- X
acid_
splash_w,
+ Xsplash_e,
+ Xsplash_w,
Xplant,
Yplant,
Xplant,
Yplant,
@@
-370,16
+370,16
@@
enum
Ydrip_2_sB,
Xwonderwall,
Ydrip_2_sB,
Xwonderwall,
-
XwonderwallB
,
+
Ywonderwall
,
Xwheel,
Xwheel,
-
XwheelB
,
+
Ywheel
,
Xswitch,
Xswitch,
-
XswitchB
,
+
Yswitch
,
Xbumper,
Xbumper,
-
XbumperB
,
+
Ybumper
,
Xacid_nw,
Xacid_ne,
Xacid_nw,
Xacid_ne,
@@
-388,13
+388,13
@@
enum
Xacid_se,
Xfake_blank,
Xacid_se,
Xfake_blank,
-
Xfake_blankB
,
+
Yfake_blank
,
Xfake_grass,
Xfake_grass,
-
Xfake_grassB
,
+
Yfake_grass
,
Xfake_amoeba, /* dripper */
Xfake_amoeba, /* dripper */
-
Xfake_amoebaB
,
+
Yfake_amoeba
,
Xlenses,
Xlenses,
@@
-419,10
+419,10
@@
enum
Xsand_stonesand_quickout_1, /* newly added to EM engine */
Xsand_stonesand_quickout_2,
Xsand_stonesand_quickout_1, /* newly added to EM engine */
Xsand_stonesand_quickout_2,
- Xslide
wall_ns,
/* growing wall */
- Yslide
wall
_ns_blank,
- Xslide
wall
_ew,
- Yslide
wall
_ew_blank,
+ Xslide
_ns,
/* growing wall */
+ Yslide_ns_blank,
+ Xslide_ew,
+ Yslide_ew_blank,
Xwind_n,
Xwind_e,
Xwind_n,
Xwind_e,
@@
-597,7
+597,7
@@
enum
SOUND_dirt, /* player digs into dirt */
SOUND_acid, /* acid splashes */
SOUND_ball, /* ball places something */
SOUND_dirt, /* player digs into dirt */
SOUND_acid, /* acid splashes */
SOUND_ball, /* ball places something */
- SOUND_slide
wall,
/* slide wall grows */
+ SOUND_slide
,
/* slide wall grows */
SOUND_wonder, /* wonderwall is active */
SOUND_door, /* player goes thru door (gate) */
SOUND_exit_open, /* exit opens */
SOUND_wonder, /* wonderwall is active */
SOUND_door, /* player goes thru door (gate) */
SOUND_exit_open, /* exit opens */
@@
-620,10
+620,6
@@
enum
struct LEVEL
{
struct LEVEL
{
- int home_initial; /* number of players (initial) */
- int home; /* number of players not yet at home */
- /* 0 == all players at home */
-
int width; /* playfield width */
int height; /* playfield height */
int width; /* playfield width */
int height; /* playfield height */
@@
-632,12
+628,13
@@
struct LEVEL
int right; /* playfield right edge */
int bottom; /* playfield bottom edge */
int right; /* playfield right edge */
int bottom; /* playfield bottom edge */
+ int player_x[MAX_PLAYERS]; /* player x pos */
+ int player_y[MAX_PLAYERS]; /* player y pos */
+
int time_seconds; /* available time (seconds) */
int time_initial; /* available time (initial) */
int time; /* time remaining (runtime) */
int time_seconds; /* available time (seconds) */
int time_initial; /* available time (initial) */
int time; /* time remaining (runtime) */
- boolean killed_out_of_time; /* kill player due to time out */
-
int required_initial; /* emeralds needed (initial) */
int required; /* emeralds needed (runtime) */
int required_initial; /* emeralds needed (initial) */
int required; /* emeralds needed (runtime) */
@@
-695,13
+692,23
@@
struct LEVEL
int wonderwall_state; /* wonderwall active flag */
int wonderwall_time_initial; /* wonderwall time (initial) */
int wonderwall_time; /* wonderwall time */
int wonderwall_state; /* wonderwall active flag */
int wonderwall_time_initial; /* wonderwall time (initial) */
int wonderwall_time; /* wonderwall time */
- short eater_array[8][9]; /* eater data */
- short ball_array[8][8]; /* ball data */
- short android_array[TILE_MAX];/* android clone table */
+
int num_ball_arrays; /* number of ball data arrays used */
int num_ball_arrays; /* number of ball data arrays used */
+ int home_initial; /* number of players (initial) */
+ int home; /* number of players not yet at home */
+ /* 0 == all players at home */
+
+ boolean killed_out_of_time; /* kill player due to time out */
+
int exit_x, exit_y; /* kludge for playing player exit sound */
int exit_x, exit_y; /* kludge for playing player exit sound */
+ short eater_array[8][9]; /* eater data */
+ short ball_array[8][8]; /* ball data */
+ short android_array[TILE_MAX]; /* android clone table */
+
+ short cave_raw[CAVE_WIDTH][CAVE_HEIGHT];
+
short cavebuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
short nextbuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
short drawbuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
short cavebuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
short nextbuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
short drawbuf[CAVE_BUFFER_WIDTH][CAVE_BUFFER_HEIGHT];
@@
-730,8
+737,6
@@
struct PLAYER
int keys;
int anim;
int keys;
int anim;
- int x_initial;
- int y_initial;
int x;
int y;
int oldx;
int x;
int y;
int oldx;