mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-13 11:24:40 +00:00
First proper commit.
This commit is contained in:
parent
be78236d36
commit
087f561f77
14086 changed files with 1200489 additions and 1 deletions
62
tools/convert_chars.py
Normal file
62
tools/convert_chars.py
Normal file
|
@ -0,0 +1,62 @@
|
|||
#! /usr/bin/python3
|
||||
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
|
||||
script_dir = os.path.dirname(os.path.realpath(__file__))
|
||||
root_dir = script_dir + "/../"
|
||||
|
||||
|
||||
def handle_match(match):
|
||||
original_text = match.group()
|
||||
|
||||
match_text = original_text.replace("\\x", "")
|
||||
|
||||
if match_text.lower() == "1b":
|
||||
return original_text
|
||||
|
||||
end = ""
|
||||
if original_text.lower().endswith("\\x1b"):
|
||||
end = original_text[-4:]
|
||||
match_text = match_text[:-2]
|
||||
|
||||
try:
|
||||
text = bytes.fromhex(match_text).decode("EUC-JP")
|
||||
except UnicodeDecodeError:
|
||||
return original_text
|
||||
|
||||
if text[2:].lower() == match_text.lower():
|
||||
return original_text
|
||||
|
||||
return text + end
|
||||
|
||||
|
||||
def process_file(file_path):
|
||||
with open(file_path) as f:
|
||||
file_text = f.read()
|
||||
|
||||
new_file_text = re.sub("(\\\\x[0-9a-zA-Z]{2})+", handle_match, file_text)
|
||||
|
||||
if new_file_text != file_text:
|
||||
with open(file_path, "w") as f:
|
||||
f.write(new_file_text)
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def main():
|
||||
i = 0
|
||||
skip_list = ["z_file_choose.rodata.s", "z_kaleido_scope.rodata.s"]
|
||||
for root, dirs, files in os.walk(root_dir):
|
||||
for file in files:
|
||||
if i == 100:
|
||||
return
|
||||
if file.endswith(".s") and file not in skip_list:
|
||||
path = os.path.join(root, file)
|
||||
if process_file(path):
|
||||
print("Processed " + path)
|
||||
i += 1
|
||||
|
||||
|
||||
main()
|
Loading…
Add table
Add a link
Reference in a new issue