language config now in two columns

This commit is contained in:
minjaesong
2021-09-15 17:40:31 +09:00
parent ae29f7ebea
commit fdd07debf4
34 changed files with 126 additions and 22 deletions

1
.gitignore vendored
View File

@@ -29,6 +29,7 @@ workspace.xml
.tmp*
tmp_*
*.bak
*-autosave.kra
## Microsoft Office
~$*
## Generic temp files in Linux

Binary file not shown.

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Авторско право",
"APP_WARNING_HEALTH_AND_SAFETY": "ВНИМАНИЕ-ЗДРАВЕ И БЕЗОПАСНОСТ",
"MENU_LABEL_PRESS_START_SYMBOL": "атисни >",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Всички права запазени",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Autorská práva",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Všechna práva vyhrazena",
"COPYRIGHT_GNU_GPL_3": "Šířen pod licencí GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "POZOR-ZDRAVÍ A BEZPEČNOST",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Ophavsret",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Alle rettigheder forbeholdes",
"COPYRIGHT_GNU_GPL_3": "Distribueret under GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ADVARSEL-SUNDHED OG SIKKERHED",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Urheberrecht",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Alle Rechte vorbehalten",
"COPYRIGHT_GNU_GPL_3": "Verteilt unter GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "WARNUNG-GESUNDHEIT UND SICHERHEIT",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Πνευματικά δικαιώματα",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Όλα τα δικαιώματα διατηρούνται",
"COPYRIGHT_GNU_GPL_3": "Διανέμεται υπό την GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ΠΡΟΣΟΧΗ-ΥΓΕΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Copyright",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "All rights reserved",
"COPYRIGHT_GNU_GPL_3": "Distributed under GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "WARNING-HEALTH AND SAFETY",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Copyright",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Todos los derechos reservados",
"COPYRIGHT_GNU_GPL_3": "Distribuido bajo GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ADVERTENCIA-SALUD Y SEGURIDAD",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Tekijänoikeus",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Kaikki oikeudet pidätetään",
"COPYRIGHT_GNU_GPL_3": "Jaetaan GNU GPL 3:n mukaisesti",
"APP_WARNING_HEALTH_AND_SAFETY": "VAROITUS-TERVEYS JA TURVALLISUUS",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Copyright",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Tous les droits sont réservés",
"COPYRIGHT_GNU_GPL_3": "Distribué sous GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ATTENTION-SANTÉ ET SÉCURITÉ",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Szerzői jog",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Minden jog fenntartva",
"COPYRIGHT_GNU_GPL_3": "Elosztott GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "VIGYÁZAT-EGÉSZSÉGÜGYI ÉS BIZTONSÁGI",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Höfundarréttur",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Öll réttindi áskilinn",
"COPYRIGHT_GNU_GPL_3": "Dreift samkvæmt GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "VIÐVÖRUN-HEILSA OG ÖRYGGI",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Copyright",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Tutti i diritti riservati",
"COPYRIGHT_GNU_GPL_3": "Distribuito sotto licenza GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ATTENZIONE-SALUTE E SICUREZZA",

View File

