[gd_scene load_steps=9 format=3 uid="uid://b7gkxlll3b1eg"]

[ext_resource type="Script" uid="uid://c1gu44a1kkmt1" path="res://Scripts/Actors/ScriptableBulletsEmitter.cs" id="1_vgtpa"]
[ext_resource type="Script" uid="uid://c6467d6yx50qh" path="res://Scripts/Components/BulletSpawner.cs" id="2_uhbyd"]
[ext_resource type="Texture2D" uid="uid://ck8e4ngk8wy0m" path="res://Sprites/Actors/Floor_Emitter.png" id="3_g5ki3"]
[ext_resource type="Script" uid="uid://cq3hkweplldbr" path="res://Scripts/Components/Actors/GenericDamageReceiver.cs" id="4_bbtu4"]
[ext_resource type="Script" uid="uid://701a3no2cu45" path="res://Scripts/Components/Actors/EmitterActivationStateSprite.cs" id="4_uhbyd"]
[ext_resource type="Script" uid="uid://cqwvssstkrdmw" path="res://Scripts/Components/Actors/ActorResourceProvider.cs" id="6_6dpsy"]
[ext_resource type="PackedScene" uid="uid://dmumxecckh42r" path="res://Scenes/Activable/BrokenFloorEmitter.tscn" id="6_uhbyd"]

[sub_resource type="CircleShape2D" id="CircleShape2D_4awvh"]
radius = 5.0

[node name="FloorEmitter" type="Node2D"]
script = ExtResource("1_vgtpa")

[node name="BulletSpawner" type="Node2D" parent="."]
script = ExtResource("2_uhbyd")

[node name="Sprite2D" type="Sprite2D" parent="."]
texture = ExtResource("3_g5ki3")
hframes = 3
script = ExtResource("4_uhbyd")

[node name="DamageReceiver" type="Area2D" parent="." node_paths=PackedStringArray("HealthProvider")]
collision_layer = 64
collision_mask = 136
script = ExtResource("4_bbtu4")
HealthProvider = NodePath("Health")
BulletGroup = 2
Debris = ExtResource("6_uhbyd")

[node name="CollisionShape2D" type="CollisionShape2D" parent="DamageReceiver"]
position = Vector2(0, 3.865)
shape = SubResource("CircleShape2D_4awvh")

[node name="Health" type="Node2D" parent="DamageReceiver"]
script = ExtResource("6_6dpsy")
ResourceName = "Health"

[connection signal="StateChanged" from="." to="Sprite2D" method="ChangeState"]
[connection signal="StateChanged" from="." to="DamageReceiver" method="ChangeState"]
[connection signal="area_entered" from="DamageReceiver" to="DamageReceiver" method="_on_damage_hitbox_area_entered"]
