39 lines
1012 B
GDScript
39 lines
1012 B
GDScript
extends HBoxContainer
|
|
|
|
@onready var btn_pause: Button = $BtnPause
|
|
@onready var btn_x1: Button = $BtnX1
|
|
@onready var btn_x2: Button = $BtnX2
|
|
@onready var btn_x4: Button = $BtnX4
|
|
|
|
func _ready() -> void:
|
|
process_mode = Node.PROCESS_MODE_ALWAYS
|
|
|
|
btn_pause.pressed.connect(_on_pause)
|
|
btn_x1.pressed.connect(_on_x1)
|
|
btn_x2.pressed.connect(_on_x2)
|
|
btn_x4.pressed.connect(_on_x4)
|
|
|
|
if GameState.has_signal("time_scale_changed"):
|
|
GameState.time_scale_changed.connect(_on_scale_changed)
|
|
|
|
_on_scale_changed(GameState.time_scale)
|
|
|
|
func _on_pause() -> void:
|
|
GameState.set_time_scale(0.0)
|
|
|
|
func _on_x1() -> void:
|
|
GameState.set_time_scale(1.0)
|
|
|
|
func _on_x2() -> void:
|
|
GameState.set_time_scale(2.0)
|
|
|
|
func _on_x4() -> void:
|
|
GameState.set_time_scale(4.0)
|
|
|
|
func _on_scale_changed(new_scale: float) -> void:
|
|
btn_pause.disabled = is_equal_approx(new_scale, 0.0)
|
|
btn_x1.disabled = is_equal_approx(new_scale, 1.0)
|
|
btn_x2.disabled = is_equal_approx(new_scale, 2.0)
|
|
btn_x4.disabled = is_equal_approx(new_scale, 4.0)
|
|
|