mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-27 22:41:56 +08:00
3698127345
实现草墙障碍物系统,包括以下主要变更: - 新增草墙障碍物资源、脚本和场景 - 添加障碍物状态显示UI - 扩展组件管理器支持障碍物类型 - 修改子弹系统以支持对障碍物的碰撞检测 - 调整实体碰撞层设置 - 为公鸡角色添加草墙武器 新增功能允许玩家放置可阻挡敌人的草墙障碍物,并显示其生命值状态
159 lines
4.8 KiB
Plaintext
159 lines
4.8 KiB
Plaintext
[gd_scene load_steps=17 format=3 uid="uid://cxcvc1rjvm8i2"]
|
|
|
|
[ext_resource type="Script" uid="uid://cfxrtel5gjia0" path="res://scripts/Statemachine/ItemDropped.gd" id="1_v2djl"]
|
|
[ext_resource type="Texture2D" uid="uid://bks8jmctleina" path="res://resources/items/baseball.svg" id="2_4hl42"]
|
|
|
|
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_1ishj"]
|
|
bounce = 0.5
|
|
|
|
[sub_resource type="Animation" id="Animation_5i70v"]
|
|
length = 0.001
|
|
tracks/0/type = "bezier"
|
|
tracks/0/imported = false
|
|
tracks/0/enabled = true
|
|
tracks/0/path = NodePath(".:scale:x")
|
|
tracks/0/interp = 1
|
|
tracks/0/loop_wrap = true
|
|
tracks/0/keys = {
|
|
"handle_modes": PackedInt32Array(0),
|
|
"points": PackedFloat32Array(0.5, -0.15, 0, 0.15, 0),
|
|
"times": PackedFloat32Array(0)
|
|
}
|
|
tracks/1/type = "bezier"
|
|
tracks/1/imported = false
|
|
tracks/1/enabled = true
|
|
tracks/1/path = NodePath(".:scale:y")
|
|
tracks/1/interp = 1
|
|
tracks/1/loop_wrap = true
|
|
tracks/1/keys = {
|
|
"handle_modes": PackedInt32Array(0),
|
|
"points": PackedFloat32Array(0.5, -0.15, 0, 0.15, 0),
|
|
"times": PackedFloat32Array(0)
|
|
}
|
|
tracks/2/type = "bezier"
|
|
tracks/2/imported = false
|
|
tracks/2/enabled = true
|
|
tracks/2/path = NodePath(".:modulate:a")
|
|
tracks/2/interp = 1
|
|
tracks/2/loop_wrap = true
|
|
tracks/2/keys = {
|
|
"handle_modes": PackedInt32Array(0),
|
|
"points": PackedFloat32Array(1, -0.15, 0, 0.15, 0),
|
|
"times": PackedFloat32Array(0)
|
|
}
|
|
|
|
[sub_resource type="Animation" id="Animation_l0b83"]
|
|
resource_name = "collect"
|
|
length = 0.3
|
|
tracks/0/type = "bezier"
|
|
tracks/0/imported = false
|
|
tracks/0/enabled = true
|
|
tracks/0/path = NodePath(".:scale:x")
|
|
tracks/0/interp = 1
|
|
tracks/0/loop_wrap = true
|
|
tracks/0/keys = {
|
|
"handle_modes": PackedInt32Array(0, 0),
|
|
"points": PackedFloat32Array(0.5, -0.15, 0, 0.15, 0, 2, -0.15, 0, 0.15, 0),
|
|
"times": PackedFloat32Array(0, 0.3)
|
|
}
|
|
tracks/1/type = "bezier"
|
|
tracks/1/imported = false
|
|
tracks/1/enabled = true
|
|
tracks/1/path = NodePath(".:scale:y")
|
|
tracks/1/interp = 1
|
|
tracks/1/loop_wrap = true
|
|
tracks/1/keys = {
|
|
"handle_modes": PackedInt32Array(0, 0),
|
|
"points": PackedFloat32Array(0.5, -0.15, 0, 0.15, 0, 2, -0.15, 0, 0.15, 0),
|
|
"times": PackedFloat32Array(0, 0.3)
|
|
}
|
|
tracks/2/type = "bezier"
|
|
tracks/2/imported = false
|
|
tracks/2/enabled = true
|
|
tracks/2/path = NodePath(".:modulate:a")
|
|
tracks/2/interp = 1
|
|
tracks/2/loop_wrap = true
|
|
tracks/2/keys = {
|
|
"handle_modes": PackedInt32Array(0, 0),
|
|
"points": PackedFloat32Array(1, -0.15, 0, 0.15, 0, 0, -0.15, 0, 0.15, 0),
|
|
"times": PackedFloat32Array(0, 0.3)
|
|
}
|
|
|
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_2q7p1"]
|
|
_data = {
|
|
&"RESET": SubResource("Animation_5i70v"),
|
|
&"collect": SubResource("Animation_l0b83")
|
|
}
|
|
|
|
[sub_resource type="CircleShape2D" id="CircleShape2D_7lt1c"]
|
|
radius = 14.0357
|
|
|
|
[sub_resource type="Curve" id="Curve_11h7l"]
|
|
_data = [Vector2(0, 0.5), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
|
point_count = 2
|
|
|
|
[sub_resource type="CurveTexture" id="CurveTexture_u4ger"]
|
|
curve = SubResource("Curve_11h7l")
|
|
|
|
[sub_resource type="Curve" id="Curve_h22hm"]
|
|
_limits = [-1.0, 1.0, 0.0, 1.0]
|
|
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, -1), 0.0, 0.0, 0, 0]
|
|
point_count = 2
|
|
|
|
[sub_resource type="CurveTexture" id="CurveTexture_orbge"]
|
|
curve = SubResource("Curve_h22hm")
|
|
|
|
[sub_resource type="Gradient" id="Gradient_2h3cl"]
|
|
colors = PackedColorArray(0.44, 0.44, 0.44, 1, 1, 1, 1, 1)
|
|
|
|
[sub_resource type="GradientTexture1D" id="GradientTexture1D_5p7rs"]
|
|
gradient = SubResource("Gradient_2h3cl")
|
|
|
|
[sub_resource type="Curve" id="Curve_pp2gs"]
|
|
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
|
point_count = 2
|
|
|
|
[sub_resource type="CurveTexture" id="CurveTexture_1ot48"]
|
|
curve = SubResource("Curve_pp2gs")
|
|
|
|
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_jfwfg"]
|
|
particle_flag_disable_z = true
|
|
emission_shape = 1
|
|
emission_sphere_radius = 15.0
|
|
angle_min = 1.07288e-05
|
|
angle_max = 90.0
|
|
angle_curve = SubResource("CurveTexture_orbge")
|
|
gravity = Vector3(0, 0, 0)
|
|
scale_min = 5.0
|
|
scale_max = 10.0
|
|
scale_curve = SubResource("CurveTexture_1ot48")
|
|
color_initial_ramp = SubResource("GradientTexture1D_5p7rs")
|
|
alpha_curve = SubResource("CurveTexture_u4ger")
|
|
|
|
[node name="ItemDropped" type="RigidBody2D"]
|
|
collision_layer = 512
|
|
collision_mask = 512
|
|
physics_material_override = SubResource("PhysicsMaterial_1ishj")
|
|
contact_monitor = true
|
|
max_contacts_reported = 1
|
|
script = ExtResource("1_v2djl")
|
|
metadata/_edit_vertical_guides_ = [15.0, -15.0]
|
|
|
|
[node name="texture" type="Sprite2D" parent="."]
|
|
unique_name_in_owner = true
|
|
scale = Vector2(0.5, 0.5)
|
|
texture = ExtResource("2_4hl42")
|
|
|
|
[node name="animator" type="AnimationPlayer" parent="texture"]
|
|
unique_name_in_owner = true
|
|
libraries = {
|
|
&"": SubResource("AnimationLibrary_2q7p1")
|
|
}
|
|
|
|
[node name="hitbox" type="CollisionShape2D" parent="."]
|
|
shape = SubResource("CircleShape2D_7lt1c")
|
|
|
|
[node name="particles" type="GPUParticles2D" parent="."]
|
|
amount = 50
|
|
process_material = SubResource("ParticleProcessMaterial_jfwfg")
|