diff --git a/components/Characters/Rooster.tscn b/components/Characters/Rooster.tscn index 80dd2ed..fc4d8e4 100644 --- a/components/Characters/Rooster.tscn +++ b/components/Characters/Rooster.tscn @@ -2,7 +2,7 @@ [ext_resource type="PackedScene" uid="uid://cvogxi7mktumf" path="res://components/Abstracts/EntityBase.tscn" id="1_e5pl8"] [ext_resource type="Script" uid="uid://cthtupc6dtbav" path="res://scripts/Contents/Characters/Rooster.gd" id="2_oqdqd"] -[ext_resource type="PackedScene" uid="uid://dlaks67h2osms" path="res://components/Weapons/ChainGun.tscn" id="3_s7kxe"] +[ext_resource type="PackedScene" uid="uid://c3crr8r7y3oho" path="res://components/Weapons/BlueCrystal.tscn" id="3_da2ca"] [ext_resource type="AudioStream" uid="uid://cdrevrq7n6yqa" path="res://resources/sounds/effect/Boing.mp3" id="4_66s6c"] [ext_resource type="AudioStream" uid="uid://benyec5bqni0b" path="res://resources/sounds/effect/Chomp.wav" id="4_k0yme"] [ext_resource type="AudioStream" uid="uid://dmxh3bpk8vyy5" path="res://resources/sounds/effect/Coin.mp3" id="5_xnbhq"] @@ -58,8 +58,7 @@ metadata/_edit_vertical_guides_ = [71.0] [node name="weaponStore" parent="." index="1"] process_mode = 4 -[node name="ChainGun" parent="weaponStore" index="0" instance=ExtResource("3_s7kxe")] -debugRebuild = false +[node name="BlueCrystal" parent="weaponStore" index="0" instance=ExtResource("3_da2ca")] [node name="sprint" parent="sounds" index="0"] stream = ExtResource("4_66s6c") diff --git a/scripts/Statemachine/BulletBase.gd b/scripts/Statemachine/BulletBase.gd index c9ba001..86e7127 100644 --- a/scripts/Statemachine/BulletBase.gd +++ b/scripts/Statemachine/BulletBase.gd @@ -152,7 +152,8 @@ func trySplit(): cloned.rotation += deg_to_rad(360.0 / total * i + 180) cloned.canDuplicateSelf = false cloned.launcher = launcher - cloned.parent = parent + if is_instance_valid(parent): + cloned.parent = parent get_parent().add_child.call_deferred(split(cloned, i, total, last)) func tryRefract(): if is_instance_valid(launcher) and canDuplicateSelf: @@ -173,7 +174,8 @@ func tryRefract(): cloned.look_at(entity.position) cloned.canDuplicateSelf = false cloned.launcher = launcher - cloned.parent = parent + if is_instance_valid(parent): + cloned.parent = parent get_parent().add_child.call_deferred(refract(cloned, entity, i, total, last)) # 抽象方法