extends Node func _ready() -> void: GameState.start_new_run() var enemy := preload("res://scenes/game/enemy_ship.tscn").instantiate() add_child(enemy) enemy.set_physics_process(false) enemy.max_hull = 100.0 enemy.max_shields = 200.0 enemy.hull = 9.0 enemy.shields = 0.0 assert(enemy.is_retreating()) enemy.regenerate_defenses(0.5) assert(is_equal_approx(enemy.hull, 9.5) and is_equal_approx(enemy.shields, 1.0)) assert(enemy.is_retreating()) enemy.regenerate_defenses(0.5) assert(is_equal_approx(enemy.hull, 10.0) and not enemy.is_retreating()) enemy.regenerate_defenses(1000.0) assert(enemy.hull == enemy.max_hull and enemy.shields == enemy.max_shields) enemy.hull = 0.0 enemy.regenerate_defenses(10.0) assert(enemy.hull == 0.0) enemy.loot_tier = 2 enemy.hull = 25.0 enemy.shields = 40.0 enemy.regenerate_defenses(1000.0) assert(enemy.hull == 25.0 and enemy.shields == 40.0) enemy.loot_tier = 1 enemy.regenerate_defenses(1.0) assert(enemy.hull == 26.0 and enemy.shields == 42.0) var button := Button.new() button.set_script(preload("res://scripts/ui/navigation_button.gd")) button.configure_navigation(null, Color("b9a0ef"), "KAPITAN") button.name = "OpenCaptainSkills" add_child(button) var original := (button.get_theme_stylebox("normal") as StyleBoxFlat).shadow_size GameState.captain.learning_points = 1 button._process(0.4) assert((button.get_theme_stylebox("normal") as StyleBoxFlat).shadow_size > original) GameState.captain.learning_points = 0 button._process(0.1) assert((button.get_theme_stylebox("normal") as StyleBoxFlat).shadow_size == original) print("ENEMY_REPAIR_NOTIFICATION_TEST: PASS 1%/s, retreat threshold, caps, dead enemy, boss regeneration disabled, elite regeneration, notification reset") get_tree().quit()