[gd_scene load_steps=9 format=2] [ext_resource path="res://resource/effects/Smoke.png" type="Texture2D" id=1] [ext_resource path="res://resource/effects/Collision.png" type="Texture2D" id=2] [sub_resource type="CanvasItemMaterial" id=1] particles_animation = true particles_anim_h_frames = 3 particles_anim_v_frames = 1 particles_anim_loop = false [sub_resource type="Curve" id=3] _data = [ Vector2( 0, 0 ), 0.0, 0.0, 0, 0, Vector2( 0.108939, 1 ), 0.0, 0.0, 0, 0, Vector2( 1, 0 ), 0.0, 0.0, 0, 0 ] [sub_resource type="CurveTexture" id=4] curve = SubResource( 3 ) [sub_resource type="ParticleProcessMaterial" id=2] flag_disable_z = true spread = 25.0 gravity = Vector3( 0, 0, 0 ) initial_velocity = 90.0 initial_velocity_random = 0.9 angular_velocity = 360.0 angular_velocity_random = 1.0 orbit_velocity = 0.0 orbit_velocity_random = 0.0 angle = 360.0 angle_random = 1.0 scale_curve = SubResource( 4 ) color = Color( 0.470588, 0.470588, 0.470588, 0.470588 ) anim_offset = 1.0 anim_offset_random = 1.0 [sub_resource type="Animation" id=5] length = 0.001 tracks/0/type = "value" tracks/0/path = NodePath(".:emitting") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/imported = false tracks/0/enabled = true tracks/0/keys = { "times": PackedFloat32Array( 0 ), "transitions": PackedFloat32Array( 1 ), "update": 0, "values": [ false ] } tracks/1/type = "value" tracks/1/path = NodePath("Sprite2D:frame") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/imported = false tracks/1/enabled = true tracks/1/keys = { "times": PackedFloat32Array( 0 ), "transitions": PackedFloat32Array( 1 ), "update": 0, "values": [ 0 ] } tracks/2/type = "value" tracks/2/path = NodePath("Sprite2D:visible") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/imported = false tracks/2/enabled = true tracks/2/keys = { "times": PackedFloat32Array( 0 ), "transitions": PackedFloat32Array( 1 ), "update": 0, "values": [ true ] } [sub_resource type="Animation" id=6] resource_name = "Smoke" step = 0.05 tracks/0/type = "value" tracks/0/path = NodePath(".:emitting") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/imported = false tracks/0/enabled = true tracks/0/keys = { "times": PackedFloat32Array( 0 ), "transitions": PackedFloat32Array( 1 ), "update": 1, "values": [ true ] } tracks/1/type = "method" tracks/1/path = NodePath(".") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/imported = false tracks/1/enabled = true tracks/1/keys = { "times": PackedFloat32Array( 1 ), "transitions": PackedFloat32Array( 1 ), "values": [ { "args": [ ], "method": "queue_free" } ] } tracks/2/type = "value" tracks/2/path = NodePath("Sprite2D:frame") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/imported = false tracks/2/enabled = true tracks/2/keys = { "times": PackedFloat32Array( 0, 0.05, 0.1, 0.15 ), "transitions": PackedFloat32Array( 1, 1, 1, 1 ), "update": 1, "values": [ 0, 1, 2, 3 ] } tracks/3/type = "value" tracks/3/path = NodePath("Sprite2D:visible") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/imported = false tracks/3/enabled = true tracks/3/keys = { "times": PackedFloat32Array( 0, 0.2 ), "transitions": PackedFloat32Array( 1, 1 ), "update": 1, "values": [ true, false ] } [node name="BulletSmoke" type="GPUParticles2D"] material = SubResource( 1 ) emitting = false lifetime = 0.4 one_shot = true explosiveness = 0.9 fixed_fps = 20 process_material = SubResource( 2 ) texture = ExtResource( 1 ) [node name="Sprite2D" type="Sprite2D" parent="."] modulate = Color( 1.6, 1.6, 1.6, 1 ) texture = ExtResource( 2 ) offset = Vector2( 8, 0 ) hframes = 4 [node name="AnimationPlayer" type="AnimationPlayer" parent="."] autoplay = "Smoke" anims/RESET = SubResource( 5 ) anims/Smoke = SubResource( 6 )