1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-06-11 14:17:13 +08:00

feat(子弹): 为多种子弹添加motionType属性并优化场景文件

为Wuwei、FireScan、Parrier等子弹组件添加motionType属性,用于控制子弹运动类型
同时清理了各场景文件中冗余的load_steps声明,并统一了节点唯一ID格式
This commit is contained in:
2026-04-30 06:49:18 +08:00
parent 6afc97ba10
commit 550718c742
10 changed files with 70 additions and 73 deletions
+1 -1
View File
@@ -81,7 +81,7 @@ size = Vector2(10, 100)
[node name="FireScan" unique_id=1266932369 instance=ExtResource("1_cqre5")]
displayName = "雪葬"
motionType = 2
motionType = 5
penerate = 1.0
autoSpawnAnimation = true
freeAfterSpawn = true
+4 -3
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=4 format=3 uid="uid://dumdbryl6i3ph"]
[gd_scene format=3 uid="uid://dumdbryl6i3ph"]
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_i8ntk"]
[ext_resource type="Script" uid="uid://ccmahaw065xaj" path="res://scripts/Contents/Bullets/HJMA.gd" id="2_ml2df"]
@@ -6,10 +6,11 @@
[sub_resource type="RectangleShape2D" id="RectangleShape2D_i8ntk"]
size = Vector2(200, 200)
[node name="HJMA" instance=ExtResource("1_i8ntk")]
[node name="HJMA" unique_id=882862607 instance=ExtResource("1_i8ntk")]
script = ExtResource("2_ml2df")
motionType = 0
penerate = 1.0
lifeTime = 50.0
[node name="hitbox" parent="." index="1"]
[node name="hitbox" parent="." index="1" unique_id=175349408]
shape = SubResource("RectangleShape2D_i8ntk")
+11 -12
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=18 format=3 uid="uid://8gjjfju6p3fh"]
[gd_scene format=3 uid="uid://8gjjfju6p3fh"]
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_pnxoq"]
[ext_resource type="Script" uid="uid://b74jed1hoi0r6" path="res://scripts/Contents/Bullets/BigLaser.gd" id="2_nk2p8"]
@@ -206,17 +206,18 @@ _data = {
radius = 40.0
height = 2000.0
[node name="LaserSummoner" instance=ExtResource("1_pnxoq")]
[node name="LaserSummoner" unique_id=847972068 instance=ExtResource("1_pnxoq")]
script = ExtResource("2_nk2p8")
motionType = 2
penerate = 1.0
autoSpawnAnimation = true
autoDestroyOnHitMap = false
freeAfterSpawn = true
[node name="texture" parent="." index="0"]
[node name="texture" parent="." index="0" unique_id=162977358]
sprite_frames = SubResource("SpriteFrames_yip5k")
[node name="rect" type="ColorRect" parent="texture" index="0"]
[node name="rect" type="ColorRect" parent="texture" index="0" unique_id=1359079767]
material = SubResource("ShaderMaterial_b2oy8")
offset_left = 233.0
offset_right = 333.0
@@ -224,30 +225,28 @@ offset_bottom = 2000.0
rotation = -1.5708
scale = Vector2(1e-05, 1)
[node name="particles" type="GPUParticles2D" parent="texture/rect" index="0"]
[node name="particles" type="GPUParticles2D" parent="texture/rect" index="0" unique_id=895619775]
position = Vector2(50, 1000)
amount = 400
lifetime = 0.25
visibility_rect = Rect2(-100, -1000, 200, 2000)
process_material = SubResource("ParticleProcessMaterial_m7jvq")
[node name="launcher" type="Polygon2D" parent="texture/rect" index="1"]
[node name="launcher" type="Polygon2D" parent="texture/rect" index="1" unique_id=1254071384]
position = Vector2(50, -21)
rotation = 1.5708
color = Color(1, 0.6, 0, 1)
polygon = PackedVector2Array(-50, -25, 0, 0, -50, 25)
[node name="animator" parent="texture" index="1"]
libraries = {
&"": SubResource("AnimationLibrary_s7tee")
}
[node name="animator" parent="texture" index="1" unique_id=1114087117]
libraries/ = SubResource("AnimationLibrary_s7tee")
[node name="circle" type="Sprite2D" parent="texture" index="2"]
[node name="circle" type="Sprite2D" parent="texture" index="2" unique_id=780858023]
modulate = Color(1, 1, 1, 0)
scale = Vector2(1e-05, 1e-05)
texture = ExtResource("4_sewyb")
[node name="hitbox" parent="." index="1"]
[node name="hitbox" parent="." index="1" unique_id=175349408]
visible = false
position = Vector2(1234, 0)
rotation = 1.5708
+4 -3
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=4 format=3 uid="uid://digr2lvarxtvf"]
[gd_scene format=3 uid="uid://digr2lvarxtvf"]
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_pwer0"]
[ext_resource type="Script" uid="uid://dqgbohkdj8rbj" path="res://scripts/Contents/Bullets/MTYSprint.gd" id="2_rion0"]
@@ -7,12 +7,13 @@
radius = 40.0
height = 150.0
[node name="MTYSprint" instance=ExtResource("1_pwer0")]
[node name="MTYSprint" unique_id=1812509993 instance=ExtResource("1_pwer0")]
script = ExtResource("2_rion0")
displayName = "撕咬"
baseDamage = 5.0
motionType = 4
penerate = 1.0
lifeTime = 500.0
[node name="hitbox" parent="." index="1"]
[node name="hitbox" parent="." index="1" unique_id=175349408]
shape = SubResource("CapsuleShape2D_rion0")
+9 -10
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=9 format=3 uid="uid://dseriubgri7j5"]
[gd_scene format=3 uid="uid://dseriubgri7j5"]
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_newpt"]
[ext_resource type="Texture2D" uid="uid://cwr2pud7h8o3e" path="res://resources/bullets/meowmere/Meowmere.webp" id="2_ahi5w"]
@@ -46,29 +46,28 @@ _data = {
[sub_resource type="RectangleShape2D" id="RectangleShape2D_ja03c"]
size = Vector2(150, 250)
[node name="Meowmere" instance=ExtResource("1_newpt")]
[node name="Meowmere" unique_id=1206159110 instance=ExtResource("1_newpt")]
script = ExtResource("2_eoimw")
motionType = 0
penerate = 1.0
autoSpawnAnimation = true
freeAfterSpawn = true
[node name="texture" parent="." index="0"]
[node name="texture" parent="." index="0" unique_id=162977358]
position = Vector2(100, 0)
scale = Vector2(2, 2)
sprite_frames = SubResource("SpriteFrames_432r6")
[node name="animator" parent="texture" index="0"]
libraries = {
&"": SubResource("AnimationLibrary_47iyl")
}
[node name="animator" parent="texture" index="0" unique_id=1114087117]
libraries/ = SubResource("AnimationLibrary_47iyl")
[node name="sword" type="Node2D" parent="texture" index="1"]
[node name="sword" type="Node2D" parent="texture" index="1" unique_id=589325442]
rotation = -0.436332
[node name="texture" type="Sprite2D" parent="texture/sword" index="0"]
[node name="texture" type="Sprite2D" parent="texture/sword" index="0" unique_id=640146225]
position = Vector2(25, -29)
texture = ExtResource("2_ahi5w")
[node name="hitbox" parent="." index="1"]
[node name="hitbox" parent="." index="1" unique_id=175349408]
position = Vector2(169.5, 0)
shape = SubResource("RectangleShape2D_ja03c")
+13 -15
View File
@@ -1,7 +1,7 @@
[gd_scene load_steps=10 format=3 uid="uid://dyo1ysooo1l4x"]
[gd_scene format=3 uid="uid://dyo1ysooo1l4x"]
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_2jrlq"]
[ext_resource type="Script" path="res://scripts/Contents/Bullets/MushroomPickaxe.gd" id="2_iyw38"]
[ext_resource type="Script" uid="uid://dm3ftlkrogh8p" path="res://scripts/Contents/Bullets/MushroomPickaxe.gd" id="2_iyw38"]
[ext_resource type="Texture2D" uid="uid://cqg0aluvegqfe" path="res://resources/bullets/MushroomPickaxe/frames/Shroomite_Digging_Claw.webp" id="2_symlj"]
[sub_resource type="Animation" id="Animation_j8qom"]
@@ -48,38 +48,36 @@ tracks/0/keys = {
[sub_resource type="AnimationLibrary" id="AnimationLibrary_qrtcj"]
_data = {
"RESET": SubResource("Animation_j8qom"),
"destroy": SubResource("Animation_oinqg"),
"loop": SubResource("Animation_ynxlt"),
"spawn": SubResource("Animation_kmogx")
&"RESET": SubResource("Animation_j8qom"),
&"destroy": SubResource("Animation_oinqg"),
&"loop": SubResource("Animation_ynxlt"),
&"spawn": SubResource("Animation_kmogx")
}
[sub_resource type="RectangleShape2D" id="RectangleShape2D_lp71g"]
size = Vector2(80, 170)
[node name="MushroomPickaxe" instance=ExtResource("1_2jrlq")]
[node name="MushroomPickaxe" unique_id=1676630488 instance=ExtResource("1_2jrlq")]
script = ExtResource("2_iyw38")
displayName = "蘑菇矿挖爪"
speed = 0.0
damage = 1.0
motionType = 0
penerate = 1.0
autoSpawnAnimation = true
freeAfterSpawn = true
[node name="texture" parent="." index="0"]
[node name="texture" parent="." index="0" unique_id=162977358]
rotation = 0.785
[node name="animator" parent="texture" index="0"]
libraries = {
"": SubResource("AnimationLibrary_qrtcj")
}
[node name="animator" parent="texture" index="0" unique_id=1114087117]
libraries/ = SubResource("AnimationLibrary_qrtcj")
[node name="item" type="Sprite2D" parent="texture" index="1"]
[node name="item" type="Sprite2D" parent="texture" index="1" unique_id=2028862129]
position = Vector2(200, 0)
rotation = 0.785398
scale = Vector2(2, 2)
texture = ExtResource("2_symlj")
[node name="hitbox" parent="." index="1"]
[node name="hitbox" parent="." index="1" unique_id=175349408]
position = Vector2(200, 0)
shape = SubResource("RectangleShape2D_lp71g")
+16 -17
View File
@@ -1,18 +1,18 @@
[gd_scene load_steps=11 format=3 uid="uid://6aetx86j5ue"]
[gd_scene format=3 uid="uid://6aetx86j5ue"]
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_dpea6"]
[ext_resource type="Texture2D" uid="uid://gs6jd1qxkl74" path="res://resources/bullets/nuclear-bomb/bomb.png" id="2_1kyo5"]
[ext_resource type="Script" path="res://scripts/Contents/Bullets/NuclearBomb.gd" id="2_f85ek"]
[ext_resource type="Shader" path="res://shaders/FilledRing.gdshader" id="4_dheb6"]
[ext_resource type="Script" path="res://scripts/Statemachine/ShaderStage.gd" id="4_wb270"]
[ext_resource type="Script" uid="uid://cvkucdol0sl2l" path="res://scripts/Contents/Bullets/NuclearBomb.gd" id="2_f85ek"]
[ext_resource type="Shader" uid="uid://dfd73rom161o4" path="res://shaders/FilledRing.gdshader" id="4_dheb6"]
[ext_resource type="Script" uid="uid://cgb01lelfg73p" path="res://scripts/Statemachine/ShaderStage.gd" id="4_wb270"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_e6cfa"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_1huke"]
shader = ExtResource("4_dheb6")
shader_parameter/inner = 1.0
shader_parameter/outer = 1.0
shader_parameter/alpha = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_rcpby"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_q3ou5"]
shader = ExtResource("4_dheb6")
shader_parameter/inner = 0.98
shader_parameter/outer = 1.0
@@ -38,35 +38,34 @@ outline_color = Color(1, 0, 0, 1)
[sub_resource type="CircleShape2D" id="CircleShape2D_nhppq"]
radius = 1000.0
[node name="NuclearBomb" instance=ExtResource("1_dpea6")]
[node name="NuclearBomb" unique_id=432957691 instance=ExtResource("1_dpea6")]
script = ExtResource("2_f85ek")
displayName = "核弹"
damage = 500.0
indisDamage = true
motionType = 3
canDamageSelf = true
autoDestroyOnHitMap = false
[node name="warnbg" type="Node2D" parent="." index="0"]
[node name="warnbg" type="Node2D" parent="." index="0" unique_id=1059546955]
unique_name_in_owner = true
material = SubResource("ShaderMaterial_e6cfa")
material = SubResource("ShaderMaterial_1huke")
script = ExtResource("4_wb270")
size = Vector2(200, 200)
color = Color(0, 0, 0, 0.2)
[node name="warn" type="Node2D" parent="." index="1"]
[node name="warn" type="Node2D" parent="." index="1" unique_id=455256970]
unique_name_in_owner = true
material = SubResource("ShaderMaterial_rcpby")
material = SubResource("ShaderMaterial_q3ou5")
script = ExtResource("4_wb270")
size = Vector2(200, 200)
color = Color(1, 0, 0, 1)
[node name="texture" parent="." index="2"]
[node name="texture" parent="." index="2" unique_id=162977358]
sprite_frames = SubResource("SpriteFrames_mku0w")
[node name="anchor" type="Node2D" parent="texture" index="1"]
[node name="anchor" type="Node2D" parent="texture" index="1" unique_id=547790702]
unique_name_in_owner = true
[node name="label" type="Label" parent="texture/anchor" index="0"]
[node name="label" type="Label" parent="texture/anchor" index="0" unique_id=998643780]
unique_name_in_owner = true
offset_left = -200.0
offset_top = -25.0
@@ -77,5 +76,5 @@ label_settings = SubResource("LabelSettings_asfas")
horizontal_alignment = 1
vertical_alignment = 1
[node name="hitbox" parent="." index="3"]
[node name="hitbox" parent="." index="3" unique_id=175349408]
shape = SubResource("CircleShape2D_nhppq")
+2 -1
View File
@@ -46,8 +46,9 @@ height = 300.0
[node name="Parrier" unique_id=2089111975 instance=ExtResource("1_57y3f")]
script = ExtResource("2_li4th")
parryRate = 0.0
displayName = "爪击"
displayName = "格挡"
baseDamage = 5.0
motionType = 0
penerate = 1.0
autoSpawnAnimation = true
freeAfterSpawn = true
+9 -11
View File
@@ -1,4 +1,4 @@
[gd_scene load_steps=13 format=3 uid="uid://8uepi7uql314"]
[gd_scene format=3 uid="uid://8uepi7uql314"]
[ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_gd3m7"]
[ext_resource type="Script" uid="uid://ci5hswfhck5as" path="res://scripts/Contents/Bullets/Volcano.gd" id="2_w1utg"]
@@ -162,37 +162,35 @@ _data = {
[sub_resource type="CircleShape2D" id="CircleShape2D_1sgli"]
radius = 78.05767
[node name="Volcano" instance=ExtResource("1_gd3m7")]
[node name="Volcano" unique_id=2046549391 instance=ExtResource("1_gd3m7")]
script = ExtResource("2_w1utg")
displayName = "火山"
motionType = 0
penerate = 1.0
autoSpawnAnimation = true
freeAfterSpawn = true
[node name="animator" parent="texture" index="0"]
libraries = {
&"": SubResource("AnimationLibrary_w1utg")
}
[node name="animator" parent="texture" parent_id_path=PackedInt32Array(162977358) index="0" unique_id=1114087117]
libraries/ = SubResource("AnimationLibrary_w1utg")
[node name="anchor" type="Node2D" parent="texture" index="1"]
[node name="anchor" type="Node2D" parent="texture" parent_id_path=PackedInt32Array(162977358) index="1" unique_id=705250468]
unique_name_in_owner = true
[node name="textureSword" type="Sprite2D" parent="texture/anchor" index="0"]
[node name="textureSword" type="Sprite2D" parent="texture/anchor" index="0" unique_id=1975566044]
unique_name_in_owner = true
position = Vector2(150, 0)
rotation = 0.7853982
scale = Vector2(1.5, 1.5)
texture = ExtResource("2_wwxm2")
[node name="audio" type="AudioStreamPlayer2D" parent="texture/anchor/textureSword" index="0"]
[node name="audio" type="AudioStreamPlayer2D" parent="texture/anchor/textureSword" index="0" unique_id=167399724]
[node name="hitbox" parent="." index="1" node_paths=PackedStringArray("target")]
[node name="hitbox" parent="." index="1" unique_id=175349408 node_paths=PackedStringArray("target")]
position = Vector2(150, 0)
rotation = 1.5707964
shape = SubResource("CircleShape2D_1sgli")
script = ExtResource("7_1sgli")
target = NodePath("../texture/anchor/textureSword")
offsetPosition = null
offsetRotation = 45.0
enablePosition = true
enableRotation = true
+1
View File
@@ -263,6 +263,7 @@ height = 725.7404
[node name="Wuwei" unique_id=326826451 instance=ExtResource("1_eg848")]
script = ExtResource("2_vxgkj")
canMove = true
motionType = 0
penerate = 1.0
autoSpawnAnimation = true
freeAfterSpawn = true