@@ -1,4 +1,6 @@
{ "COPYRIGHT_ALL_RIGHTS_RESERVED": "全著作権所有",
{
"MENU_LABEL_COPYRIGHT": "著作権",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "全著作権所有",
"COPYRIGHT_GNU_GPL_3": "GNU GPL 3で配布",
"APP_WARNING_HEALTH_AND_SAFETY": "警告ー健康と安全のために",
"MENU_LABEL_PRESS_START_SYMBOL": "> ボタンを押す",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "ちょさくけん",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "ぜんちょさくけん しょゆう",
"COPYRIGHT_GNU_GPL_3": "GNU GPL 3で はいふ",
"APP_WARNING_HEALTH_AND_SAFETY": "けいこくーけんこうと あんぜんの ために",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "저작권",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "모든 권리 보유",
"COPYRIGHT_GNU_GPL_3": "GNU GPL 3에 따라 배포됨",
"APP_WARNING_HEALTH_AND_SAFETY": "경고—건강과 안전을 위하여",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Auteursrecht",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Alle rechten voorbehouden",
"COPYRIGHT_GNU_GPL_3": "Gedistribueerd onder GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "WAARSCHUWING-GEZONDHEID EN VEILIGHEID",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Opphavsrett",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Alle rettigheter reservert",
"COPYRIGHT_GNU_GPL_3": "Distribuert under GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ADVARSEL-HELSE OG SIKKERHET",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Prawa autorskie",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Wszelkie prawa zastrzeżone",
"COPYRIGHT_GNU_GPL_3": "Rozpowszechniana w GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "UWAGA-ZDROWIE I BEZPIECZEŃSTWO",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Direitos Autorais",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Todos os direitos reservados",
"COPYRIGHT_GNU_GPL_3": "Distribuído sob GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ATENÇÃO-SAÚDE E SEGURANÇA",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Direitos de Autor",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Todos os direitos reservados",
"COPYRIGHT_GNU_GPL_3": "Distribuído sob GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ATENÇÃO-SAÚDE E SEGURANÇA",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Drept de autor",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Toate drepturile rezervate",
"COPYRIGHT_GNU_GPL_3": "Distribuit sub GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ATENȚIONARE-SĂNĂTATE ȘI SIGURANȚĂ",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Авторские права",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Все права защищены",
"COPYRIGHT_GNU_GPL_3": "Распространяется в соответствии с GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "ПРЕДУПРЕЖДЕНИЕ-ЗДОРОВЬЕ И БЕЗОПАСНОСТЬ",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Upphovsrätt",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Alla rättigheter förbehållna",
"COPYRIGHT_GNU_GPL_3": "Distribueras under GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "VARNING-HÄLSA OCH SÄKERHET",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "ลิขสิทธิ์",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "สงวนลิขสิทธิ์",
"COPYRIGHT_GNU_GPL_3": "เผยแพร่ภายใต้ GNU GPL 3",
"APP_WARNING_HEALTH_AND_SAFETY": "คำเตือน-อนามัยและความปลอดภัย",

View File

@@ -1,4 +1,5 @@
{
"MENU_LABEL_COPYRIGHT": "Telif Hakkı",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Her hakkı saklıdır",
"COPYRIGHT_GNU_GPL_3": "GNU GPL 3 kapsamında dağıtılan",
"APP_WARNING_HEALTH_AND_SAFETY": "UYARI-SAĞLIK VE GÜVENLİK",

View File

@@ -1,5 +1,6 @@
{
"COPYRIGHT_ALL_RIGHTS_RESERVED": "版权所有",
"MENU_LABEL_COPYRIGHT": "版权",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "全版权所有",
"COPYRIGHT_GNU_GPL_3": "分布在GNU GPL 3下",
"APP_WARNING_HEALTH_AND_SAFETY": "健康游戏忠告",
"APP_CHINESE_HEALTHY_GAME_MSG_1": "抵制不良游戏 拒绝盗版游戏",

View File

@@ -1,5 +1,6 @@
{
"COPYRIGHT_ALL_RIGHTS_RESERVED": "版權所有",
"MENU_LABEL_COPYRIGHT": "版權",
"COPYRIGHT_ALL_RIGHTS_RESERVED": "全版權所有",
"COPYRIGHT_GNU_GPL_3": "分佈在GNU GPL 3下",
"APP_WARNING_HEALTH_AND_SAFETY": "警告ー健康和安全",
"MENU_LABEL_PRESS_START_SYMBOL": "按下 >",

View File

@@ -47,6 +47,7 @@ object Lang {
load("./assets/locales/")
}
@JvmStatic operator fun invoke() { /* dummy method for manual initialisation */ }
fun load(localesDir: String) {
@@ -57,6 +58,10 @@ object Lang {
// get all of the languages installed
localesDir.listFiles().filter { it.isDirectory }.forEach { languageList.add(it.name) }
// temporary filter
languageList.remove("isIC")
languageList.remove("jakanaJP")
for (lang in languageList) {
val langFileListFiles = File("$localesDir/$lang/").listFiles()
langFileListFiles.forEach {

View File

@@ -0,0 +1,44 @@
package net.torvald.terrarum.modulebasegame.ui
import com.badlogic.gdx.graphics.Camera
import com.badlogic.gdx.graphics.g2d.SpriteBatch
import net.torvald.terrarum.Second
import net.torvald.terrarum.ui.UICanvas
/**
* Created by minjaesong on 2021-09-15.
*/
class UIKeyboardControlPanel : UICanvas() {
override var width = 600
override var height = 600
override var openCloseTime = 0f
override fun updateUI(delta: Float) {
TODO("Not yet implemented")
}
override fun renderUI(batch: SpriteBatch, camera: Camera) {
TODO("Not yet implemented")
}
override fun doOpening(delta: Float) {
TODO("Not yet implemented")
}
override fun doClosing(delta: Float) {
TODO("Not yet implemented")
}
override fun endOpening(delta: Float) {
TODO("Not yet implemented")
}
override fun endClosing(delta: Float) {
TODO("Not yet implemented")
}
override fun dispose() {
TODO("Not yet implemented")
}
}

View File

@@ -8,6 +8,7 @@ import net.torvald.terrarum.Second
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.ui.UICanvas
import net.torvald.terrarum.ui.UIItemTextButtonList
import kotlin.math.roundToInt
class UITitleLanguage : UICanvas() {
@@ -19,17 +20,34 @@ class UITitleLanguage : UICanvas() {
override var openCloseTime: Second = 0f
private val textAreaHMargin = 48
override var width = (App.scr.width * 0.75).toInt()
override var height = App.scr.height - textAreaHMargin * 2
private val textButtonLineHeight = 32
private val localeList = Lang.languageList.toList().sorted()
private val textArea = UIItemTextButtonList(this,
24,
localeList.map { Lang.langpack["MENU_LANGUAGE_THIS_$it"] ?: "!ERR: $it" }.toTypedArray(),
App.scr.width - width, textAreaHMargin,
width, height,
textAreaWidth = width,
private val localeFirstHalf = localeList.subList(0, localeList.size / 2)
private val localeSecondHalf = localeList.subList(localeList.size / 2, localeList.size)
override var width = 480
override var height = maxOf(localeFirstHalf.size, localeSecondHalf.size) * textButtonLineHeight
private val textArea1 = UIItemTextButtonList(this,
textButtonLineHeight,
localeFirstHalf.map { Lang.langpack["MENU_LANGUAGE_THIS_$it"] ?: "!ERR: $it" }.toTypedArray(),
(App.scr.width - width) / 2, (App.scr.height - height) / 2,
width / 2, height,
textAreaWidth = width / 2,
readFromLang = false,
activeBackCol = Color(0),
highlightBackCol = Color(0),
backgroundCol = Color(0),
inactiveCol = Color.WHITE,
defaultSelection = null
)
private val textArea2 = UIItemTextButtonList(this,
textButtonLineHeight,
localeSecondHalf.map { Lang.langpack["MENU_LANGUAGE_THIS_$it"] ?: "!ERR: $it" }.toTypedArray(),
(App.scr.width - width) / 2 + (width / 2), (App.scr.height - height) / 2,
width / 2, height,
textAreaWidth = width / 2,
readFromLang = false,
activeBackCol = Color(0),
highlightBackCol = Color(0),
@@ -50,15 +68,20 @@ class UITitleLanguage : UICanvas() {
// attach listeners
textArea.selectionChangeListener = { _, newSelectionIndex ->
textArea1.selectionChangeListener = { _, newSelectionIndex ->
App.GAME_LOCALE = localeList[newSelectionIndex]
textArea2.deselect()
}
textArea2.selectionChangeListener = { _, newSelectionIndex ->
App.GAME_LOCALE = localeList[newSelectionIndex + localeFirstHalf.size]
textArea1.deselect()
}
}
override fun updateUI(delta: Float) {
textArea.update(delta)
textArea1.update(delta)
textArea2.update(delta)
//AppLoader.printdbg(this, "should be printing indefinitely")
}
@@ -66,7 +89,8 @@ class UITitleLanguage : UICanvas() {
override fun renderUI(batch: SpriteBatch, camera: Camera) {
batch.color = Color.WHITE
textArea.render(batch, camera)
textArea1.render(batch, camera)
textArea2.render(batch, camera)
}
override fun doOpening(delta: Float) {

View File

@@ -15,15 +15,14 @@ object UITitleRemoConYaml {
- MENU_OPTIONS
- MENU_OPTIONS_GRAPHICS
- MENU_OPTIONS_CONTROLS
- MENU_CONTROLS_KEYBOARD
- MENU_CONTROLS_KEYBOARD : net.torvald.terrarum.modulebasegame.ui.UIKeyboardControlPanel
- MENU_CONTROLS_GAMEPAD
- MENU_LABEL_RETURN
- MENU_OPTIONS_SOUND
- MENU_LABEL_LANGUAGE : net.torvald.terrarum.modulebasegame.ui.UITitleLanguage
- MENU_MODULES : net.torvald.terrarum.ModOptionsHost
- MENU_LABEL_RETURN
- MENU_LABEL_CREDITS : net.torvald.terrarum.modulebasegame.ui.UITitleCredits
- MENU_LABEL_CREDITS : net.torvald.terrarum.modulebasegame.ui.UITitleCredits
- MENU_LABEL_CREDITS
- MENU_LABEL_COPYRIGHT : net.torvald.terrarum.modulebasegame.ui.UITitleCredits
- MENU_CREDIT_GPL_DNT : net.torvald.terrarum.modulebasegame.ui.UITitleGPL3
- MENU_LABEL_RETURN
- MENU_LABEL_QUIT

Binary file not shown.