81 lines
2.1 KiB
Python
81 lines
2.1 KiB
Python
|
import json
|
||
|
|
||
|
with open("clean.json") as infile:
|
||
|
olds = json.load(infile)
|
||
|
|
||
|
items = olds["items"]
|
||
|
|
||
|
item_oldnames_map = dict()
|
||
|
item_newnames_map = dict()
|
||
|
|
||
|
VERSION_STR = " (1.20)"
|
||
|
|
||
|
max_old_id = 0
|
||
|
|
||
|
for item in items:
|
||
|
item_id = item["id"]
|
||
|
if "displayName" in item:
|
||
|
displayName = item["displayName"]
|
||
|
else:
|
||
|
displayName = item["name"]
|
||
|
item_name = displayName.replace(VERSION_STR, "")
|
||
|
if item_id > 10000:
|
||
|
map_name = item["name"].replace(VERSION_STR, "")
|
||
|
item_newnames_map[map_name] = item
|
||
|
item["displayName"] = item_name
|
||
|
else:
|
||
|
item_oldnames_map[item_name] = item
|
||
|
if item_id > max_old_id:
|
||
|
max_old_id = item_id
|
||
|
|
||
|
dummy_items = []
|
||
|
|
||
|
for (name, item) in item_newnames_map.items():
|
||
|
if name in item_oldnames_map:
|
||
|
old_item = item_oldnames_map[name]
|
||
|
if "displayName" in item:
|
||
|
displayName = item["displayName"].replace(VERSION_STR, "")
|
||
|
else:
|
||
|
displayName = name
|
||
|
save_old = ["id","set","quest","drop","restrict", "name"]
|
||
|
old_mappings = { k: old_item[k] for k in save_old if k in old_item }
|
||
|
old_item.clear()
|
||
|
|
||
|
if "restrict" in item:
|
||
|
del item["restrict"]
|
||
|
|
||
|
for k in item:
|
||
|
old_item[k] = item[k]
|
||
|
for k in old_mappings:
|
||
|
old_item[k] = old_mappings[k]
|
||
|
save_id = item["id"]
|
||
|
item.clear()
|
||
|
item["id"] = save_id
|
||
|
item["name"] = str(save_id)
|
||
|
item["remapID"] = old_item["id"]
|
||
|
else:
|
||
|
if "restrict" in item:
|
||
|
in_str = input(name + " restriction: ").strip()
|
||
|
if in_str:
|
||
|
item["restrict"] = in_str
|
||
|
else:
|
||
|
del item["restrict"]
|
||
|
item["name"] = name
|
||
|
dummy_item = dict()
|
||
|
dummy_item["id"] = item["id"]
|
||
|
max_old_id += 1
|
||
|
item["id"] = max_old_id
|
||
|
dummy_item["remapID"] = item["id"]
|
||
|
dummy_items.append(dummy_item)
|
||
|
|
||
|
items.extend(dummy_items)
|
||
|
|
||
|
sets = olds["sets"]
|
||
|
|
||
|
data = dict()
|
||
|
data["items"] = items
|
||
|
data["sets"] = sets
|
||
|
|
||
|
with open("updated.json", "w") as outfile:
|
||
|
json.dump(data, outfile, indent=2)
|