mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-03-07 12:21:52 +09:00
language config now in two columns
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -29,6 +29,7 @@ workspace.xml
|
||||
.tmp*
|
||||
tmp_*
|
||||
*.bak
|
||||
*-autosave.kra
|
||||
## Microsoft Office
|
||||
~$*
|
||||
## Generic temp files in Linux
|
||||
|
||||
Binary file not shown.
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"MENU_LABEL_COPYRIGHT": "Авторско право",
|
||||
"APP_WARNING_HEALTH_AND_SAFETY": "ВНИМАНИЕ-ЗДРАВЕ И БЕЗОПАСНОСТ",
|
||||
"MENU_LABEL_PRESS_START_SYMBOL": "атисни >",
|
||||
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Всички права запазени",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"MENU_LABEL_COPYRIGHT": "Πνευματικά δικαιώματα",
|
||||
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Όλα τα δικαιώματα διατηρούνται",
|
||||
"COPYRIGHT_GNU_GPL_3": "Διανέμεται υπό την GNU GPL 3",
|
||||
"APP_WARNING_HEALTH_AND_SAFETY": "ΠΡΟΣΟΧΗ-ΥΓΕΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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É",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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": "> ボタンを押す",
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"MENU_LABEL_COPYRIGHT": "ちょさくけん",
|
||||
"COPYRIGHT_ALL_RIGHTS_RESERVED": "ぜんちょさくけん しょゆう",
|
||||
"COPYRIGHT_GNU_GPL_3": "GNU GPL 3で はいふ",
|
||||
"APP_WARNING_HEALTH_AND_SAFETY": "けいこくーけんこうと あんぜんの ために",
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"MENU_LABEL_COPYRIGHT": "저작권",
|
||||
"COPYRIGHT_ALL_RIGHTS_RESERVED": "모든 권리 보유",
|
||||
"COPYRIGHT_GNU_GPL_3": "GNU GPL 3에 따라 배포됨",
|
||||
"APP_WARNING_HEALTH_AND_SAFETY": "경고—건강과 안전을 위하여",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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ȚĂ",
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"MENU_LABEL_COPYRIGHT": "Авторские права",
|
||||
"COPYRIGHT_ALL_RIGHTS_RESERVED": "Все права защищены",
|
||||
"COPYRIGHT_GNU_GPL_3": "Распространяется в соответствии с GNU GPL 3",
|
||||
"APP_WARNING_HEALTH_AND_SAFETY": "ПРЕДУПРЕЖДЕНИЕ-ЗДОРОВЬЕ И БЕЗОПАСНОСТЬ",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"MENU_LABEL_COPYRIGHT": "ลิขสิทธิ์",
|
||||
"COPYRIGHT_ALL_RIGHTS_RESERVED": "สงวนลิขสิทธิ์",
|
||||
"COPYRIGHT_GNU_GPL_3": "เผยแพร่ภายใต้ GNU GPL 3",
|
||||
"APP_WARNING_HEALTH_AND_SAFETY": "คำเตือน-อนามัยและความปลอดภัย",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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": "抵制不良游戏 拒绝盗版游戏",
|
||||
|
||||
@@ -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": "按下 >",
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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")
|
||||
}
|
||||
}
|
||||
@@ -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) {
|
||||
|
||||
@@ -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
|
||||
|
||||
BIN
work_files/UI/key_set_ui_mockup3.kra
LFS
Normal file
BIN
work_files/UI/key_set_ui_mockup3.kra
LFS
Normal file
Binary file not shown.
Reference in New Issue
Block a user