diff --git a/src/level.c b/src/level.c index 48998b8..5d9ae3b 100644 --- a/src/level.c +++ b/src/level.c @@ -1,6 +1,7 @@ #include "level.h" #include #include +#include #include "util.h" #include "render.h" #include "memalloc.h" @@ -240,6 +241,7 @@ _render_8( u0 = (u0_idx << 3), v0 = (v0_idx << 3); + assert(_numsprites < MAX_TILES); SPRT_8 *sprt = &_sprites[_current_spritebuf ^ 1][_numsprites++]; setXY0(sprt, vx, vy); setUV0(sprt, u0, v0); @@ -519,6 +521,8 @@ render_lvl( // TODO: Add front layer rendered at OTZ_LAYER_LEVEL_FG_FRONT // TODO: Fix level mapping tool to consider only mapping layers + /* if(lvl->num_layers > 1) */ + /* _render_layer(lvl, map128, map16, cx, cy, OTZ_LAYER_LEVEL_FG_FRONT, 1); */ // Texture TPAGE info for level foreground (back tiles) DR_TPAGE *tpage = get_next_prim(); @@ -527,10 +531,10 @@ render_lvl( sort_prim(tpage, OTZ_LAYER_LEVEL_FG_BACK); // Texture TPAGE info for level foreground (front tiles) - tpage = get_next_prim(); - increment_prim(sizeof(DR_TPAGE)); - setDrawTPage(tpage, 0, 1, getTPage(lvl->clutmode & 0x3, 1, lvl->prectx, lvl->precty)); - sort_prim(tpage, OTZ_LAYER_LEVEL_FG_FRONT); + /* tpage = get_next_prim(); */ + /* increment_prim(sizeof(DR_TPAGE)); */ + /* setDrawTPage(tpage, 0, 1, getTPage(lvl->clutmode & 0x3, 1, lvl->prectx, lvl->precty)); */ + /* sort_prim(tpage, OTZ_LAYER_LEVEL_FG_FRONT); */ // Render objects on nearest window _render_obj_window(lvl, tbl, cx, cy); diff --git a/src/screen_level.c b/src/screen_level.c index 43679ab..25b14fa 100644 --- a/src/screen_level.c +++ b/src/screen_level.c @@ -547,6 +547,8 @@ level_load_level(screen_level_data *data) return; } + printf("Number of level layers: %d\n", leveldata.num_layers); + sound_play_xa(filename0, 0, music_channel, bgm_loop_sectors[level]); } diff --git a/tools/cooklvl.py b/tools/cooklvl.py index 8927c09..1651d09 100755 --- a/tools/cooklvl.py +++ b/tools/cooklvl.py @@ -52,6 +52,7 @@ def main(): j = load_json(jsonfile) with open(outfile, "wb") as f: + print(f"Number of level layers: {j.get('num_layers')}") f.write(c_ubyte(j.get("num_layers"))) f.write(c_ubyte(0)) # _unused layer_data = j.get("layer_data") diff --git a/tools/tiled_exporter/lvlexporter.py b/tools/tiled_exporter/lvlexporter.py index 73c1059..92b6d52 100644 --- a/tools/tiled_exporter/lvlexporter.py +++ b/tools/tiled_exporter/lvlexporter.py @@ -40,13 +40,6 @@ class PSXPreLevel(Plugin): tile = tileLayer.cellAt(x, y).tile() layer["tiles"].append(tile.id() if tile else 0) filedata["layer_data"].append(layer) - # elif isObjectGroupAt(tileMap, i): - # # Unfortunately, the available options for MapObject are - # # VERY LIMITED, so we'll have to figure things out by directly - # # parsing a .tmx file for objects, with an external tool :/ - # # For more info on MapObject, see: - # # https://github.com/mapeditor/tiled/blob/06e94bdea0790dceb9c9eb104af9982ce6a0e04e/src/plugins/python/tiledbinding.py#L257 - # pass with open(fileName, "w") as f: print(json.dumps(filedata), file=f) return True