[gd_scene load_steps=19 format=3 uid="uid://bg7lomiorxo2c"]

[ext_resource type="PackedScene" uid="uid://b1hjjbdwf1rtc" path="res://scenes/templates/plant_template.tscn" id="1_bikjn"]
[ext_resource type="Texture2D" uid="uid://b3tuidu8dag8u" path="res://assets/sprites/atlases/plants/sunflower.png" id="2_fwcda"]
[ext_resource type="AnimationLibrary" uid="uid://yjytiuj4u7oh" path="res://resources/animations/plants/sunflower.res" id="3_btsik"]
[ext_resource type="Script" uid="uid://b71gebny84s81" path="res://scripts/plants/PlantSunSpawner.cs" id="3_te0pl"]
[ext_resource type="PackedScene" uid="uid://bpekho7leatr5" path="res://scenes/sun.tscn" id="4_b8hls"]
[ext_resource type="Script" uid="uid://bth7gah4tn7uj" path="res://scripts/plants/behaviours/SunflowerBehaviour.cs" id="5_26je0"]
[ext_resource type="Script" uid="uid://c4jy0cnbnx33h" path="res://scripts/TimeScalableTimer.cs" id="7_rlkb7"]

[sub_resource type="Animation" id="Animation_bfx6v"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("AnimationTree:parameters/Tree/conditions/produce")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}

[sub_resource type="AnimationLibrary" id="AnimationLibrary_ek2al"]
_data = {
&"RESET": SubResource("Animation_bfx6v")
}

[sub_resource type="AnimationNodeTimeScale" id="AnimationNodeTimeScale_811ah"]

[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_lkpmx"]
animation = &"sunflower/idle"

[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_hc6hn"]
animation = &"sunflower/produce"

[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_26fia"]
advance_mode = 2

[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_d2akw"]
advance_mode = 2
advance_condition = &"produce"

[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_sww40"]
switch_mode = 2
advance_mode = 2

[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_enpal"]
states/sunflower_idle/node = SubResource("AnimationNodeAnimation_lkpmx")
states/sunflower_idle/position = Vector2(371, 100)
states/sunflower_produce/node = SubResource("AnimationNodeAnimation_hc6hn")
states/sunflower_produce/position = Vector2(624, 99)
transitions = ["Start", "sunflower_idle", SubResource("AnimationNodeStateMachineTransition_26fia"), "sunflower_idle", "sunflower_produce", SubResource("AnimationNodeStateMachineTransition_d2akw"), "sunflower_produce", "sunflower_idle", SubResource("AnimationNodeStateMachineTransition_sww40")]

[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_rlkb7"]
graph_offset = Vector2(-437, 84)
nodes/TimeScale/node = SubResource("AnimationNodeTimeScale_811ah")
nodes/TimeScale/position = Vector2(100, 140)
nodes/Tree/node = SubResource("AnimationNodeStateMachine_enpal")
nodes/Tree/position = Vector2(-160, 180)
node_connections = [&"TimeScale", 0, &"Tree", &"output", 0, &"TimeScale"]

[sub_resource type="RectangleShape2D" id="RectangleShape2D_4xs4g"]
size = Vector2(26, 48)

[node name="Sunflower" instance=ExtResource("1_bikjn")]
MaxHP = 30.0

[node name="Sprite2D" parent="." index="0"]
texture = ExtResource("2_fwcda")
hframes = 9
vframes = 2

[node name="AnimationPlayer" parent="." index="1"]
libraries = {
&"": SubResource("AnimationLibrary_ek2al"),
&"sunflower": ExtResource("3_btsik")
}

[node name="AnimationTree" parent="." index="2"]
tree_root = SubResource("AnimationNodeBlendTree_rlkb7")
parameters/TimeScale/scale = 1.0
parameters/Tree/conditions/produce = false

[node name="PlantSunSpawner" type="Node2D" parent="." index="3"]
position = Vector2(-2, 0)
script = ExtResource("3_te0pl")
_sunScene = ExtResource("4_b8hls")
_amountPerSun = 25

[node name="Behaviour" type="Node" parent="." index="4"]
script = ExtResource("5_26je0")

[node name="Timer" type="Timer" parent="Behaviour" index="0" node_paths=PackedStringArray("entity")]
wait_time = 24.25
script = ExtResource("7_rlkb7")
entity = NodePath("../..")

[node name="StartTimer" type="Timer" parent="Behaviour" index="1" node_paths=PackedStringArray("entity")]
wait_time = 12.0
one_shot = true
autostart = true
script = ExtResource("7_rlkb7")
entity = NodePath("../..")

[node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox" index="0"]
position = Vector2(0, 4)
shape = SubResource("RectangleShape2D_4xs4g")

[connection signal="timeout" from="Behaviour/Timer" to="Behaviour" method="Timeout"]
[connection signal="timeout" from="Behaviour/StartTimer" to="Behaviour" method="Timeout"]
[connection signal="timeout" from="Behaviour/StartTimer" to="Behaviour/Timer" method="start"]
