Files
MovementTests/menus/scenes/overlaid_menus/toolbox.gd
2026-02-06 11:02:38 +01:00

45 lines
1.3 KiB
GDScript

@tool
@icon("res://assets/ui/IconGodotNode/control/icon_gear_2.png")
class_name Toolbox
extends OverlaidMenu
@export var player: PlayerController
@export var level_selection_menu: PackedScene = preload("uid://fybssggvts5q")
@onready var player_invicible_toggle: CheckButton = %PlayerInvicibleToggle
@onready var player_health_spin_box: SpinBox = %PlayerHealthSpinBox
@onready var player_damage_spin_box: SpinBox = %PlayerDamageSpinBox
func _ready() -> void:
player_invicible_toggle.button_pressed = player.IsInvincibleOverride
player_health_spin_box.value = player.RHealth.StartingHealth
player_damage_spin_box.value = player.RDamage.DamageDealt
func _on_kill_player_button_pressed() -> void:
get_tree().create_timer(1).timeout.connect(player.Kill)
close()
func _on_player_invicible_toggled(toggled_on: bool) -> void:
player.IsInvincibleOverride = toggled_on
func _on_restart_current_level_pressed() -> void:
SceneLoader.reload_current_scene()
func _on_select_level_pressed() -> void:
var menu: LevelSelectMenu = level_selection_menu.instantiate()
menu.level_selected.connect(_on_level_selected)
add_child(menu)
func _on_level_selected() -> void:
close()
func _on_player_health_changed(value: float) -> void:
player.SetPlayerHealthOverride(value)
func _on_player_damage_changed(value: float) -> void:
player.SetPlayerDamageOverride(value)