Files
TankiOnline2.0DemoClient/utils/generatemapping.py
2025-05-09 17:55:58 +01:00

36 lines
1010 B
Python

from sys import argv
from glob import glob
from json import dump
path = argv[1]
paths = glob(f"{path}/**/**/*.class.asasm")
paths += glob(f"{path}/**/*.class.asasm")
names = {}
for path in paths:
name = None
with open(path, "r") as file:
className = path.split("/")[-1]
className = className.split(".class.asasm")[0]
packageName = path.split("/")[-2]
if not packageName in names:
names[packageName] = {}
if not className in names[packageName]:
names[packageName][className] = {}
for line in file:
line = line.strip()
if line.startswith("name"):
line = line.split("name \"")
line = line[1][:-1]
name = line
elif line.startswith("refid"):
line = line.split("refid \"")
line = line[1][:-1]
names[packageName][className][line] = name
with open("mapping.json", "w") as file:
dump(names, file)