Bullet field: pierce-through and damaging, rings spaced 3 cells apart

Solid bullets were blocking the patrolling enemies, so the field now defaults to solid = false: each bullet is a plain StaticBody2D with no collision layer, plus an Area2D that only detects the player, so nothing is physically obstructed while contact still costs a heart. Ring radii changed from [5, 10, 15] to [3, 6, 9]. Damage is now applied every frame to whatever is overlapping, not only on body_entered, so standing inside a bullet keeps hurting instead of only the first touch. Also picks up the editor change that removed Walker_03.
This commit is contained in:
2026-10-07 22:38:07 +08:00
parent 35174b67ab
commit defdf202e6
4 changed files with 37 additions and 29 deletions
+1 -5
View File
@@ -217,10 +217,6 @@ position = Vector2(216, 216)
position = Vector2(306, 216)
start_direction = 1
[node name="Walker_03" parent="Level/PrefabInstances/Enemies" unique_id=1711052130 instance=ExtResource("18_walker")]
position = Vector2(90, 198)
start_direction = 1
[node name="Laser_01" parent="Level/PrefabInstances/Enemies" unique_id=1298565970 instance=ExtResource("19_laser")]
position = Vector2(187, 223)
rotation = -1.5707964
@@ -249,7 +245,7 @@ rotation = -1.5707964
length = 108.0
start_delay = 2.4
[node name="BulletField_01" parent="Level/PrefabInstances/Enemies" instance=ExtResource("20_field")]
[node name="BulletField_01" parent="Level/PrefabInstances/Enemies" unique_id=978673745 instance=ExtResource("20_field")]
position = Vector2(234, 234)
[node name="Interactables" type="Node2D" parent="Level/PrefabInstances" unique_id=769532488]