250 lines
7.2 KiB
Text
250 lines
7.2 KiB
Text
|
[gd_scene load_steps=20 format=3 uid="uid://bsjy4oejfrg81"]
|
||
|
|
||
|
[ext_resource type="Texture2D" uid="uid://d4d34das0e3j0" path="res://assets/graphics/monsters/bamboo/idle/0.png" id="1_em175"]
|
||
|
[ext_resource type="Texture2D" uid="uid://l0bk7j8xiqur" path="res://assets/graphics/monsters/bamboo/idle/1.png" id="2_i1h6v"]
|
||
|
[ext_resource type="Texture2D" uid="uid://bwe7pi6shcc2x" path="res://assets/graphics/monsters/bamboo/attack/0.png" id="2_tihvn"]
|
||
|
[ext_resource type="Texture2D" uid="uid://damt0mr2bvcjv" path="res://assets/graphics/monsters/bamboo/idle/2.png" id="3_5ekod"]
|
||
|
[ext_resource type="Texture2D" uid="uid://b11yb3x6h5oas" path="res://assets/graphics/monsters/bamboo/idle/3.png" id="4_0fhpn"]
|
||
|
[ext_resource type="Script" path="res://code/bamboo.gd" id="5_ib85v"]
|
||
|
[ext_resource type="Texture2D" uid="uid://q8yev438ec6r" path="res://assets/graphics/monsters/bamboo/move/0.png" id="7_8n247"]
|
||
|
[ext_resource type="Texture2D" uid="uid://dqr075ilm3tu8" path="res://assets/graphics/monsters/bamboo/move/1.png" id="8_c5akp"]
|
||
|
[ext_resource type="Texture2D" uid="uid://hcm2s3v12pkw" path="res://assets/graphics/monsters/bamboo/move/2.png" id="9_t18yx"]
|
||
|
[ext_resource type="Texture2D" uid="uid://dqa5hvprf3kdp" path="res://assets/graphics/monsters/bamboo/move/3.png" id="10_gsrg3"]
|
||
|
[ext_resource type="PackedScene" uid="uid://dxwjan054vgw0" path="res://scenes/notice.tscn" id="11_d502u"]
|
||
|
[ext_resource type="PackedScene" uid="uid://c1i0nirxfagfh" path="res://scenes/attack.tscn" id="12_27c4n"]
|
||
|
|
||
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_iyhjt"]
|
||
|
size = Vector2(24, 50)
|
||
|
|
||
|
[sub_resource type="CircleShape2D" id="CircleShape2D_wx6w8"]
|
||
|
radius = 300.0
|
||
|
|
||
|
[sub_resource type="CircleShape2D" id="CircleShape2D_crbjt"]
|
||
|
radius = 40.0
|
||
|
|
||
|
[sub_resource type="SpriteFrames" id="SpriteFrames_2w0pn"]
|
||
|
animations = [{
|
||
|
"frames": [{
|
||
|
"duration": 1.0,
|
||
|
"texture": ExtResource("2_tihvn")
|
||
|
}],
|
||
|
"loop": true,
|
||
|
"name": &"attack",
|
||
|
"speed": 7.0
|
||
|
}, {
|
||
|
"frames": [{
|
||
|
"duration": 1.0,
|
||
|
"texture": ExtResource("1_em175")
|
||
|
}, {
|
||
|
"duration": 1.0,
|
||
|
"texture": ExtResource("2_i1h6v")
|
||
|
}, {
|
||
|
"duration": 1.0,
|
||
|
"texture": ExtResource("3_5ekod")
|
||
|
}, {
|
||
|
"duration": 1.0,
|
||
|
"texture": ExtResource("4_0fhpn")
|
||
|
}],
|
||
|
"loop": true,
|
||
|
"name": &"idle",
|
||
|
"speed": 7.0
|
||
|
}, {
|
||
|
"frames": [{
|
||
|
"duration": 1.0,
|
||
|
"texture": ExtResource("7_8n247")
|
||
|
}, {
|
||
|
"duration": 1.0,
|
||
|
"texture": ExtResource("8_c5akp")
|
||
|
}, {
|
||
|
"duration": 1.0,
|
||
|
"texture": ExtResource("9_t18yx")
|
||
|
}, {
|
||
|
"duration": 1.0,
|
||
|
"texture": ExtResource("10_gsrg3")
|
||
|
}],
|
||
|
"loop": true,
|
||
|
"name": &"move",
|
||
|
"speed": 7.0
|
||
|
}]
|
||
|
|
||
|
[sub_resource type="Animation" id="Animation_lrur3"]
|
||
|
length = 0.001
|
||
|
tracks/0/type = "value"
|
||
|
tracks/0/imported = false
|
||
|
tracks/0/enabled = true
|
||
|
tracks/0/path = NodePath("CollisionShape2D:disabled")
|
||
|
tracks/0/interp = 1
|
||
|
tracks/0/loop_wrap = true
|
||
|
tracks/0/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [false]
|
||
|
}
|
||
|
tracks/1/type = "value"
|
||
|
tracks/1/imported = false
|
||
|
tracks/1/enabled = true
|
||
|
tracks/1/path = NodePath(".:visible")
|
||
|
tracks/1/interp = 1
|
||
|
tracks/1/loop_wrap = true
|
||
|
tracks/1/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [true]
|
||
|
}
|
||
|
tracks/2/type = "value"
|
||
|
tracks/2/imported = false
|
||
|
tracks/2/enabled = true
|
||
|
tracks/2/path = NodePath("Attack:monitoring")
|
||
|
tracks/2/interp = 1
|
||
|
tracks/2/loop_wrap = true
|
||
|
tracks/2/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [true]
|
||
|
}
|
||
|
tracks/3/type = "value"
|
||
|
tracks/3/imported = false
|
||
|
tracks/3/enabled = true
|
||
|
tracks/3/path = NodePath("Notice:monitoring")
|
||
|
tracks/3/interp = 1
|
||
|
tracks/3/loop_wrap = true
|
||
|
tracks/3/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [true]
|
||
|
}
|
||
|
tracks/4/type = "value"
|
||
|
tracks/4/imported = false
|
||
|
tracks/4/enabled = true
|
||
|
tracks/4/path = NodePath(".:collision_mask")
|
||
|
tracks/4/interp = 1
|
||
|
tracks/4/loop_wrap = true
|
||
|
tracks/4/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [6]
|
||
|
}
|
||
|
|
||
|
[sub_resource type="Animation" id="Animation_3xlxe"]
|
||
|
resource_name = "death"
|
||
|
tracks/0/type = "value"
|
||
|
tracks/0/imported = false
|
||
|
tracks/0/enabled = true
|
||
|
tracks/0/path = NodePath("CollisionShape2D:disabled")
|
||
|
tracks/0/interp = 1
|
||
|
tracks/0/loop_wrap = true
|
||
|
tracks/0/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [true]
|
||
|
}
|
||
|
tracks/1/type = "value"
|
||
|
tracks/1/imported = false
|
||
|
tracks/1/enabled = true
|
||
|
tracks/1/path = NodePath(".:visible")
|
||
|
tracks/1/interp = 1
|
||
|
tracks/1/loop_wrap = true
|
||
|
tracks/1/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [false]
|
||
|
}
|
||
|
tracks/2/type = "value"
|
||
|
tracks/2/imported = false
|
||
|
tracks/2/enabled = true
|
||
|
tracks/2/path = NodePath("Attack:monitoring")
|
||
|
tracks/2/interp = 1
|
||
|
tracks/2/loop_wrap = true
|
||
|
tracks/2/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [false]
|
||
|
}
|
||
|
tracks/3/type = "value"
|
||
|
tracks/3/imported = false
|
||
|
tracks/3/enabled = true
|
||
|
tracks/3/path = NodePath("Notice:monitoring")
|
||
|
tracks/3/interp = 1
|
||
|
tracks/3/loop_wrap = true
|
||
|
tracks/3/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [false]
|
||
|
}
|
||
|
tracks/4/type = "value"
|
||
|
tracks/4/imported = false
|
||
|
tracks/4/enabled = true
|
||
|
tracks/4/path = NodePath(".:collision_mask")
|
||
|
tracks/4/interp = 1
|
||
|
tracks/4/loop_wrap = true
|
||
|
tracks/4/keys = {
|
||
|
"times": PackedFloat32Array(0),
|
||
|
"transitions": PackedFloat32Array(1),
|
||
|
"update": 1,
|
||
|
"values": [0]
|
||
|
}
|
||
|
|
||
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_ftwl3"]
|
||
|
_data = {
|
||
|
"RESET": SubResource("Animation_lrur3"),
|
||
|
"death": SubResource("Animation_3xlxe")
|
||
|
}
|
||
|
|
||
|
[node name="Bamboo" type="CharacterBody2D"]
|
||
|
z_index = 5
|
||
|
y_sort_enabled = true
|
||
|
position = Vector2(0, -33)
|
||
|
collision_layer = 4
|
||
|
collision_mask = 6
|
||
|
script = ExtResource("5_ib85v")
|
||
|
health = 40
|
||
|
|
||
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||
|
position = Vector2(0, 2)
|
||
|
shape = SubResource("RectangleShape2D_iyhjt")
|
||
|
|
||
|
[node name="Notice" parent="." instance=ExtResource("11_d502u")]
|
||
|
position = Vector2(0, 7)
|
||
|
|
||
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="Notice"]
|
||
|
shape = SubResource("CircleShape2D_wx6w8")
|
||
|
|
||
|
[node name="Attack" parent="." instance=ExtResource("12_27c4n")]
|
||
|
position = Vector2(0, 5)
|
||
|
|
||
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="Attack"]
|
||
|
shape = SubResource("CircleShape2D_crbjt")
|
||
|
|
||
|
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||
|
sprite_frames = SubResource("SpriteFrames_2w0pn")
|
||
|
animation = &"idle"
|
||
|
autoplay = "idle"
|
||
|
|
||
|
[node name="AttackTimer" type="Timer" parent="."]
|
||
|
|
||
|
[node name="KnockbackTimer" type="Timer" parent="."]
|
||
|
wait_time = 0.5
|
||
|
one_shot = true
|
||
|
|
||
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||
|
libraries = {
|
||
|
"": SubResource("AnimationLibrary_ftwl3")
|
||
|
}
|
||
|
|
||
|
[connection signal="death" from="." to="." method="_on_death"]
|
||
|
[connection signal="body_entered" from="Notice" to="." method="_on_notice_body_entered"]
|
||
|
[connection signal="body_exited" from="Notice" to="." method="_on_notice_body_exited"]
|
||
|
[connection signal="body_entered" from="Attack" to="." method="_on_attack_body_entered"]
|
||
|
[connection signal="body_exited" from="Attack" to="." method="_on_attack_body_exited"]
|
||
|
[connection signal="timeout" from="AttackTimer" to="." method="_on_attack_timer_timeout"]
|
||
|
[connection signal="timeout" from="KnockbackTimer" to="." method="_on_knockback_timer_timeout"]
|