406 lines
11 KiB
Plaintext
406 lines
11 KiB
Plaintext
[gd_scene load_steps=11 format=3 uid="uid://c5fhe3tulhlco"]
|
|
|
|
[ext_resource type="Script" path="res://demo/props/dummy.gd" id="1_kqftw"]
|
|
[ext_resource type="Texture2D" uid="uid://cltutcxjx8jnl" path="res://demo/assets/dummy.png" id="1_vdhcl"]
|
|
[ext_resource type="Texture2D" uid="uid://dwhhxj5557qrb" path="res://demo/assets/shadow.png" id="2_535g7"]
|
|
[ext_resource type="Script" path="res://demo/agents/scripts/hurtbox.gd" id="4_pkfnd"]
|
|
[ext_resource type="Script" path="res://demo/agents/scripts/health.gd" id="5_8qcls"]
|
|
|
|
[sub_resource type="Animation" id="Animation_1o3gy"]
|
|
length = 0.001
|
|
tracks/0/type = "value"
|
|
tracks/0/imported = false
|
|
tracks/0/enabled = true
|
|
tracks/0/path = NodePath("Root/Rig:position")
|
|
tracks/0/interp = 1
|
|
tracks/0/loop_wrap = true
|
|
tracks/0/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(0, 0)]
|
|
}
|
|
tracks/1/type = "value"
|
|
tracks/1/imported = false
|
|
tracks/1/enabled = true
|
|
tracks/1/path = NodePath("Root/Rig:rotation")
|
|
tracks/1/interp = 1
|
|
tracks/1/loop_wrap = true
|
|
tracks/1/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [0.0]
|
|
}
|
|
tracks/2/type = "value"
|
|
tracks/2/imported = false
|
|
tracks/2/enabled = true
|
|
tracks/2/path = NodePath("Root/Rig:scale")
|
|
tracks/2/interp = 1
|
|
tracks/2/loop_wrap = true
|
|
tracks/2/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(1, 1)]
|
|
}
|
|
tracks/3/type = "value"
|
|
tracks/3/imported = false
|
|
tracks/3/enabled = true
|
|
tracks/3/path = NodePath("Root/Rig/Stick:position")
|
|
tracks/3/interp = 1
|
|
tracks/3/loop_wrap = true
|
|
tracks/3/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(0, -1)]
|
|
}
|
|
tracks/4/type = "value"
|
|
tracks/4/imported = false
|
|
tracks/4/enabled = true
|
|
tracks/4/path = NodePath("Root/Rig/Stick:rotation")
|
|
tracks/4/interp = 1
|
|
tracks/4/loop_wrap = true
|
|
tracks/4/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [0.0]
|
|
}
|
|
tracks/5/type = "value"
|
|
tracks/5/imported = false
|
|
tracks/5/enabled = true
|
|
tracks/5/path = NodePath("Root/Rig/Stick:scale")
|
|
tracks/5/interp = 1
|
|
tracks/5/loop_wrap = true
|
|
tracks/5/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(1, 1)]
|
|
}
|
|
tracks/6/type = "value"
|
|
tracks/6/imported = false
|
|
tracks/6/enabled = true
|
|
tracks/6/path = NodePath("Root/Rig/Stick/Body:position")
|
|
tracks/6/interp = 1
|
|
tracks/6/loop_wrap = true
|
|
tracks/6/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(0, -49)]
|
|
}
|
|
tracks/7/type = "value"
|
|
tracks/7/imported = false
|
|
tracks/7/enabled = true
|
|
tracks/7/path = NodePath("Root/Rig/Stick/Body:rotation")
|
|
tracks/7/interp = 1
|
|
tracks/7/loop_wrap = true
|
|
tracks/7/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [0.0]
|
|
}
|
|
tracks/8/type = "value"
|
|
tracks/8/imported = false
|
|
tracks/8/enabled = true
|
|
tracks/8/path = NodePath("Root/Rig/Stick/Body:scale")
|
|
tracks/8/interp = 1
|
|
tracks/8/loop_wrap = true
|
|
tracks/8/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(1, 1)]
|
|
}
|
|
|
|
[sub_resource type="Animation" id="Animation_3r20x"]
|
|
resource_name = "hurt"
|
|
length = 0.25
|
|
step = 0.05
|
|
tracks/0/type = "value"
|
|
tracks/0/imported = false
|
|
tracks/0/enabled = true
|
|
tracks/0/path = NodePath("Root/Rig:position")
|
|
tracks/0/interp = 1
|
|
tracks/0/loop_wrap = true
|
|
tracks/0/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(0, 0)]
|
|
}
|
|
tracks/1/type = "value"
|
|
tracks/1/imported = false
|
|
tracks/1/enabled = true
|
|
tracks/1/path = NodePath("Root/Rig:rotation")
|
|
tracks/1/interp = 1
|
|
tracks/1/loop_wrap = true
|
|
tracks/1/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [0.0]
|
|
}
|
|
tracks/2/type = "value"
|
|
tracks/2/imported = false
|
|
tracks/2/enabled = true
|
|
tracks/2/path = NodePath("Root/Rig:scale")
|
|
tracks/2/interp = 1
|
|
tracks/2/loop_wrap = true
|
|
tracks/2/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(1, 1)]
|
|
}
|
|
tracks/3/type = "value"
|
|
tracks/3/imported = false
|
|
tracks/3/enabled = true
|
|
tracks/3/path = NodePath("Root/Rig/Stick:position")
|
|
tracks/3/interp = 1
|
|
tracks/3/loop_wrap = true
|
|
tracks/3/keys = {
|
|
"times": PackedFloat32Array(0, 0.1),
|
|
"transitions": PackedFloat32Array(1, 1),
|
|
"update": 0,
|
|
"values": [Vector2(0, -1), Vector2(0, -1)]
|
|
}
|
|
tracks/4/type = "value"
|
|
tracks/4/imported = false
|
|
tracks/4/enabled = true
|
|
tracks/4/path = NodePath("Root/Rig/Stick:rotation")
|
|
tracks/4/interp = 1
|
|
tracks/4/loop_wrap = true
|
|
tracks/4/keys = {
|
|
"times": PackedFloat32Array(0, 0.1),
|
|
"transitions": PackedFloat32Array(1, 1),
|
|
"update": 0,
|
|
"values": [0.0, -0.273996]
|
|
}
|
|
tracks/5/type = "value"
|
|
tracks/5/imported = false
|
|
tracks/5/enabled = true
|
|
tracks/5/path = NodePath("Root/Rig/Stick:scale")
|
|
tracks/5/interp = 1
|
|
tracks/5/loop_wrap = true
|
|
tracks/5/keys = {
|
|
"times": PackedFloat32Array(0, 0.1),
|
|
"transitions": PackedFloat32Array(1, 1),
|
|
"update": 0,
|
|
"values": [Vector2(1, 1), Vector2(1, 1)]
|
|
}
|
|
tracks/6/type = "value"
|
|
tracks/6/imported = false
|
|
tracks/6/enabled = true
|
|
tracks/6/path = NodePath("Root/Rig/Stick/Body:position")
|
|
tracks/6/interp = 1
|
|
tracks/6/loop_wrap = true
|
|
tracks/6/keys = {
|
|
"times": PackedFloat32Array(0, 0.1, 0.15, 0.2),
|
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
|
"update": 0,
|
|
"values": [Vector2(0, -49), Vector2(0, -49), Vector2(0, -49), Vector2(0, -49)]
|
|
}
|
|
tracks/7/type = "value"
|
|
tracks/7/imported = false
|
|
tracks/7/enabled = true
|
|
tracks/7/path = NodePath("Root/Rig/Stick/Body:rotation")
|
|
tracks/7/interp = 1
|
|
tracks/7/loop_wrap = true
|
|
tracks/7/keys = {
|
|
"times": PackedFloat32Array(0, 0.1, 0.15, 0.2),
|
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
|
"update": 0,
|
|
"values": [0.0, -0.524778, -0.267304, -0.377565]
|
|
}
|
|
tracks/8/type = "value"
|
|
tracks/8/imported = false
|
|
tracks/8/enabled = true
|
|
tracks/8/path = NodePath("Root/Rig/Stick/Body:scale")
|
|
tracks/8/interp = 1
|
|
tracks/8/loop_wrap = true
|
|
tracks/8/keys = {
|
|
"times": PackedFloat32Array(0, 0.1, 0.15, 0.2),
|
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
|
"update": 0,
|
|
"values": [Vector2(1, 1), Vector2(0.9, 1.1), Vector2(0.9, 1.1), Vector2(0.9, 1.1)]
|
|
}
|
|
|
|
[sub_resource type="Animation" id="Animation_sf5ej"]
|
|
resource_name = "idle"
|
|
length = 1.2
|
|
loop_mode = 1
|
|
tracks/0/type = "value"
|
|
tracks/0/imported = false
|
|
tracks/0/enabled = true
|
|
tracks/0/path = NodePath("Root/Rig:position")
|
|
tracks/0/interp = 1
|
|
tracks/0/loop_wrap = true
|
|
tracks/0/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(0, 0)]
|
|
}
|
|
tracks/1/type = "value"
|
|
tracks/1/imported = false
|
|
tracks/1/enabled = true
|
|
tracks/1/path = NodePath("Root/Rig:rotation")
|
|
tracks/1/interp = 1
|
|
tracks/1/loop_wrap = true
|
|
tracks/1/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [0.0]
|
|
}
|
|
tracks/2/type = "value"
|
|
tracks/2/imported = false
|
|
tracks/2/enabled = true
|
|
tracks/2/path = NodePath("Root/Rig:scale")
|
|
tracks/2/interp = 1
|
|
tracks/2/loop_wrap = true
|
|
tracks/2/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(1, 1)]
|
|
}
|
|
tracks/3/type = "value"
|
|
tracks/3/imported = false
|
|
tracks/3/enabled = true
|
|
tracks/3/path = NodePath("Root/Rig/Stick:position")
|
|
tracks/3/interp = 1
|
|
tracks/3/loop_wrap = true
|
|
tracks/3/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(0, -1)]
|
|
}
|
|
tracks/4/type = "value"
|
|
tracks/4/imported = false
|
|
tracks/4/enabled = true
|
|
tracks/4/path = NodePath("Root/Rig/Stick:rotation")
|
|
tracks/4/interp = 1
|
|
tracks/4/loop_wrap = true
|
|
tracks/4/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [0.0]
|
|
}
|
|
tracks/5/type = "value"
|
|
tracks/5/imported = false
|
|
tracks/5/enabled = true
|
|
tracks/5/path = NodePath("Root/Rig/Stick:scale")
|
|
tracks/5/interp = 1
|
|
tracks/5/loop_wrap = true
|
|
tracks/5/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 0,
|
|
"values": [Vector2(1, 1)]
|
|
}
|
|
tracks/6/type = "value"
|
|
tracks/6/imported = false
|
|
tracks/6/enabled = true
|
|
tracks/6/path = NodePath("Root/Rig/Stick/Body:position")
|
|
tracks/6/interp = 1
|
|
tracks/6/loop_wrap = true
|
|
tracks/6/keys = {
|
|
"times": PackedFloat32Array(0, 0.3, 0.6, 0.9, 1.2),
|
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
|
"update": 0,
|
|
"values": [Vector2(0, -49), Vector2(0, -49), Vector2(0, -49), Vector2(0, -49), Vector2(0, -49)]
|
|
}
|
|
tracks/7/type = "value"
|
|
tracks/7/imported = false
|
|
tracks/7/enabled = true
|
|
tracks/7/path = NodePath("Root/Rig/Stick/Body:rotation")
|
|
tracks/7/interp = 1
|
|
tracks/7/loop_wrap = true
|
|
tracks/7/keys = {
|
|
"times": PackedFloat32Array(0, 0.3, 0.6, 0.9, 1.2),
|
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
|
"update": 0,
|
|
"values": [-0.0523599, 0.0, 0.0523599, 0.0, -0.0523599]
|
|
}
|
|
tracks/8/type = "value"
|
|
tracks/8/imported = false
|
|
tracks/8/enabled = true
|
|
tracks/8/path = NodePath("Root/Rig/Stick/Body:scale")
|
|
tracks/8/interp = 1
|
|
tracks/8/loop_wrap = true
|
|
tracks/8/keys = {
|
|
"times": PackedFloat32Array(0, 0.3, 0.6, 0.9, 1.2),
|
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
|
"update": 0,
|
|
"values": [Vector2(0.95, 1.05), Vector2(1.05, 0.95), Vector2(0.95, 1.05), Vector2(1.05, 0.95), Vector2(0.95, 1.05)]
|
|
}
|
|
|
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_blnjx"]
|
|
_data = {
|
|
"RESET": SubResource("Animation_1o3gy"),
|
|
"hurt": SubResource("Animation_3r20x"),
|
|
"idle": SubResource("Animation_sf5ej")
|
|
}
|
|
|
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_pknym"]
|
|
size = Vector2(80, 35)
|
|
|
|
[node name="Dummy" type="CharacterBody2D" groups=["player"]]
|
|
script = ExtResource("1_kqftw")
|
|
|
|
[node name="Root" type="Node2D" parent="."]
|
|
metadata/_edit_lock_ = true
|
|
|
|
[node name="Rig" type="Node2D" parent="Root"]
|
|
|
|
[node name="Shadow" type="Sprite2D" parent="Root/Rig"]
|
|
modulate = Color(1, 1, 1, 0.290196)
|
|
texture = ExtResource("2_535g7")
|
|
|
|
[node name="Stick" type="Sprite2D" parent="Root/Rig"]
|
|
position = Vector2(0, -1)
|
|
texture = ExtResource("1_vdhcl")
|
|
offset = Vector2(-1, -28)
|
|
region_enabled = true
|
|
region_rect = Rect2(100.613, 0, 22.3875, 64.0292)
|
|
|
|
[node name="Body" type="Sprite2D" parent="Root/Rig/Stick"]
|
|
position = Vector2(0, -49)
|
|
texture = ExtResource("1_vdhcl")
|
|
offset = Vector2(-1, -56)
|
|
region_enabled = true
|
|
region_rect = Rect2(0, 0, 99.6683, 136)
|
|
|
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
|
libraries = {
|
|
"": SubResource("AnimationLibrary_blnjx")
|
|
}
|
|
autoplay = "idle"
|
|
next/hurt = &"idle"
|
|
blend_times = [&"idle", &"hurt", 0.05, &"hurt", &"idle", 0.3]
|
|
|
|
[node name="Hurtbox" type="Area2D" parent="." node_paths=PackedStringArray("health")]
|
|
collision_layer = 4
|
|
collision_mask = 0
|
|
script = ExtResource("4_pkfnd")
|
|
health = NodePath("../Health")
|
|
|
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="Hurtbox"]
|
|
shape = SubResource("RectangleShape2D_pknym")
|
|
debug_color = Color(0.466325, 0.590206, 0.107862, 0.42)
|
|
metadata/_edit_lock_ = true
|
|
|
|
[node name="Health" type="Node" parent="."]
|
|
script = ExtResource("5_8qcls")
|
|
max_health = 1e+07
|
|
|
|
[connection signal="damaged" from="Health" to="." method="_on_health_damaged"]
|