Skip to content

국제화와 스토리 현지화

자동 로드 KND_I18n은 Godot UI 번역, 언어 설정, 현지화된 .ks 파일, 언어 변경 후 스토리 다시 읽기를 통합 관리합니다. 현재 언어는 display/language에 저장됩니다.

기본 언어 코드는 zh_Hans, zh_Hant, en, ja, ko입니다. zh-CN, tc, zh-TW 같은 이전 값은 자동으로 정규화됩니다.

언어 변경

gdscript
KND_Settings.set_setting("display", "language", "ko")
# 또는
KND_I18n.set_locale("ko")
gdscript
KND_I18n.locale_changed.connect(func(locale: String): print(locale))

set_locale()TranslationServer와 저장된 설정을 갱신하고 등록된 대화 관리자에 스토리 재로딩을 알립니다.

스토리 파일 이름

res://dialogues/chapter.ks 옆에 번역 파일을 둡니다.

text
res://dialogues/chapter.zh_Hant.ks
res://dialogues/chapter.en.ks
res://dialogues/chapter.ko.ks

검색 순서는 전체 로케일(pt_BR), 기본 언어(pt), 원본 .ks입니다. 언어를 바꿀 때 안정적인 node_id, 같은 인덱스, 시작 노드 순서로 위치를 복구합니다.

사용자 UI 번역

gdscript
var translation := Translation.new()
translation.locale = "fr_CA"
translation.add_message("开始游戏", "Commencer")
KND_I18n.register_translation(translation)
KND_I18n.set_locale("fr_CA")

삭제는 unregister_translation("fr_CA"), 사용 가능한 언어 목록은 get_available_locales()를 사용합니다.

수동 로딩

gdscript
var shot: KND_Shot = KND_I18n.load_localized_script(
	"res://dialogues/chapter.ks", "ko"
)

로드에 실패하면 null을 반환하고 명확한 오류를 출력합니다.

Released under BSD3-Clause License.