One language setting; localized in-memory speech per language
This commit is contained in:
@@ -56,11 +56,17 @@ def test_subtitle_catalog_and_link(synth_game, tmp_path):
|
||||
root, _ = synth_game
|
||||
ws = _ws(root, tmp_path)
|
||||
lines = ws.texts.subtitles("INT")
|
||||
assert [(s.speech, s.line, s.text) for s in lines] == [(synth.SPEECH_EVENT, 0, "Scanner line two."),
|
||||
assert [(s.speech, s.line, s.text) for s in lines] == [(synth.GRUNT_EVENT, 0, "Hey you!"),
|
||||
(synth.SPEECH_EVENT, 0, "Scanner line two."),
|
||||
(synth.SPEECH_EVENT, 1, "Second part.")]
|
||||
# a line kept in memory: each language's subtitle links to that language's BANK sound
|
||||
grunt = ws.catalog.by_key["BANK:%08X" % synth.GRUNT_MEDIA["INT"]]
|
||||
assert [s.text for s in ws.texts.for_sound(grunt)] == ["Hey you!"]
|
||||
ita = {s.speech: s.sound for s in ws.texts.subtitles("ITA")}
|
||||
assert ita[synth.GRUNT_EVENT] == "BANK:%08X" % synth.GRUNT_MEDIA["ITA"]
|
||||
line = ws.catalog.by_key["INT:%08X:1" % synth.SPEECH_ENTRY]
|
||||
assert [s.text for s in ws.texts.for_sound(line)] == ["Scanner line two.", "Second part."]
|
||||
assert ws.texts.subtitles("ITA")[0].sound == line.key # no ITA speech WAD here: INT line
|
||||
assert ita[synth.SPEECH_EVENT] == line.key # no ITA speech WAD here: INT line
|
||||
assert ws.texts.subtitles("RUS")[0].enc == "w"
|
||||
assert sorted(os.path.basename(p) for p in ws.texts.files(SUB_KEY)) == ["Synth_Dialogue.upk", "Synth_Dialogue2.upk"]
|
||||
assert ws.texts.limit(SUB_KEY) == len("Scanner line two.")
|
||||
|
||||
Reference in New Issue
Block a user