One_Eleven_Android/scripts/SelectLanguageScene.gd
2024-11-10 03:34:28 +03:00

75 lines
2.1 KiB
GDScript

extends Node2D
var windowSize;
func _ready():
windowSize = SettingsSingleton.GetCurrectScreenResolutionVector2()
SetBackground();
SetText();
func SetBackground():
$Polygon2D.set_polygon(PoolVector2Array([
Vector2(0, 0),
Vector2(0, 1080),
Vector2(1920, 1080),
Vector2(1920, 0)
]));
func SetText():
for i in $Texts.get_children():
var button = (i as Button);
button.connect("mouse_entered", self, "onButtonHoverOn", [button]);
button.connect("mouse_exited", self, "onButtonHoverOff", [button]);
button.connect("pressed", self, "languageSelected", [button.text]);
$Texts.rect_position = Vector2(1920, 1080) / 2 - $Texts.rect_size / 2;
func onButtonHoverOn(button):
(button as Button).get("custom_fonts/font").outline_color = Color(213, 55, 29, 255)
func onButtonHoverOff(button):
(button as Button).get("custom_fonts/font").outline_color = Color(0, 0, 0, 255)
func languageSelected(langName):
var lang = "";
if langName == "ENGLISH":
lang = "en"
elif langName == "РУССКИЙ":
lang = "ru";
elif langName == "УКРАЇНСЬКА":
lang = "uk";
SettingsSingleton.SetCurrentLanguage(lang);
SettingsSingleton.SetVoiceoverLanguage(lang);
var resolution = str(windowSize.x) + "x" + str(windowSize.y);
resolution = "1920x1080"
SettingsSingleton.SetCurrectScreenResolution(resolution)
SettingsSingleton.SetCurrectWindowState(2);
SettingsSingleton.SaveSettings()
SettingsSingleton.SetFirstStartup(false);
if not SceneLoader.is_connected("on_scene_loaded", self, "MenuLoaded"):
var _temp = SceneLoader.connect("on_scene_loaded", self, "MenuLoaded");
SceneLoader.load_scene("res://scenes/MainMenu.tscn")
func MenuLoaded(obj):
if obj.path != "res://scenes/MainMenu.tscn":
return ;
if obj.instance != null:
get_tree().root.add_child(obj.instance);
for i in get_tree().root.get_children():
if i.name == "SelectLanguageScene":
get_tree().root.remove_child(i);
break;
SceneLoader.disconnect("on_scene_loaded", self, "MenuLoaded");
func _input(event):
if event is InputEventKey and event.scancode == KEY_ESCAPE and event.pressed == false:
get_tree().quit();