Files
d2warehouse/contrib/affixes.py
2023-10-29 20:48:33 +01:00

44 lines
1.2 KiB
Python

import csv
import json
import os
import sys
path = sys.argv[1] if len(sys.argv) >= 2 else "."
category = "Base"
affixes = {"prefixes": {}, "suffixes": {}}
with open(os.path.join(path, "magicprefix.txt")) as f:
dr = csv.DictReader(f, delimiter="\t")
index = 0
for row in dr:
if row["Name"] == "Expansion":
continue
index += 1
if len(row["Name"]) == 0:
continue
affixes["prefixes"][index] = {
"name": row["Name"],
"req_lvl": 0 if len(row["levelreq"]) == 0 else int(row["levelreq"]),
"req_class": None if len(row["class"]) == 0 else row["class"],
}
with open(os.path.join(path, "magicsuffix.txt")) as f:
dr = csv.DictReader(f, delimiter="\t")
index = 0
for row in dr:
if row["Name"] == "Expansion":
continue
index += 1
if len(row["Name"]) == 0:
continue
affixes["suffixes"][index] = {
"name": row["Name"],
"req_lvl": 0 if len(row["levelreq"]) == 0 else int(row["levelreq"]),
"req_class": None if len(row["class"]) == 0 else row["class"],
}
with open("affixes.json", "w", newline="\n") as f:
json.dump(affixes, f, indent=4)
f.write("\n")