EnemyArtilleryComponent is a stationary siege piece (slow drift toward the fleet, deliberately no pursuit component) that fires at the fleet centroid on a long cooldown via a standalone ArtilleryShell - telegraph ring (~1.8s, growing radius plus a filling countdown arc) -> slow visible travel -> AOE explosion via Ship.take_damage() on every player_ships node inside, same all-or-nothing shield absorption as every other damage source. The shell is independent of the enemy that fired it (added to the tree root, like EnemyProjectile/Projectile) so the shooter dying mid-flight doesn't cancel an already-telegraphed shot, and the impact point is fixed at fire time - never re-aimed at where the fleet moves to afterward. Part of the #40 conquest-mechanic breakdown.
16 lines
599 B
Text
16 lines
599 B
Text
[gd_resource type="Resource" script_class="EnemyDefinition" load_steps=3 format=3]
|
|
|
|
[ext_resource type="Script" path="res://EnemyDefinition.gd" id="1"]
|
|
[ext_resource type="PackedScene" path="res://EnemyArtilleryComponent.tscn" id="2"]
|
|
|
|
[resource]
|
|
script = ExtResource("1")
|
|
enemy_id = "artillery"
|
|
display_name = "Artillery"
|
|
max_hp = 8
|
|
speed = 60.0
|
|
acceleration = 120.0
|
|
rotation_speed = 3.0
|
|
hull_points = PackedVector2Array(0, -26, 18.4, -18.4, 26, 0, 18.4, 18.4, 0, 26, -18.4, 18.4, -26, 0, -18.4, -18.4)
|
|
glow_color = Color(1.0, 0.5, 0.2, 1)
|
|
component_scenes = Array[PackedScene]([ExtResource("2")])
|