[gd_scene format=3 uid="uid://byca4v4gs06q4"] [ext_resource type="PackedScene" uid="uid://crtdkysmnkith" path="res://components/Abstracts/BulletBase.tscn" id="1_7ykg5"] [ext_resource type="Script" uid="uid://cuu5b0gibd054" path="res://scripts/Contents/Bullets/BroomGun.gd" id="2_jn776"] [ext_resource type="AudioStream" uid="uid://b4542lbj0y35e" path="res://resources/sounds/effect/gb fire.wav" id="2_uv0o1"] [ext_resource type="AudioStream" uid="uid://bt0bipy0c67lt" path="res://resources/sounds/effect/gb ready.wav" id="2_vxjbd"] [ext_resource type="PackedScene" uid="uid://bx7u5hcokirm2" path="res://components/Effects/GBShoot.tscn" id="2_x66fw"] [ext_resource type="Texture2D" uid="uid://caf67vt47y180" path="res://resources/bullets/swords/broom.svg" id="5_mscdc"] [sub_resource type="Animation" id="Animation_x66fw"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath(".:modulate") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Color(1, 1, 1, 0)] } tracks/1/type = "bezier" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath(".:position:x") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "handle_modes": PackedInt32Array(0), "points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), "times": PackedFloat32Array(0) } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("light:emitting") 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("%hitbox:disabled") 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("%texture/..:canTrace") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 1, "values": [true] } [sub_resource type="Animation" id="Animation_uv0o1"] resource_name = "destroy" length = 0.5 step = 0.1 [sub_resource type="Animation" id="Animation_vxjbd"] resource_name = "loop" length = 0.5 loop_mode = 1 step = 0.05 [sub_resource type="Animation" id="Animation_mscdc"] resource_name = "spawn" length = 3.0 step = 0.1 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath(".:modulate") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 1), "transitions": PackedFloat32Array(1, 1), "update": 0, "values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] } tracks/1/type = "bezier" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath(".:position:x") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "handle_modes": PackedInt32Array(2, 0), "points": PackedFloat32Array(0, 0, 0, 0, 0, -200, -0.5, 0, 0, 0), "times": PackedFloat32Array(0, 1) } tracks/2/type = "method" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("GBShoot") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0.4), "transitions": PackedFloat32Array(1), "values": [{ "args": [], "method": &"shot" }] } tracks/3/type = "audio" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("audio") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "clips": [{ "end_offset": 0.0, "start_offset": 0.0, "stream": ExtResource("2_vxjbd") }, { "end_offset": 0.0, "start_offset": 0.0, "stream": ExtResource("2_uv0o1") }], "times": PackedFloat32Array(0, 1) } tracks/3/use_blend = true tracks/4/type = "value" tracks/4/imported = false tracks/4/enabled = true tracks/4/path = NodePath("light:emitting") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0, 1, 3), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [false, true, false] } tracks/5/type = "method" tracks/5/imported = false tracks/5/enabled = true tracks/5/path = NodePath("%texture/..") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { "times": PackedFloat32Array(1, 3), "transitions": PackedFloat32Array(1, 1), "values": [{ "args": [], "method": &"shake" }, { "args": [false], "method": &"tryDestroy" }] } tracks/6/type = "value" tracks/6/imported = false tracks/6/enabled = true tracks/6/path = NodePath("%hitbox:disabled") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { "times": PackedFloat32Array(0, 1, 3), "transitions": PackedFloat32Array(1, 1, 1), "update": 1, "values": [true, false, true] } tracks/7/type = "value" tracks/7/imported = false tracks/7/enabled = true tracks/7/path = NodePath("%texture/..:canTrace") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { "times": PackedFloat32Array(0, 1), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [true, false] } [sub_resource type="AnimationLibrary" id="AnimationLibrary_jn776"] _data = { &"RESET": SubResource("Animation_x66fw"), &"destroy": SubResource("Animation_uv0o1"), &"loop": SubResource("Animation_vxjbd"), &"spawn": SubResource("Animation_mscdc") } [sub_resource type="Curve" id="Curve_mscdc"] _data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0.5), 0.0, 0.0, 0, 0] point_count = 2 [sub_resource type="CurveTexture" id="CurveTexture_jn776"] curve = SubResource("Curve_mscdc") [sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_v73cl"] particle_flag_disable_z = true spread = 0.0 initial_velocity_min = 2000.0 initial_velocity_max = 2000.0 gravity = Vector3(0, 0, 0) alpha_curve = SubResource("CurveTexture_jn776") [sub_resource type="RectangleShape2D" id="RectangleShape2D_mscdc"] size = Vector2(1968, 44) [node name="BroomGun" unique_id=5571707 instance=ExtResource("1_7ykg5")] script = ExtResource("2_jn776") canTrace = true displayName = "扫帚炮" speed = 15.0 baseDamage = 5.0 motionType = 2 penerate = 1.0 autoSpawnAnimation = true freeAfterSpawn = true [node name="texture" parent="." index="0" unique_id=162977358] modulate = Color(1, 1, 1, 0) [node name="animator" parent="texture" index="0" unique_id=1114087117] libraries/ = SubResource("AnimationLibrary_jn776") [node name="GBShoot" parent="texture" index="2" unique_id=2131774557 instance=ExtResource("2_x66fw")] scale = Vector2(0.4, 0.4) [node name="light" type="GPUParticles2D" parent="texture" index="3" unique_id=1278683297] position = Vector2(53, 0) emitting = false amount = 30 texture = ExtResource("5_mscdc") preprocess = 1.0 visibility_rect = Rect2(-50, -50, 2000, 100) local_coords = true process_material = SubResource("ParticleProcessMaterial_v73cl") [node name="hitbox" parent="." index="1" unique_id=175349408] position = Vector2(815, -2) shape = SubResource("RectangleShape2D_mscdc") disabled = true