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

[ext_resource type="Script" uid="uid://cx0ak5ctcg0mi" path="res://Scripts/Classes/Entities/Enemies/Icicle.gd" id="1_dnx1i"]
[ext_resource type="Texture2D" uid="uid://rbln0ee0fknc" path="res://Assets/Sprites/Enemies/Icicle.png" id="2_1h8cl"]
[ext_resource type="Script" uid="uid://chj8hu207lrh" path="res://Scripts/Classes/Components/EnemyPlayerDetection.gd" id="2_5y583"]
[ext_resource type="Script" uid="uid://364rywt44hy6" path="res://Scripts/Classes/UI/PackSprite.gd" id="3_dnx1i"]

[sub_resource type="RectangleShape2D" id="RectangleShape2D_dnx1i"]
size = Vector2(10, 8)

[sub_resource type="Animation" id="Animation_5y583"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite:offset")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(0, 0)]
}

[sub_resource type="Animation" id="Animation_dnx1i"]
resource_name = "Shake"
length = 0.2
loop_mode = 1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite:offset")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.10000001),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector2(-1, 0), Vector2(1, 0)]
}

[sub_resource type="AnimationLibrary" id="AnimationLibrary_2sios"]
_data = {
&"RESET": SubResource("Animation_5y583"),
&"Shake": SubResource("Animation_dnx1i")
}

[node name="Icicle" type="CharacterBody2D"]
collision_layer = 0
collision_mask = 55
script = ExtResource("1_dnx1i")
metadata/_custom_type_script = "uid://bpydbpyjk1mt4"

[node name="EnemyPlayerDetection" type="Node" parent="." node_paths=PackedStringArray("hitbox")]
script = ExtResource("2_5y583")
hitbox = NodePath("../Hitbox")
metadata/_custom_type_script = "uid://chj8hu207lrh"

[node name="Sprite" type="Sprite2D" parent="."]
position = Vector2(0, -8)
texture = ExtResource("2_1h8cl")
script = ExtResource("3_dnx1i")
metadata/_custom_type_script = "uid://364rywt44hy6"

[node name="Collision" type="CollisionShape2D" parent="."]
visible = false
position = Vector2(0, -12)
shape = SubResource("RectangleShape2D_dnx1i")

[node name="Hitbox" type="Area2D" parent="."]
visible = false

[node name="Shape" type="CollisionShape2D" parent="Hitbox"]
position = Vector2(0, -6)
shape = SubResource("RectangleShape2D_dnx1i")

[node name="VisibleOnScreenEnabler2D" type="VisibleOnScreenEnabler2D" parent="."]
self_modulate = Color(1, 1, 1, 0)
position = Vector2(0, -8)

[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_2sios")
}

[connection signal="killed" from="." to="." method="destroy" unbinds=1]
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="destroy" unbinds=1]
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="damage_player"]
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="destroy" unbinds=1]
