online multiplayer chess game (note server currently down)
Diffstat (limited to 'ui/barbutton/BarTextureButton.gd')
| -rw-r--r-- | ui/barbutton/BarTextureButton.gd | 44 |
1 files changed, 17 insertions, 27 deletions
diff --git a/ui/barbutton/BarTextureButton.gd b/ui/barbutton/BarTextureButton.gd index fa776a5..6f57340 100644 --- a/ui/barbutton/BarTextureButton.gd +++ b/ui/barbutton/BarTextureButton.gd @@ -1,33 +1,29 @@ -extends Control +extends TextureButton class_name BarTextureButton -signal pressed - -var focused = false - -export(Texture) var texture +var focused: bool export(Color) var normal_color := Color.black -export(Color) var highlight_color := Color(0.243137, 0.129412, 0.129412) -export(Color) var pressed_color := Color(0.227451, 0.270588, 0.301961) +export(Color) var highlight_color := Color(0.670588, 0.352941, 0.352941) +export(Color) var pressed_color := Color(0.356863, 0.572549, 0.647059) +export(Color) var disabled_color := Color(0.501961, 0.501961, 0.501961) -onready var texture_button = $Texture -onready var background = $Background +onready var background := $Background -func _ready(): - texture_button.texture_normal = texture - texture_button.texture_focused = texture - texture_button.texture_pressed = texture - texture_button.texture_hover = texture +func _ready() -> void: + _focused(false) -func _on_Texture_pressed(): - emit_signal("pressed") +func set_disabled(new: bool) -> void: + disabled = new + self_modulate = Color(.1, .1, .1, 0.5) if disabled else Color.white -func _process(_delta): - if texture_button.pressed: +func _process(_delta := 0.0): + if disabled: + background.color = disabled_color + elif pressed: background.color = pressed_color elif focused: background.color = highlight_color @@ -35,11 +31,5 @@ func _process(_delta): background.color = normal_color -func _on_Texture_mouse_entered(): - focused = true - background.color = highlight_color - - -func _on_Texture_mouse_exited(): - focused = false - background.color = normal_color +func _focused(q: bool): + focused = q |