Swarm/UI/main_menu.gd

63 lines
1.5 KiB
GDScript

extends Control
@onready var exit_button = $PanelContainer/MarginContainer/VBoxContainer/ExitButton
@onready var lan_button = $PanelContainer/MarginContainer/VBoxContainer/LANButton
const SETTINGS = preload("res://UI/Settings/Settings.tscn")
const RULES = preload("res://UI/Rules/Rules.tscn")
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
if OS.has_feature("web"):
exit_button.visible = false
lan_button.visible = false
#WSClient.lobby_joined.connect(_on_lobby_joined)
Networking.offline_mode()
GameData.reset()
func _on_lobby_joined(lobby: String) -> void:
GameData.lobby_code = lobby
get_tree().change_scene_to_file("res://Multiplayer/Multiplayer.tscn")
func _on_host_button_pressed():
GameData.is_player_black = false
#WSClient.start(GameData.WEBSOCKET_ENDPOINT, "", false)
func _on_join_button_pressed():
get_tree().change_scene_to_file("res://UI/join_menu.tscn")
func _on_exit_button_pressed():
get_tree().quit()
func _on_rules_button_pressed():
var rules = RULES.instantiate()
get_tree().root.add_child(rules)
rules.show_panel()
func _on_online_button_pressed():
get_tree().change_scene_to_file("res://UI/Lobby/WebRTCLobby.tscn")
func _on_local_button_pressed():
GameData.is_hot_seat = true
get_tree().change_scene_to_file("res://Game.tscn")
func _on_settings_button_pressed():
var settings = SETTINGS.instantiate()
get_tree().root.add_child(settings)
settings.show_panel()
func _on_lan_button_pressed():
get_tree().change_scene_to_file("res://UI/Lobby/LANLobby.tscn")