48 lines
1.6 KiB
GDScript3
48 lines
1.6 KiB
GDScript3
|
|
extends Node2D
|
||
|
|
|
||
|
|
# Preview, not a test - #53's "telegraph visible mid-countdown" screenshot.
|
||
|
|
# Freezes an EnemyBigLaserBeam partway through its charge, aimed across the
|
||
|
|
# fleet, so the widening beam-line telegraph is clearly visible.
|
||
|
|
#
|
||
|
|
# bash tests/screenshot.sh res://tests/_mothership_beam_preview.tscn /tmp/beam.png 20 720x1280
|
||
|
|
|
||
|
|
var main: Node
|
||
|
|
|
||
|
|
|
||
|
|
func _ready() -> void:
|
||
|
|
GameState.buildings.clear()
|
||
|
|
GameState.extractors.clear()
|
||
|
|
main = 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")
|
||
|
|
for ship in fleet.ships:
|
||
|
|
if is_instance_valid(ship):
|
||
|
|
ship.set_physics_process(false)
|
||
|
|
|
||
|
|
var mothership: Node = load("res://Enemy.tscn").instantiate()
|
||
|
|
mothership.enemy_id = "enemy_mothership"
|
||
|
|
mothership.position = Vector2(-500, -300)
|
||
|
|
main.add_child(mothership)
|
||
|
|
|
||
|
|
var beam: Node2D = load("res://EnemyBigLaserBeam.tscn").instantiate()
|
||
|
|
beam.charge_time = 10.0 # frozen mid-countdown for the screenshot
|
||
|
|
beam.beam_range = 1400.0
|
||
|
|
beam.beam_half_width = 35.0
|
||
|
|
main.add_child(beam)
|
||
|
|
beam.launch(mothership.position, fleet.get_centroid() - mothership.position)
|
||
|
|
beam.charge_left = beam.charge_time * 0.55
|
||
|
|
beam.set_process(false)
|
||
|
|
beam.queue_redraw()
|
||
|
|
|
||
|
|
var camera: Camera2D = main.get_node("Camera2D")
|
||
|
|
camera.position = (mothership.position + fleet.get_centroid()) * 0.5
|
||
|
|
camera.zoom = Vector2(0.7, 0.7)
|
||
|
|
|
||
|
|
get_tree().paused = true
|