Files
2026-10-09 18:08:05 +08:00

35 lines
1.2 KiB
Python

import zipfile, re
base = r'e:\MCStudioDownload\work\3027246179@qq.com\Cpp\AddOn\309c2d420bc84ee986db9cdd070ff02a\_sa_hanhua_out'
jars = {
'essentials': base + r'\sa_essentials-forge-1.20.1-1.0.0.jar',
'lib': base + r'\sa_lib-forge-1.20.1-1.0.1.jar',
'decor': base + r'\sa_decor-forge-1.20.1-1.0.3.jar',
}
pat = re.compile(r"Survivors?\s+Arsenal", re.IGNORECASE)
for name, jar in jars.items():
hits = []
with zipfile.ZipFile(jar) as z:
for n in z.namelist():
if n.endswith('/') or n.endswith('.png'):
continue
if n.endswith('.class'):
try:
b = z.read(n)
# class 文件只查 ASCII 字符串
s = ''.join(chr(c) for c in b if 32 <= c < 127 or c in (9, 10, 13))
except Exception:
continue
else:
try:
s = z.read(n).decode('utf-8', errors='ignore')
except Exception:
continue
if pat.search(s):
hits.append(n)
print(f'[{name}] 英文 mod 名残留(除 lang 文件): {len(hits)} 个')
for h in hits:
if not ('/lang/' in h):
print(' ', h)