generated from krampus/template-godot4
44 lines
1.3 KiB
GDScript3
44 lines
1.3 KiB
GDScript3
|
|
extends VBoxContainer
|
||
|
|
|
||
|
|
signal join_session(session_id: String, player: Player)
|
||
|
|
|
||
|
|
@onready var session_id_line_edit: LineEdit = %SessionIdLineEdit
|
||
|
|
@onready var name_line_edit: LineEdit = %NameLineEdit
|
||
|
|
@onready var player_color: ColorPickerButton = %PlayerColor
|
||
|
|
@onready var join_session_button: Button = %JoinSession
|
||
|
|
|
||
|
|
|
||
|
|
func _ready() -> void:
|
||
|
|
player_color.color = Color(randf(), randf(), randf())
|
||
|
|
var picker := player_color.get_picker()
|
||
|
|
picker.picker_shape = ColorPicker.SHAPE_HSV_WHEEL
|
||
|
|
picker.sampler_visible = false
|
||
|
|
picker.edit_alpha = false
|
||
|
|
picker.edit_intensity = false
|
||
|
|
picker.color_modes_visible = false
|
||
|
|
picker.sliders_visible = false
|
||
|
|
picker.hex_visible = false
|
||
|
|
picker.presets_visible = false
|
||
|
|
picker.can_add_swatches = false
|
||
|
|
|
||
|
|
|
||
|
|
func _on_session_id_line_edit_text_changed(new_text: String) -> void:
|
||
|
|
if !new_text.is_empty() and !name_line_edit.text.is_empty():
|
||
|
|
join_session_button.disabled = false
|
||
|
|
else:
|
||
|
|
join_session_button.disabled = true
|
||
|
|
|
||
|
|
|
||
|
|
func _on_name_line_edit_text_changed(new_text: String) -> void:
|
||
|
|
if !new_text.is_empty() and !session_id_line_edit.text.is_empty():
|
||
|
|
join_session_button.disabled = false
|
||
|
|
else:
|
||
|
|
join_session_button.disabled = true
|
||
|
|
|
||
|
|
|
||
|
|
func _on_join_session_pressed():
|
||
|
|
var player = Player.new()
|
||
|
|
player.name = name_line_edit.text
|
||
|
|
player.color = player_color.color
|
||
|
|
join_session.emit(session_id_line_edit.text, player)
|