#include "main_em.h"
-unsigned int RandomEM;
-
-struct LEVEL lev;
+struct CAVE cav;
+struct LOGIC lev;
struct PLAYER ply[MAX_PLAYERS];
-extern int screen_x;
-extern int screen_y;
-
struct EngineSnapshotInfo_EM engine_snapshot_em;
-void game_init_vars(void)
+void game_init_random(void)
{
- int x, y;
+ game_em.random = 1684108901;
+}
- RandomEM = 1684108901;
+void game_init_cave_buffers(void)
+{
+ int x, y;
- for (y = 0; y < HEIGHT; y++)
- for (x = 0; x < WIDTH; x++)
+ for (y = 0; y < CAVE_BUFFER_HEIGHT; y++)
+ for (x = 0; x < CAVE_BUFFER_WIDTH; x++)
lev.cavebuf[x][y] = Zborder;
- for (y = 0; y < HEIGHT; y++)
- for (x = 0; x < WIDTH; x++)
+ for (y = 0; y < CAVE_BUFFER_HEIGHT; y++)
+ for (x = 0; x < CAVE_BUFFER_WIDTH; x++)
lev.nextbuf[x][y] = Zborder;
- for (y = 0; y < HEIGHT; y++)
- for (x = 0; x < WIDTH; x++)
+ for (y = 0; y < CAVE_BUFFER_HEIGHT; y++)
+ for (x = 0; x < CAVE_BUFFER_WIDTH; x++)
lev.drawbuf[x][y] = Zborder;
- for (y = 0; y < HEIGHT; y++)
- for (x = 0; x < WIDTH; x++)
+ for (y = 0; y < CAVE_BUFFER_HEIGHT; y++)
+ for (x = 0; x < CAVE_BUFFER_WIDTH; x++)
lev.boombuf[x][y] = Xblank;
- for (x = 0; x < WIDTH; x++)
+ for (x = 0; x < CAVE_BUFFER_WIDTH; x++)
lev.cavecol[x] = lev.cavebuf[x];
- for (x = 0; x < WIDTH; x++)
+ for (x = 0; x < CAVE_BUFFER_WIDTH; x++)
lev.nextcol[x] = lev.nextbuf[x];
- for (x = 0; x < WIDTH; x++)
+ for (x = 0; x < CAVE_BUFFER_WIDTH; x++)
lev.drawcol[x] = lev.drawbuf[x];
- for (x = 0; x < WIDTH; x++)
+ for (x = 0; x < CAVE_BUFFER_WIDTH; x++)
lev.boomcol[x] = lev.boombuf[x];
lev.cave = lev.cavecol;
int i;
boolean any_player_dropping = FALSE;
- RandomEM = RandomEM * 129 + 1;
+ game_em.random = game_em.random * 129 + 1;
frame = (frame - 1) & 7;
if (frame == 7)
{
- logic_1();
- logic_2();
+ logic_players();
+ logic_objects();
}
if (frame == 6)
{
- logic_3();
+ logic_globals();
UpdateGameDoorValues_EM();
}
engine_snapshot_em.game_em = game_em;
engine_snapshot_em.lev = lev;
- engine_snapshot_em.RandomEM = RandomEM;
engine_snapshot_em.frame = frame;
-
engine_snapshot_em.screen_x = screen_x;
engine_snapshot_em.screen_y = screen_y;
game_em = engine_snapshot_em.game_em;
lev = engine_snapshot_em.lev;
- RandomEM = engine_snapshot_em.RandomEM;
frame = engine_snapshot_em.frame;
-
screen_x = engine_snapshot_em.screen_x;
screen_y = engine_snapshot_em.screen_y;