You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
568_Calc/Scripts/全局.gd

96 lines
2.2 KiB

12 months ago
extends Node
11 months ago
const CONFIG_PATH := "user://settings.cfg"
#var 应该使用字体 := false
12 months ago
func _ready():
11 months ago
#根据语言切换主题(读取设置并更改语言())
()
()
12 months ago
func (index):
if index == 0:
11 months ago
return ()
12 months ago
elif index == 1:
TranslationServer.set_locale("zh")
12 months ago
elif index == 2:
TranslationServer.set_locale("zht")
12 months ago
elif index == 3:
TranslationServer.set_locale("en")
12 months ago
elif index == 4:
TranslationServer.set_locale("jp")
elif index == 5:
12 months ago
TranslationServer.set_locale("es")
else:
push_error("切换语言时,选项“%d”不存在!" % index)
TranslationServer.set_locale("en")
return index
func (index):
11 months ago
var file := ConfigFile.new()
12 months ago
file.set_value("General", "Language", index)
11 months ago
var error := file.save(CONFIG_PATH)
12 months ago
if error != OK:
push_error("Failed to save config: %d" % error)
func (index):
11 months ago
return ((index))
12 months ago
11 months ago
func ():
var file := ConfigFile.new()
12 months ago
if FileAccess.file_exists(CONFIG_PATH):
11 months ago
var error := file.load(CONFIG_PATH)
12 months ago
if error == OK:
11 months ago
return file.get_value("General", "Language", 0)
12 months ago
else:
push_warning("Failed to load config: %d", error)
11 months ago
return ()
func ():
return (())
func ():
11 months ago
var locale := OS.get_locale()
if locale == "zh_CN":
11 months ago
(1)
elif locale == "zh_TW":
11 months ago
(2)
elif locale == "en":
11 months ago
(3)
elif locale == "jp":
11 months ago
(4)
elif locale == "es":
11 months ago
(5)
else:
11 months ago
(3)
return 0
func ():
11 months ago
return (0)
#func 根据语言切换主题(index):
#if index == 1 or index == 3 or index == 5:
#应该使用字体 = true
##propagate_call(“update”)
#else:
#应该使用字体 = false
func ():
# 获取系统类型
11 months ago
var sys_name := OS.get_name()
# 根据系统类型判断是否调整窗口DPI
if sys_name == "Windows" or sys_name == "macOS" or sys_name == "Linux" or sys_name == "BSD":
11 months ago
get_viewport().size = Vector2(DisplayServer.screen_get_dpi() * 3.5, DisplayServer.screen_get_dpi() * 6.2)