newlon/scenes/entities/plants/sunflower.tscn
2025-07-30 02:21:11 +05:00

133 lines
5.6 KiB
Text

[gd_scene load_steps=22 format=3 uid="uid://bg7lomiorxo2c"]
[ext_resource type="Script" uid="uid://dli2i6albvugt" path="res://scripts/entities/plants/RuntimePlantData.cs" id="1_yyn2e"]
[ext_resource type="Texture2D" uid="uid://b3tuidu8dag8u" path="res://assets/sprites/atlases/plants/sunflower.png" id="2_fwcda"]
[ext_resource type="Material" uid="uid://cn7ac4meka1hc" path="res://assets/GenericFlashMaterial.tres" id="2_yyn2e"]
[ext_resource type="AnimationLibrary" uid="uid://yjytiuj4u7oh" path="res://assets/animations/plants/sunflower.res" id="3_btsik"]
[ext_resource type="Script" uid="uid://b71gebny84s81" path="res://scripts/entities/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://dwlwi42smgxkb" path="res://scripts/TimeScalableAnimationTree.cs" id="5_7omaw"]
[ext_resource type="Script" uid="uid://bth7gah4tn7uj" path="res://scripts/entities/plants/behaviours/SunflowerBehaviour.cs" id="5_26je0"]
[ext_resource type="Script" uid="uid://c4jy0cnbnx33h" path="res://scripts/TimeScalableTimer.cs" id="7_rlkb7"]
[ext_resource type="Script" uid="uid://30pbgasu64aw" path="res://scripts/entities/FlashShaderController.cs" id="10_w3e3c"]
[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"]
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" type="Node2D" node_paths=PackedStringArray("_player", "_tree")]
script = ExtResource("1_yyn2e")
MaxHP = 30.0
_player = NodePath("AnimationPlayer")
_tree = NodePath("AnimationTree")
[node name="Sprite2D" type="Sprite2D" parent="."]
material = ExtResource("2_yyn2e")
texture = ExtResource("2_fwcda")
hframes = 9
vframes = 2
frame = 4
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_ek2al"),
&"sunflower": ExtResource("3_btsik")
}
[node name="AnimationTree" type="AnimationTree" parent="." node_paths=PackedStringArray("entity")]
tree_root = SubResource("AnimationNodeBlendTree_rlkb7")
anim_player = NodePath("../AnimationPlayer")
parameters/TimeScale/scale = 1.0
parameters/Tree/conditions/produce = false
script = ExtResource("5_7omaw")
entity = NodePath("..")
[node name="PlantSunSpawner" type="Node2D" parent="."]
position = Vector2(-2, 0)
script = ExtResource("3_te0pl")
_sunScene = ExtResource("4_b8hls")
_amountPerSun = 25
[node name="Behaviour" type="Node" parent="."]
script = ExtResource("5_26je0")
[node name="Timer" type="Timer" parent="Behaviour" node_paths=PackedStringArray("entity")]
wait_time = 24.25
script = ExtResource("7_rlkb7")
entity = NodePath("../..")
[node name="StartTimer" type="Timer" parent="Behaviour" node_paths=PackedStringArray("entity")]
wait_time = 12.0
one_shot = true
autostart = true
script = ExtResource("7_rlkb7")
entity = NodePath("../..")
[node name="Hitbox" type="Area2D" parent="."]
collision_layer = 2
collision_mask = 0
[node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox"]
position = Vector2(0, 4)
shape = SubResource("RectangleShape2D_4xs4g")
[node name="FlashController" type="Node" parent="."]
script = ExtResource("10_w3e3c")
shaderMaterial = ExtResource("2_yyn2e")
[connection signal="OnDamaged" from="." to="FlashController" method="DamageFlash"]
[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"]