A second suicide vessel alongside the chaser, but where the chaser simply beelines, this one is a rhythm the player can read. It drifts in from beyond lock_range at half speed, LOCKS a point, rocks 30px back and forth along the charge axis for 1.2s, draws a thin line down its trajectory for the last 300ms, and only then crosses the gap in one straight 950px/s run before coasting to a stop and starting over. The lock is what makes the wind-up worth anything: nothing re-reads the fleet once it begins, so the charge goes where the target WAS and stepping off the line works. Same bargain as EnemyBigLaserBeam. EnemyLungeComponent is a Node2D rather than a plain Node because the trajectory line has to be drawn somewhere, and top_level keeps that drawing in world space while the hull it hangs off spins to face the lock. The roaming spawner gets a 25% lancer share. It is the only place the player meets an enemy off an authored map, so without that the lancer would exist only in the setup editor. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
6 lines
189 B
Text
6 lines
189 B
Text
[gd_scene load_steps=2 format=3]
|
|
|
|
[ext_resource type="Script" path="res://enemies/EnemyLungeComponent.gd" id="1"]
|
|
|
|
[node name="EnemyLungeComponent" type="Node2D"]
|
|
script = ExtResource("1")
|