代码库初始化

This commit is contained in:
Giao committed 2026-10-04 21:07:49 +08:00
1 parent 07786ab323
commit 4334694551
851 files changed
+42626

No files matched your search

+30
View File
@@ -0,0 +1,30 @@
import zipfile, json, re
f = r'e:\MCStudioDownload\work\3027246179@qq.com\Cpp\AddOn\309c2d420bc84ee986db9cdd070ff02a\_sa_hanhua_out\sa_essentials-forge-1.20.1-1.0.0.jar'
z = zipfile.ZipFile(f)
en = json.loads(z.read('assets/sa_combat/lang/en_us.json').decode('utf-8'))
zh = json.loads(z.read('assets/sa_combat/lang/zh_cn.json').decode('utf-8'))
print('=== en_us 中所有 blueprint.* key(及其zh值) ===')
for k, v in en.items():
if 'blueprint' in k:
print(f' {k} = {v!r} | zh: {zh.get(k, "<缺失>")!r}')
print()
print('=== 运行时 class 引用的 lang key(sa_combat namespace) ===')
pat = re.compile(rb'(?:tooltip|gui|container|block|item|creativetab|key|menu|entity|description)\.[a-z0-9_]+\.[a-z0-9_.]+')
refs = {}
for n in z.namelist():
if n.endswith('.class') and 'datagen' not in n:
data = z.read(n)
for m in pat.findall(data):
try:
s = m.decode()
except:
continue
if s.startswith('tooltip.') or s.startswith('gui.') or s.startswith('creativetab.') or s.startswith('key.') or s.startswith('menu.'):
refs.setdefault(s, set()).add(n)
for k in sorted(refs):
print(f' {k}')
for c in sorted(refs[k]):
print(f' <- {c}')