mirror of
				https://github.com/MarioSpore/Grinch-AP.git
				synced 2025-10-21 20:21:32 -06:00 
			
		
		
		
	
		
			
	
	
		
			56 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			56 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|   | import json | ||
|  | import os | ||
|  | 
 | ||
|  | def createResourcePackName(amount: int, itemName: str): | ||
|  |     return "Resource Pack: " + str(amount) + " " + itemName | ||
|  | 
 | ||
|  | with open(os.path.join(os.path.dirname(__file__), 'items.json'), 'r') as file: | ||
|  |     item_table = json.loads(file.read()) | ||
|  | with open(os.path.join(os.path.dirname(__file__), 'progressives.json'), 'r') as file: | ||
|  |     progressive_table = json.loads(file.read()) | ||
|  | with open(os.path.join(os.path.dirname(__file__), 'resourcepacks.json'), 'r') as file: | ||
|  |     resourcepack_items = json.loads(file.read()) | ||
|  | 
 | ||
|  | lookup_id_to_name = {} | ||
|  | lookup_name_to_item = {} | ||
|  | advancement_item_names = set() | ||
|  | 
 | ||
|  | lastItemId = -1 | ||
|  | for item in item_table: | ||
|  |     item_name = item["name"] | ||
|  |     lookup_id_to_name[item["id"]] = item_name | ||
|  |     lookup_name_to_item[item_name] = item | ||
|  |     if item["progression"]: | ||
|  |         advancement_item_names.add(item_name) | ||
|  |     lastItemId = max(lastItemId, item["id"]) | ||
|  | 
 | ||
|  | progressive_item_list = {} | ||
|  | for item in progressive_table: | ||
|  |     progressiveName = progressive_table[item] | ||
|  |     if progressiveName not in progressive_item_list: | ||
|  |         progressive_item_list[progressiveName] = [] | ||
|  |     progressive_item_list[progressiveName].append(item) | ||
|  | 
 | ||
|  | for progressiveItemName in progressive_item_list.keys(): | ||
|  |     lastItemId += 1 | ||
|  |     generatedItem = {} | ||
|  |     generatedItem["id"] = lastItemId | ||
|  |     generatedItem["name"] = progressiveItemName | ||
|  |     generatedItem["progression"] = lookup_name_to_item[progressive_item_list[progressiveItemName][0]]["progression"] | ||
|  |     lookup_name_to_item[progressiveItemName] = generatedItem | ||
|  |     lookup_id_to_name[lastItemId] = progressiveItemName | ||
|  | 
 | ||
|  | # Generate resource pack items | ||
|  | for packItem in resourcepack_items: | ||
|  |     for i in range(1, 16): # 1-15 | ||
|  |         lastItemId += 1 | ||
|  |         rpName = createResourcePackName(i, packItem) | ||
|  |         generatedItem = {} | ||
|  |         generatedItem["id"] = lastItemId | ||
|  |         generatedItem["name"] = rpName | ||
|  |         generatedItem["progression"] = False | ||
|  |         lookup_name_to_item[rpName] = generatedItem | ||
|  |         lookup_id_to_name[lastItemId] = rpName | ||
|  | 
 | ||
|  | lookup_id_to_name[None] = "Victory" | ||
|  | lookup_name_to_id = {name: id for id, name in lookup_id_to_name.items()} |