extends Node2D func _ready() -> void: GameState.buildings.clear() GameState.extractors.clear() GameState.transporters.clear() GameState.vessel_levels["unlock_gas_bomber"] = 1 var main: Node = load("res://Main.tscn").instantiate() add_child(main) main.get_node("BackgroundLayer").visible = false main.get_node("AsteroidField").visible = false main.get_node("PlanetField").visible = false main.get_node("BuildingField").visible = false main.get_node("EnemySpawner").set_process(false) main.get_node("AsteroidField").set_process(false) var fleet: Node = main.get_node("Fleet") fleet.spawn_ships(4, Vector2.ZERO, PackedStringArray([ GameState.VESSEL_INTERCEPTOR, GameState.VESSEL_SHIELD, GameState.VESSEL_GAS_BOMBER, GameState.VESSEL_GAS_BOMBER])) var skill: GasBombController = main.get_node("GasBombController") skill._process(0.0) # Show both per-ship states in one frame: the first bomber is rearming, # while the second has the bright complete ready halo and supplies the aim. fleet.ships[2].get_component("gas_bomber").consume_shot(GasBombController.COOLDOWN) main.get_node("Camera2D").zoom = Vector2(1.8, 1.8) var button: Control = main.get_node("UI/GasBombButton") var press := InputEventScreenTouch.new() press.index = 9 press.position = button.global_position + button.size * 0.5 press.pressed = true skill.handle_touch(press) var drag := InputEventScreenDrag.new() drag.index = 9 drag.position = press.position + Vector2(-245, -235) skill.handle_drag(drag) for offset in [Vector2(-65, 0), Vector2(45, -45), Vector2(55, 65)]: var enemy: Node = load("res://Enemy.tscn").instantiate() enemy.position = skill.aim_target + offset enemy.speed = 0.0 main.add_child(enemy)