-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapi2md.py
43 lines (40 loc) · 1.34 KB
/
api2md.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import json
from html import unescape
data = json.load(open("api.json", encoding="UTF-8"))
footnote = open("footnote.md", "w")
summary = open("summary.md", "w")
for entry in data:
if entry["version"] != "1.16.1":
continue
address = int(entry["address"]) # hex
epd = int(entry["pid"]) # dec
byte_offset = int(entry["byte"]) # 0~3
size = int(entry["size"]) # dec
length = int(entry["length"]) # dec
scr = unescape(entry["scr"].strip())
description = unescape(entry["description"].strip())
description = description.replace("\n\n", "\n")
description = description.replace("\n\n", "\n")
description = description.replace("\n\n", "\n")
description = description.replace("\n\n", "\n")
name = unescape(entry["name"].strip())
filename = name.replace(" ", "")
filename = filename.replace('"', "")
filename = filename.replace("/", "")
filename = filename.replace("?", "")
filename = filename + ".md"
footnote.write(f"[{address:08X}]: offsets/{filename}\n")
summary.write(f" - [{name}](offsets/{filename})\n")
with open("src/offsets/" + filename, "w") as f:
f.write(
f"""\
# {name}
Address | {address:X}
----------|-------------
Player ID | {epd} (Byte Offset: {byte_offset})
Size | {size}
Length | {length}
SC:R | {scr}
{description}
"""
)