65 lines
2.1 KiB
GDScript
65 lines
2.1 KiB
GDScript
extends Control
|
|
|
|
@onready var player_panel_array = [$Control/Panel4, $Control/Panel2, $Control/Panel3]
|
|
@onready var players_turning = [$Panel/SubViewportContainer/SubViewport/Players/Player1/MeshInstance3D,
|
|
$Panel/SubViewportContainer/SubViewport/Players/Player2/MeshInstance3D,
|
|
$Panel/SubViewportContainer/SubViewport/Players/Player3/MeshInstance3D]
|
|
|
|
|
|
|
|
func _ready() -> void:
|
|
$AnimationPlayer.play("turning")
|
|
|
|
func selected_via_click(chosen_player: int) -> void:
|
|
player_panel_array[Global.PlayerSelection].get_theme_stylebox('panel').border_color = Color('cccccc')
|
|
players_turning[Global.PlayerSelection].visible = false
|
|
Global.PlayerSelection = chosen_player
|
|
for i in players_turning[chosen_player].mesh.get_surface_count():
|
|
players_turning[chosen_player].set_surface_override_material(i, null)
|
|
player_panel_array[chosen_player].get_theme_stylebox('panel').border_color = Color('30e7f2')
|
|
players_turning[Global.PlayerSelection].visible = true
|
|
|
|
func _on_button_1_pressed() -> void:
|
|
selected_via_click(0)
|
|
|
|
func _on_button_2_pressed() -> void:
|
|
selected_via_click(1)
|
|
|
|
func _on_button_3_pressed() -> void:
|
|
selected_via_click(2)
|
|
|
|
func _on_start_pressed() -> void:
|
|
var mesh = players_turning[Global.PlayerSelection].mesh.duplicate()
|
|
|
|
for i in range(mesh.get_surface_count()):
|
|
var override_mat = players_turning[Global.PlayerSelection].get_surface_override_material(i)
|
|
if override_mat:
|
|
mesh.surface_set_material(i, override_mat)
|
|
ResourceSaver.save(mesh, "user://player_anim.tres")
|
|
|
|
get_tree().change_scene_to_file("res://title_screen_animation.tscn")
|
|
|
|
|
|
func _on_line_edit_text_changed(new_text: String) -> void:
|
|
Global.player_name = new_text
|
|
|
|
|
|
func _on_impressum_pressed() -> void:
|
|
$Panel2.visible = true
|
|
$Panel2/Label.text = load_text_file('res://Resources/documents/impressum.txt')
|
|
|
|
|
|
func _on_datenschutz_pressed() -> void:
|
|
$Panel2.visible = true
|
|
$Panel2/Label.text = load_text_file('res://Resources/documents/datenschutz.txt')
|
|
|
|
|
|
func _on_button_pressed() -> void:
|
|
$Panel2.visible = false
|
|
|
|
|
|
func load_text_file(path: String):
|
|
var file = FileAccess.open(path, FileAccess.READ)
|
|
var content = file.get_as_text()
|
|
return content
|