Version 3.1.0: voice lines linked across all languages from the game data

This commit is contained in:
2026-10-10 14:10:03 +02:00
parent ea3e44000a
commit fbde809370
56 changed files with 74728 additions and 73360 deletions

View File

@@ -147,7 +147,8 @@ class ImportModDialog(QDialog):
self.tree.setHeaderLabels(["Sound", "Match", "Note"])
n_ok = 0
for im in items:
note = {"exact": "same sound", "by name": "matched by name (other language) - will be re-encoded",
note = {"exact": "same sound", "same line": "the same line in this language - will be re-encoded",
"by name": "matched by name - will be re-encoded",
"missing": im.note}[im.how]
QTreeWidgetItem(self.tree, [im.item.get("name") or im.item["target"], im.how, note])
n_ok += im.how != "missing"

View File

@@ -375,11 +375,11 @@ class TextPanel(QWidget):
if self.kind == "subs":
by_key = ws.catalog.by_key
for s in tx.subtitles(lang):
snd = by_key.get(s.sound) # None when the line's archive is not loaded
snd = by_key.get(s.sounds[0]) if s.sounds else None # None: the line's archive is not loaded
who = (snd.character or snd.characters_inferred) if snd else ""
cat = snd.category if snd else ""
rows.append(Row(subtitles.key(lang, s.speech, s.line),
[s.speech, s.line + 1, who, cat, s.room], s.text, s.sound or None))
[s.speech, s.line + 1, who, cat, s.room], s.text, s.sounds[0] if s.sounds else None))
else:
for e in tx.menu(lang):
rows.append(Row("MENU:" + e.key, [e.file, e.section, e.name + ("#%d" % e.occurrence if e.occurrence > 1 else "")],