X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_em%2Ftab_generate.c;h=8a3f731ad55ccf0549658b5d326fde7ba2796784;hb=1fcb3ddbb8404effdcfa5ebbd53d3ff5009260f6;hp=ff8ea4a7e1347603bd845991db7b40a104766365;hpb=86e1890b2d87dd7710b320e2b306c7291d41e2a5;p=rocksndiamonds.git diff --git a/src/game_em/tab_generate.c b/src/game_em/tab_generate.c index ff8ea4a7..8a3f731a 100644 --- a/src/game_em/tab_generate.c +++ b/src/game_em/tab_generate.c @@ -11,11 +11,10 @@ * modify. */ -#include "tile.h" -#include "display.h" +#include "main_em.h" -/* ---------------------------------------------------------------------- */ +/* ------------------------------------------------------------------------- */ /* 0=stop 1=blank */ int tile_blank[] = @@ -69,7 +68,8 @@ int tile_android_move[] = TILE_MAX }; -/* ---------------------------------------------------------------------- */ + +/* ------------------------------------------------------------------------- */ /* explosions: special format */ /* everything is initially filled with Xboom_1 */ @@ -152,7 +152,8 @@ int tile_explode[] = TILE_MAX /* up until here are dynamite explosions */ }; -/* ---------------------------------------------------------------------- */ + +/* ------------------------------------------------------------------------- */ /* map the graphics file to internal tiles and animations * @@ -306,7 +307,12 @@ int obj_map[] = Xsand_stoneout_1, 1, Xsand_stoneout_1, 0, -1, + +#if 0 + /* use normal "Xblank" instead of explicit x==0, y==2 empty space graphic */ Ynut_sB, 7, +#endif + -1, -1, Ynut_sB, 6, @@ -4430,7 +4436,7 @@ unsigned short map_ttl[128]; struct GraphicInfo_EM graphic_info_em_object[TILE_MAX][8]; /* map player number, frames and action to graphic info */ -struct GraphicInfo_EM graphic_info_em_player[2][SPR_MAX][8]; +struct GraphicInfo_EM graphic_info_em_player[MAX_PLAYERS][SPR_MAX][8]; void create_tab(int *invert, unsigned char *array) { @@ -4597,6 +4603,14 @@ void create_obj_graphics_info_em() g->width = TILEX; g->height = TILEY; + g->crumbled_bitmap = NULL; + g->crumbled_src_x = 0; + g->crumbled_src_y = 0; + g->crumbled_border_size = 0; + + g->has_crumbled_graphics = FALSE; + g->preserve_background = FALSE; + /* create unique graphic identifier to decide if tile must be redrawn */ g->unique_identifier = obj; } @@ -4628,14 +4642,14 @@ void create_spr_graphics_info_em() { int i, j, k; - for (i = 0; i < 2; i++) + for (i = 0; i < MAX_PLAYERS; i++) { for (j = 0; j < SPR_MAX; j++) { for (k = 0; k < 8; k++) { struct GraphicInfo_EM *g = &graphic_info_em_player[i][j][k]; - int spr = map_spr[i][k][j]; + int spr = map_spr[i % 2][k][j]; g->bitmap = sprBitmap; g->src_x = (spr / 8) * TILEX; @@ -4646,6 +4660,14 @@ void create_spr_graphics_info_em() g->dst_offset_y = 0; g->width = TILEX; g->height = TILEY; + + g->has_crumbled_graphics = FALSE; + g->crumbled_bitmap = NULL; + g->crumbled_src_x = 0; + g->crumbled_src_y = 0; + g->crumbled_border_size = 0; + + g->unique_identifier = 0; } } }