2024-04-29 00:53:09 +00:00
|
|
|
[gd_scene load_steps=24 format=3 uid="uid://dnjtduk0hla3f"]
|
2024-04-26 01:57:07 +00:00
|
|
|
|
|
|
|
[ext_resource type="Script" path="res://entities/watcher.gd" id="1_brahc"]
|
|
|
|
[ext_resource type="PackedScene" uid="uid://bxbjfev0lhwws" path="res://behaviours/sprite_left_right.tscn" id="1_thu73"]
|
|
|
|
[ext_resource type="Texture2D" uid="uid://by6igmr52nlyi" path="res://entities/watcher_left.png" id="2_32yw7"]
|
|
|
|
[ext_resource type="Texture2D" uid="uid://c6tbab5h4osj5" path="res://entities/watcher_right.png" id="3_k8fgk"]
|
|
|
|
[ext_resource type="PackedScene" uid="uid://djcwis8ycrq85" path="res://behaviours/sampler_priority.tscn" id="4_i1htf"]
|
|
|
|
[ext_resource type="Texture2D" uid="uid://dh61knesgvjs" path="res://entities/watcher_drag_left.png" id="7_ff3vx"]
|
2024-04-29 00:53:09 +00:00
|
|
|
[ext_resource type="PackedScene" uid="uid://ccul07w0h36nu" path="res://behaviours/sacrificable.tscn" id="7_lxtqq"]
|
2024-04-26 01:57:07 +00:00
|
|
|
[ext_resource type="Texture2D" uid="uid://b6uurud5clnqr" path="res://entities/watcher_drag_right.png" id="8_5nq2n"]
|
|
|
|
[ext_resource type="PackedScene" uid="uid://rx24bppccih7" path="res://behaviours/move_physics.tscn" id="8_jy8ay"]
|
|
|
|
[ext_resource type="PackedScene" uid="uid://cm67ko1k6kn4u" path="res://behaviours/priority.tscn" id="9_wtsor"]
|
|
|
|
[ext_resource type="PackedScene" uid="uid://dijcjahkddudv" path="res://behaviours/draggable.tscn" id="10_qbgiu"]
|
|
|
|
[ext_resource type="AudioStream" uid="uid://d0feiq5s6fnux" path="res://entities/imp_drag.wav" id="11_rydo5"]
|
|
|
|
[ext_resource type="AudioStream" uid="uid://cwsg776c11xfc" path="res://entities/fall.ogg" id="12_0h21e"]
|
2024-04-29 00:53:09 +00:00
|
|
|
[ext_resource type="PackedScene" uid="uid://cml7rqvyfuagx" path="res://behaviours/move_towards.tscn" id="14_qtr50"]
|
|
|
|
[ext_resource type="PackedScene" uid="uid://ctpn4hvkhxoi3" path="res://behaviours/tracker_edible.tscn" id="15_ihnef"]
|
|
|
|
[ext_resource type="PackedScene" uid="uid://dti7l0d40hhgt" path="res://behaviours/target_picker.tscn" id="16_ch04y"]
|
2024-04-26 01:57:07 +00:00
|
|
|
|
|
|
|
[sub_resource type="CircleShape2D" id="CircleShape2D_diig7"]
|
|
|
|
radius = 32.0
|
|
|
|
|
|
|
|
[sub_resource type="Animation" id="Animation_gokbg"]
|
|
|
|
length = 0.001
|
|
|
|
tracks/0/type = "value"
|
|
|
|
tracks/0/imported = false
|
|
|
|
tracks/0/enabled = true
|
|
|
|
tracks/0/path = NodePath("Sprite:scale")
|
|
|
|
tracks/0/interp = 1
|
|
|
|
tracks/0/loop_wrap = true
|
|
|
|
tracks/0/keys = {
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
"update": 0,
|
|
|
|
"values": [Vector2(2, 2)]
|
|
|
|
}
|
|
|
|
tracks/1/type = "value"
|
|
|
|
tracks/1/imported = false
|
|
|
|
tracks/1/enabled = true
|
|
|
|
tracks/1/path = NodePath("Sprite:left_texture")
|
|
|
|
tracks/1/interp = 1
|
|
|
|
tracks/1/loop_wrap = true
|
|
|
|
tracks/1/keys = {
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
"update": 1,
|
|
|
|
"values": [ExtResource("2_32yw7")]
|
|
|
|
}
|
|
|
|
tracks/2/type = "value"
|
|
|
|
tracks/2/imported = false
|
|
|
|
tracks/2/enabled = true
|
|
|
|
tracks/2/path = NodePath("Sprite:right_texture")
|
|
|
|
tracks/2/interp = 1
|
|
|
|
tracks/2/loop_wrap = true
|
|
|
|
tracks/2/keys = {
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
"update": 1,
|
|
|
|
"values": [ExtResource("3_k8fgk")]
|
|
|
|
}
|
|
|
|
|
|
|
|
[sub_resource type="Animation" id="Animation_5yt72"]
|
|
|
|
resource_name = "drag_loop"
|
|
|
|
length = 2.0
|
|
|
|
loop_mode = 2
|
|
|
|
tracks/0/type = "value"
|
|
|
|
tracks/0/imported = false
|
|
|
|
tracks/0/enabled = true
|
|
|
|
tracks/0/path = NodePath("Sprite:scale")
|
|
|
|
tracks/0/interp = 1
|
|
|
|
tracks/0/loop_wrap = true
|
|
|
|
tracks/0/keys = {
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
"update": 0,
|
|
|
|
"values": [Vector2(2.4, 2.4)]
|
|
|
|
}
|
|
|
|
tracks/1/type = "value"
|
|
|
|
tracks/1/imported = false
|
|
|
|
tracks/1/enabled = true
|
|
|
|
tracks/1/path = NodePath("Sprite:left_texture")
|
|
|
|
tracks/1/interp = 1
|
|
|
|
tracks/1/loop_wrap = true
|
|
|
|
tracks/1/keys = {
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
"update": 1,
|
|
|
|
"values": [ExtResource("7_ff3vx")]
|
|
|
|
}
|
|
|
|
tracks/2/type = "value"
|
|
|
|
tracks/2/imported = false
|
|
|
|
tracks/2/enabled = true
|
|
|
|
tracks/2/path = NodePath("Sprite:right_texture")
|
|
|
|
tracks/2/interp = 1
|
|
|
|
tracks/2/loop_wrap = true
|
|
|
|
tracks/2/keys = {
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
"update": 1,
|
|
|
|
"values": [ExtResource("8_5nq2n")]
|
|
|
|
}
|
|
|
|
|
|
|
|
[sub_resource type="Animation" id="Animation_2igbw"]
|
|
|
|
resource_name = "drag_start"
|
|
|
|
length = 0.2
|
|
|
|
tracks/0/type = "value"
|
|
|
|
tracks/0/imported = false
|
|
|
|
tracks/0/enabled = true
|
|
|
|
tracks/0/path = NodePath("Sprite:scale")
|
|
|
|
tracks/0/interp = 1
|
|
|
|
tracks/0/loop_wrap = true
|
|
|
|
tracks/0/keys = {
|
|
|
|
"times": PackedFloat32Array(0, 0.2),
|
|
|
|
"transitions": PackedFloat32Array(1, 1),
|
|
|
|
"update": 0,
|
|
|
|
"values": [Vector2(2, 2), Vector2(2.4, 2.4)]
|
|
|
|
}
|
|
|
|
tracks/1/type = "value"
|
|
|
|
tracks/1/imported = false
|
|
|
|
tracks/1/enabled = true
|
|
|
|
tracks/1/path = NodePath("Sprite:left_texture")
|
|
|
|
tracks/1/interp = 1
|
|
|
|
tracks/1/loop_wrap = true
|
|
|
|
tracks/1/keys = {
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
"update": 1,
|
2024-04-29 00:53:09 +00:00
|
|
|
"values": [ExtResource("7_ff3vx")]
|
2024-04-26 01:57:07 +00:00
|
|
|
}
|
|
|
|
tracks/2/type = "value"
|
|
|
|
tracks/2/imported = false
|
|
|
|
tracks/2/enabled = true
|
|
|
|
tracks/2/path = NodePath("Sprite:right_texture")
|
|
|
|
tracks/2/interp = 1
|
|
|
|
tracks/2/loop_wrap = true
|
|
|
|
tracks/2/keys = {
|
|
|
|
"times": PackedFloat32Array(0),
|
|
|
|
"transitions": PackedFloat32Array(1),
|
|
|
|
"update": 1,
|
2024-04-29 00:53:09 +00:00
|
|
|
"values": [ExtResource("8_5nq2n")]
|
2024-04-26 01:57:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_yam4u"]
|
|
|
|
_data = {
|
|
|
|
"RESET": SubResource("Animation_gokbg"),
|
|
|
|
"drag_loop": SubResource("Animation_5yt72"),
|
|
|
|
"drag_start": SubResource("Animation_2igbw")
|
|
|
|
}
|
|
|
|
|
2024-04-29 00:53:09 +00:00
|
|
|
[sub_resource type="CircleShape2D" id="CircleShape2D_a0gfn"]
|
|
|
|
radius = 25.19
|
|
|
|
|
2024-04-26 01:57:07 +00:00
|
|
|
[sub_resource type="CircleShape2D" id="CircleShape2D_ywwo3"]
|
|
|
|
radius = 32.0
|
|
|
|
|
|
|
|
[node name="Watcher" type="CharacterBody2D"]
|
2024-04-29 01:20:27 +00:00
|
|
|
y_sort_enabled = true
|
2024-04-26 01:57:07 +00:00
|
|
|
collision_layer = 8
|
|
|
|
collision_mask = 14
|
|
|
|
script = ExtResource("1_brahc")
|
|
|
|
|
|
|
|
[node name="Sprite" parent="." instance=ExtResource("1_thu73")]
|
|
|
|
unique_name_in_owner = true
|
2024-04-29 01:20:27 +00:00
|
|
|
y_sort_enabled = true
|
2024-04-26 01:57:07 +00:00
|
|
|
scale = Vector2(2, 2)
|
|
|
|
texture = ExtResource("2_32yw7")
|
|
|
|
left_texture = ExtResource("2_32yw7")
|
|
|
|
right_texture = ExtResource("3_k8fgk")
|
|
|
|
|
|
|
|
[node name="Shape" type="CollisionShape2D" parent="."]
|
|
|
|
shape = SubResource("CircleShape2D_diig7")
|
|
|
|
|
|
|
|
[node name="Animator" type="AnimationPlayer" parent="."]
|
|
|
|
unique_name_in_owner = true
|
|
|
|
libraries = {
|
|
|
|
"": SubResource("AnimationLibrary_yam4u")
|
|
|
|
}
|
|
|
|
next/drag_loop = &"drag_loop"
|
|
|
|
next/drag_start = &"drag_loop"
|
|
|
|
|
2024-04-29 00:53:09 +00:00
|
|
|
[node name="Sacrificable" parent="." instance=ExtResource("7_lxtqq")]
|
|
|
|
kind = &"Watcher"
|
|
|
|
|
2024-04-26 01:57:07 +00:00
|
|
|
[node name="MovementSampler" parent="." instance=ExtResource("4_i1htf")]
|
|
|
|
|
2024-04-29 00:53:09 +00:00
|
|
|
[node name="MovementTrap" parent="." instance=ExtResource("14_qtr50")]
|
|
|
|
speed = 600.0
|
|
|
|
enabled = false
|
|
|
|
|
|
|
|
[node name="TrapPriority" parent="MovementTrap" instance=ExtResource("9_wtsor")]
|
|
|
|
alternative_priority = 45
|
|
|
|
|
|
|
|
[node name="TrackerTrap" parent="MovementTrap" instance=ExtResource("15_ihnef")]
|
|
|
|
collision_mask = 8
|
|
|
|
acceptable_diets = Array[StringName]([&"Trap"])
|
|
|
|
|
|
|
|
[node name="Shape" type="CollisionShape2D" parent="MovementTrap/TrackerTrap"]
|
|
|
|
shape = SubResource("CircleShape2D_a0gfn")
|
|
|
|
debug_color = Color(1, 0.498039, 0, 0)
|
|
|
|
|
|
|
|
[node name="TargetPicker" parent="MovementTrap/TrackerTrap" node_paths=PackedStringArray("tracker") instance=ExtResource("16_ch04y")]
|
|
|
|
tracker = NodePath("..")
|
|
|
|
|
2024-04-26 01:57:07 +00:00
|
|
|
[node name="MovementDrag" parent="." instance=ExtResource("8_jy8ay")]
|
|
|
|
position = Vector2(1, 0)
|
|
|
|
enabled = false
|
|
|
|
|
|
|
|
[node name="DragPriority" parent="MovementDrag" instance=ExtResource("9_wtsor")]
|
|
|
|
alternative_priority = 50
|
|
|
|
|
|
|
|
[node name="Draggable" parent="MovementDrag" instance=ExtResource("10_qbgiu")]
|
|
|
|
|
|
|
|
[node name="Shape" type="CollisionShape2D" parent="MovementDrag/Draggable"]
|
|
|
|
shape = SubResource("CircleShape2D_ywwo3")
|
|
|
|
debug_color = Color(1, 1, 1, 0)
|
|
|
|
|
|
|
|
[node name="DragSound" type="AudioStreamPlayer2D" parent="MovementDrag"]
|
|
|
|
stream = ExtResource("11_rydo5")
|
2024-04-29 01:33:43 +00:00
|
|
|
bus = &"DragSounds"
|
2024-04-26 01:57:07 +00:00
|
|
|
|
|
|
|
[node name="FallSound" type="AudioStreamPlayer2D" parent="MovementDrag"]
|
|
|
|
stream = ExtResource("12_0h21e")
|
2024-04-29 01:33:43 +00:00
|
|
|
bus = &"FallSounds"
|
2024-04-26 01:57:07 +00:00
|
|
|
|
2024-04-29 04:22:15 +00:00
|
|
|
[connection signal="sacrificed" from="Sacrificable" to="." method="queue_free"]
|
2024-04-29 00:53:09 +00:00
|
|
|
[connection signal="changed_target" from="MovementTrap" to="MovementTrap/TrapPriority" method="priority_conditional"]
|
|
|
|
[connection signal="move" from="MovementTrap" to="." method="_on_move"]
|
2024-04-29 01:33:43 +00:00
|
|
|
[connection signal="move_disabled" from="MovementTrap" to="." method="_on_freed"]
|
|
|
|
[connection signal="move_enabled" from="MovementTrap" to="." method="_on_trapped"]
|
2024-04-29 00:53:09 +00:00
|
|
|
[connection signal="area_entered" from="MovementTrap/TrackerTrap" to="MovementTrap/TrackerTrap" method="check_diet_then_track"]
|
|
|
|
[connection signal="area_exited" from="MovementTrap/TrackerTrap" to="MovementTrap/TrackerTrap" method="untrack"]
|
|
|
|
[connection signal="tracked" from="MovementTrap/TrackerTrap" to="MovementTrap/TrackerTrap/TargetPicker" method="sample_target_if_null" unbinds=1]
|
|
|
|
[connection signal="untracked" from="MovementTrap/TrackerTrap" to="MovementTrap/TrackerTrap/TargetPicker" method="clear_if_target"]
|
|
|
|
[connection signal="target_changed" from="MovementTrap/TrackerTrap/TargetPicker" to="MovementTrap" method="set_target" unbinds=1]
|
|
|
|
[connection signal="target_changed" from="MovementTrap/TrackerTrap/TargetPicker" to="MovementTrap/TrackerTrap/TargetPicker" method="sample_target_if_null" unbinds=2]
|
2024-04-26 01:57:07 +00:00
|
|
|
[connection signal="dragged" from="MovementDrag" to="." method="_on_dragged"]
|
|
|
|
[connection signal="dragged" from="MovementDrag" to="MovementDrag/DragPriority" method="priority_alternative" unbinds=1]
|
|
|
|
[connection signal="dragged" from="MovementDrag" to="MovementDrag/DragSound" method="play" unbinds=1]
|
|
|
|
[connection signal="fallen" from="MovementDrag" to="." method="_on_fallen"]
|
|
|
|
[connection signal="fallen" from="MovementDrag" to="MovementDrag/DragPriority" method="priority_default"]
|
|
|
|
[connection signal="fallen" from="MovementDrag" to="MovementDrag/FallSound" method="play"]
|
|
|
|
[connection signal="move" from="MovementDrag" to="." method="_on_move"]
|
|
|
|
[connection signal="dragged" from="MovementDrag/Draggable" to="MovementDrag" method="drag"]
|
|
|
|
[connection signal="dropped" from="MovementDrag/Draggable" to="MovementDrag" method="drop"]
|