int num_ball_arrays; /* number of ball data arrays used */
+ boolean testmode; /* test mode */
+ boolean teamwork; /* two player mode */
+ boolean infinite; /* cave is infinitely wide */
+
short eater_array[8][9]; /* eater data */
short ball_array[8][8]; /* ball data */
short android_array[GAME_TILE_MAX]; /* android clone data */
lev.right = lev.left + lev.width;
lev.bottom = lev.top + lev.height;
- /* add linked cave buffer columns for wrap-around movement */
- for (x = 0; x < lev.left; x++)
+ if (cav.infinite)
{
- lev.cavecol[x] = lev.cavecol[lev.width + x];
- lev.nextcol[x] = lev.nextcol[lev.width + x];
- lev.drawcol[x] = lev.drawcol[lev.width + x];
- lev.boomcol[x] = lev.boomcol[lev.width + x];
-
- lev.cavecol[lev.right + x] = lev.cavecol[lev.left + x];
- lev.nextcol[lev.right + x] = lev.nextcol[lev.left + x];
- lev.drawcol[lev.right + x] = lev.drawcol[lev.left + x];
- lev.boomcol[lev.right + x] = lev.boomcol[lev.left + x];
+ /* add linked cave buffer columns for wrap-around movement */
+ for (x = 0; x < lev.left; x++)
+ {
+ lev.cavecol[x] = lev.cavecol[lev.width + x];
+ lev.nextcol[x] = lev.nextcol[lev.width + x];
+ lev.drawcol[x] = lev.drawcol[lev.width + x];
+ lev.boomcol[x] = lev.boomcol[lev.width + x];
+
+ lev.cavecol[lev.right + x] = lev.cavecol[lev.left + x];
+ lev.nextcol[lev.right + x] = lev.nextcol[lev.left + x];
+ lev.drawcol[lev.right + x] = lev.drawcol[lev.left + x];
+ lev.boomcol[lev.right + x] = lev.boomcol[lev.left + x];
+ }
}
for (x = 0; x < lev.width; x++)
lev.gems_needed = cav.gems_needed;
lev.score = 0;
+ lev.testmode = cav.testmode;
+
+ if (lev.testmode)
+ {
+ lev.time = 0;
+ lev.gems_needed = 0;
+ }
+
lev.eater_score = cav.eater_score;
lev.alien_score = cav.alien_score;
lev.bug_score = cav.bug_score;
int home; /* number of players not yet at home */
/* 0 == all players at home */
+ boolean testmode; /* test mode */
boolean killed_out_of_time; /* kill player due to time out */
int exit_x, exit_y; /* kludge for playing player exit sound */