Update level data packing
parent
188c2e30a5
commit
ab2928fab9
|
@ -61,8 +61,18 @@ if not ids_tiletype_map:
|
|||
|
||||
pprint.pprint(ids_tiletype_map)
|
||||
|
||||
def get_level_order(lvl) -> int:
|
||||
order = 65535;
|
||||
for data in lvl['fieldInstances']:
|
||||
if data["__identifier"] == "Order":
|
||||
order = data["__value"]
|
||||
return order
|
||||
|
||||
all_levels = level_pack_data["levels"]
|
||||
all_levels.sort(key=get_level_order)
|
||||
|
||||
# Number of levels is the length of the levels
|
||||
n_levels = len(level_pack_data["levels"])
|
||||
n_levels = len(all_levels)
|
||||
print("Number of levels:", n_levels)
|
||||
|
||||
fileparts = args.filename.split('.')
|
||||
|
@ -76,17 +86,20 @@ converted_filename = '.'.join(fileparts)
|
|||
with open(converted_filename, 'wb+') as out_file:
|
||||
out_file.write(struct.pack("<I", n_levels))
|
||||
# Then loop the levels. Read the layerIndstances
|
||||
for level in level_pack_data["levels"]:
|
||||
for level in all_levels:
|
||||
n_chests : int = 0
|
||||
# Search for __identifier for the level layout
|
||||
level_name = level["identifier"]
|
||||
print("Parsing level", level_name)
|
||||
level_name = ""
|
||||
|
||||
level_metadata = level['fieldInstances']
|
||||
level_tileset = 0;
|
||||
for data in level_metadata:
|
||||
if data["__identifier"] == "TileSet":
|
||||
level_tileset = data["__value"]
|
||||
if data["__identifier"] == "Name":
|
||||
level_name = data["__value"]
|
||||
|
||||
print("Parsing level", level_name)
|
||||
|
||||
level_layout = {}
|
||||
entity_layout = {}
|
||||
|
|
|
@ -97,10 +97,10 @@ static void level_select_do_action(Scene_t* scene, ActionType_t action, bool pre
|
|||
}
|
||||
}
|
||||
|
||||
#define FONT_SIZE 30
|
||||
#define FONT_SIZE 15
|
||||
#define TEXT_PADDING 3
|
||||
#define DISPLAY_AREA_HEIGHT 200
|
||||
#define SCROLL_TOTAL_HEIGHT 300
|
||||
#define DISPLAY_AREA_HEIGHT 400
|
||||
#define SCROLL_TOTAL_HEIGHT 400
|
||||
void init_level_select_scene(LevelSelectScene_t* scene)
|
||||
{
|
||||
init_scene(&scene->scene, &level_select_do_action, 0);
|
||||
|
|
Loading…
Reference in New Issue