X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_em%2Flevel.h;h=6aed968233b252860a3cc1eba28279be84ffc866;hb=5131f9e651b6221589252400ac8036fe4abb1d0b;hp=82cd93bf2159d3742f129f6217815bbd885d6172;hpb=08cbfb7b24ed1170a91e5e9d6d683d6162f120f9;p=rocksndiamonds.git diff --git a/src/game_em/level.h b/src/game_em/level.h index 82cd93bf..6aed9682 100644 --- a/src/game_em/level.h +++ b/src/game_em/level.h @@ -1,96 +1,24 @@ #ifndef LEVEL_H #define LEVEL_H +#include "main_em.h" #include "tile.h" -#define WIDTH 102 -#define HEIGHT 102 +#define WIDTH EM_MAX_CAVE_WIDTH +#define HEIGHT EM_MAX_CAVE_HEIGHT -struct LEVEL -{ - unsigned int home; /* number of players that have to go home */ - /* 0 == all players home */ +extern unsigned long RandomEM; - unsigned int width; /* world width */ - unsigned int height; /* world height */ - unsigned int time; /* time remaining */ - unsigned int required; /* emeralds needed */ - unsigned int score; /* score */ - - /* fill in all below /every/ time you read a level */ - unsigned int alien_score; /* alien popped by stone/spring score */ - unsigned int ameuba_time; /* ameuba speed */ - unsigned int android_move_cnt; /* android move time counter */ - unsigned int android_move_time; /* android move reset time */ - unsigned int android_clone_cnt; /* android clone time counter */ - unsigned int android_clone_time; /* android clone reset time */ - unsigned int ball_cnt; /* ball time counter */ - unsigned int ball_pos; /* ball array pos counter */ - unsigned int ball_random; /* ball is random flag */ - unsigned int ball_state; /* ball currently on flag */ - unsigned int ball_time; /* ball reset time */ - unsigned int bug_score; /* bug popped by stone/spring score */ - unsigned int diamond_score; /* diamond collect score */ - unsigned int dynamite_score; /* dynamite collect scoer*/ - unsigned int eater_pos; /* eater array pos */ - unsigned int eater_score; /* eater popped by stone/spring score */ - unsigned int emerald_score; /* emerald collect score */ - unsigned int exit_score; /* exit score */ - unsigned int key_score; /* key collect score */ - unsigned int lenses_cnt; /* lenses time counter */ - unsigned int lenses_score; /* lenses collect score */ - unsigned int lenses_time; /* lenses reset time */ - unsigned int magnify_cnt; /* magnify time counter */ - unsigned int magnify_score; /* magnify collect score */ - unsigned int magnify_time; /* magnify reset time */ - unsigned int nut_score; /* nut crack score */ - unsigned int shine_cnt; /* shine counter for emerald/diamond */ - unsigned int slurp_score; /* slurp alien score */ - unsigned int tank_score; /* tank popped by stone/spring */ - unsigned int wheel_cnt; /* wheel time counter */ - unsigned int wheel_x; /* wheel x pos */ - unsigned int wheel_y; /* wheel y pos */ - unsigned int wheel_time; /* wheel reset time */ - unsigned int wind_cnt; /* wind time counter */ - unsigned int wind_direction; /* wind direction */ - unsigned int wind_time; /* wind reset time */ - unsigned int wonderwall_state; /* wonderwall currently on flag */ - unsigned int wonderwall_time; /* wonderwall time */ - unsigned short eater_array[8][9]; /* eater data */ - unsigned short ball_array[8][8]; /* ball data */ - unsigned short android_array[TILE_MAX]; /* android clone table */ -}; - -struct PLAYER -{ - unsigned int num; - unsigned int alive; - unsigned int dynamite; - unsigned int dynamite_cnt; - unsigned int keys; - unsigned int anim; - unsigned int x; - unsigned int y; - unsigned int oldx; - unsigned int oldy; - unsigned joy_n:1; - unsigned joy_e:1; - unsigned joy_s:1; - unsigned joy_w:1; - unsigned joy_fire:1; - unsigned joy_stick:1; - unsigned joy_spin:1; -}; - -extern unsigned long Random; - -extern struct PLAYER ply1; -extern struct PLAYER ply2; extern struct LEVEL lev; +extern struct PLAYER ply[MAX_PLAYERS]; + +extern struct LevelInfo_EM native_em_level; +extern struct GraphicInfo_EM graphic_info_em_object[TILE_MAX][8]; +extern struct GraphicInfo_EM graphic_info_em_player[MAX_PLAYERS][SPR_MAX][8]; -extern unsigned short **Boom; -extern unsigned short **Cave; -extern unsigned short **Next; -extern unsigned short **Draw; +extern short **Boom; +extern short **Cave; +extern short **Next; +extern short **Draw; #endif