mirror of
https://github.com/MarioSpore/Grinch-AP.git
synced 2025-10-21 20:21:32 -06:00
Add Raft to Archipelago (#174)
This commit is contained in:
56
worlds/raft/Items.py
Normal file
56
worlds/raft/Items.py
Normal file
@@ -0,0 +1,56 @@
|
||||
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()}
|
Reference in New Issue
Block a user