[gd_scene load_steps=38 format=3 uid="uid://wvxhewre31mo"] [ext_resource type="Script" path="res://Assets/Effects/Impact.gd" id="1_7cd22"] [ext_resource type="Texture2D" uid="uid://pnh872qjk0oy" path="res://Assets/Effects/Flame.png" id="2_pyxv8"] [ext_resource type="PackedScene" uid="uid://c5cwnfuw4go1b" path="res://Assets/Audio/SoundPlayer.tscn" id="3_3wksr"] [ext_resource type="AudioStream" uid="uid://ggnqjx0pm65u" path="res://Assets/SFX/Explosion.wav" id="4_ieunx"] [ext_resource type="Texture2D" uid="uid://m8n52wtycvro" path="res://Assets/Effects/ScorchMark_albedo.png" id="5_tp0ly"] [ext_resource type="Texture2D" uid="uid://b6ly38wgtbnfw" path="res://Assets/Effects/ScorchMark_orm.png" id="6_q3tta"] [sub_resource type="Gradient" id="Gradient_gbvow"] interpolation_mode = 2 offsets = PackedFloat32Array(0, 0.202703, 0.467568, 1) colors = PackedColorArray(3, 2.4, 0.4, 1, 1, 0.503748, 0.133411, 1, 0.13, 0.13, 0.13, 1, 0, 0, 0, 1) [sub_resource type="GradientTexture1D" id="GradientTexture1D_1yld1"] gradient = SubResource( "Gradient_gbvow" ) use_hdr = true [sub_resource type="Curve" id="Curve_b77b7"] _data = [Vector2(0, 0.154545), 0.0, 5.74743, 0, 0, Vector2(0.109319, 0.572727), 1.49824, 1.49824, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0] [sub_resource type="CurveTexture" id="CurveTexture_to7ng"] curve = SubResource( "Curve_b77b7" ) [sub_resource type="ParticlesMaterial" id="ParticlesMaterial_pw7km"] lifetime_randomness = 0.25 direction = Vector3(0, 0, -1) spread = 180.0 gravity = Vector3(0, 0, 0) initial_velocity_min = 1.0 initial_velocity_max = 3.0 angular_velocity_min = -5.0 angular_velocity_max = 5.0 damping_min = 20.0 damping_max = 26.0 angle_min = -180.0 angle_max = 180.0 scale_min = 4.0 scale_max = 6.0 scale_curve = SubResource( "CurveTexture_to7ng" ) color_ramp = SubResource( "GradientTexture1D_1yld1" ) anim_offset_max = 4.0 collision_enabled = true collision_friction = 1.0 collision_use_scale = true [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_7jypn"] blend_mode = 1 shading_mode = 0 vertex_color_use_as_albedo = true albedo_texture = ExtResource( "2_pyxv8" ) texture_filter = 1 disable_receive_shadows = true billboard_mode = 3 particles_anim_h_frames = 2 particles_anim_v_frames = 2 particles_anim_loop = false proximity_fade_enable = true [sub_resource type="QuadMesh" id="QuadMesh_hbyxo"] material = SubResource( "StandardMaterial3D_7jypn" ) [sub_resource type="Gradient" id="Gradient_tvekl"] colors = PackedColorArray(1, 0.911142, 0.0936153, 1, 1, 0.378857, 0.0352274, 1) [sub_resource type="GradientTexture1D" id="GradientTexture1D_pamqo"] gradient = SubResource( "Gradient_tvekl" ) [sub_resource type="Gradient" id="Gradient_npgj5"] interpolation_mode = 2 offsets = PackedFloat32Array(0, 0.87027, 1) colors = PackedColorArray(32, 32, 32, 1, 8, 8, 8, 1, 0, 0, 0, 1) [sub_resource type="GradientTexture1D" id="GradientTexture1D_7sj32"] gradient = SubResource( "Gradient_npgj5" ) use_hdr = true [sub_resource type="ParticlesMaterial" id="ParticlesMaterial_bye5r"] lifetime_randomness = 1.0 direction = Vector3(0, 0, -1) spread = 120.0 initial_velocity_min = 3.0 initial_velocity_max = 8.0 damping_min = 1.25 damping_max = 1.7 angle_min = -180.0 angle_max = 180.0 scale_min = 0.3 scale_max = 0.7 color_ramp = SubResource( "GradientTexture1D_7sj32" ) color_initial_ramp = SubResource( "GradientTexture1D_pamqo" ) hue_variation_min = -0.03 hue_variation_max = 0.07 anim_offset_max = 4.0 sub_emitter_mode = 1 sub_emitter_frequency = 30.0 sub_emitter_keep_velocity = true collision_enabled = true collision_friction = 0.18 collision_bounce = 0.53 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_8hrx8"] blend_mode = 1 shading_mode = 0 vertex_color_use_as_albedo = true albedo_texture = ExtResource( "2_pyxv8" ) texture_filter = 1 disable_receive_shadows = true billboard_mode = 3 particles_anim_h_frames = 2 particles_anim_v_frames = 2 particles_anim_loop = false proximity_fade_distance = 0.1 distance_fade_min_distance = 25.0 distance_fade_max_distance = 50.0 [sub_resource type="QuadMesh" id="QuadMesh_opq4v"] material = SubResource( "StandardMaterial3D_8hrx8" ) [sub_resource type="Gradient" id="Gradient_65457"] interpolation_mode = 2 offsets = PackedFloat32Array(0, 0.0216998, 0.101266, 0.177215, 0.184448, 1) colors = PackedColorArray(0, 0, 0, 1, 2, 1.66, 0.88, 1, 1, 0.510755, 0.116048, 1, 0.347656, 0.148293, 0.0503992, 1, 0.273438, 0.273438, 0.273438, 1, 0, 0, 0, 1) [sub_resource type="GradientTexture1D" id="GradientTexture1D_yg7ay"] gradient = SubResource( "Gradient_65457" ) use_hdr = true [sub_resource type="Curve" id="Curve_cqj0h"] _data = [Vector2(0, 0.154545), 0.0, 5.74743, 0, 0, Vector2(0.157761, 0.6), 1.49824, 1.49824, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0] [sub_resource type="CurveTexture" id="CurveTexture_sddym"] curve = SubResource( "Curve_cqj0h" ) [sub_resource type="ParticlesMaterial" id="ParticlesMaterial_fp0kq"] lifetime_randomness = 0.25 direction = Vector3(0, 0, -1) spread = 120.0 gravity = Vector3(0, 0, 0) initial_velocity_min = 5.0 initial_velocity_max = 10.0 angular_velocity_min = -5.0 angular_velocity_max = 5.0 damping_min = 20.0 damping_max = 26.0 angle_min = -180.0 angle_max = 180.0 scale_min = 1.5 scale_max = 2.0 scale_curve = SubResource( "CurveTexture_sddym" ) color_ramp = SubResource( "GradientTexture1D_yg7ay" ) hue_variation_min = -0.01 hue_variation_max = 0.01 anim_offset_max = 4.0 collision_enabled = true collision_friction = 1.0 collision_use_scale = true [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_3qjja"] blend_mode = 1 shading_mode = 0 vertex_color_use_as_albedo = true albedo_color = Color(0.419608, 0.419608, 0.419608, 1) albedo_texture = ExtResource( "2_pyxv8" ) disable_receive_shadows = true billboard_mode = 3 particles_anim_h_frames = 2 particles_anim_v_frames = 2 particles_anim_loop = false proximity_fade_enable = true [sub_resource type="QuadMesh" id="QuadMesh_n7yo0"] material = SubResource( "StandardMaterial3D_3qjja" ) [sub_resource type="OpenSimplexNoise" id="OpenSimplexNoise_smcfq"] persistence = 0.8 [sub_resource type="NoiseTexture" id="NoiseTexture_c4len"] width = 256 height = 256 seamless = true noise = SubResource( "OpenSimplexNoise_smcfq" ) [sub_resource type="Animation" id="7"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("OmniLight3D:light_color") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Color(1, 0.929412, 0, 1)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("OmniLight3D:light_energy") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [1.0] } tracks/2/type = "method" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("OmniLight3D") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(), "transitions": PackedFloat32Array(), "values": [] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("GPUParticlesAttractorSphere3D:radius") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [0.01] } tracks/4/type = "value" tracks/4/imported = false tracks/4/enabled = true tracks/4/path = NodePath("GPUParticlesAttractorSphere3D:strength") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [0.0] } tracks/5/type = "value" tracks/5/imported = false tracks/5/enabled = true tracks/5/path = NodePath("Halo:surface_material_override/0:albedo_color") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Color(1, 0.529412, 0.270588, 1)] } tracks/6/type = "value" tracks/6/imported = false tracks/6/enabled = true tracks/6/path = NodePath("Halo:mesh:size") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(0.75, 0.75)] } [sub_resource type="Animation" id="8"] resource_name = "anim" length = 3.0 step = 0.05 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("OmniLight3D:light_color") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.45, 1), "transitions": PackedFloat32Array(0.5, -2, 1), "update": 0, "values": [Color(1, 0.870588, 0.188235, 1), Color(0.901961, 0.470588, 0.141176, 1), Color(0, 0, 0, 1)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("OmniLight3D:light_energy") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 1), "transitions": PackedFloat32Array(0.0980732, 1), "update": 0, "values": [25.0, 0.0] } tracks/2/type = "method" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("OmniLight3D") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(1), "transitions": PackedFloat32Array(1), "values": [{ "args": [], "method": &"queue_free" }] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = false tracks/3/path = NodePath("GPUParticlesAttractorSphere3D:strength") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0, 0.2, 0.45), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [0.0, -5.0, -2.0] } tracks/4/type = "value" tracks/4/imported = false tracks/4/enabled = false tracks/4/path = NodePath("GPUParticlesAttractorSphere3D:radius") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0, 0.2, 0.45, 1), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [0.01, 1.0, 2.0, 3.0] } tracks/5/type = "value" tracks/5/imported = false tracks/5/enabled = true tracks/5/path = NodePath("Halo:surface_material_override/0:albedo_color") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { "times": PackedFloat32Array(0, 0.05, 0.2), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Color(2, 1.3, 0, 1), Color(0.75, 0.397059, 0.202941, 1), Color(0, 0, 0, 1)] } tracks/6/type = "value" tracks/6/imported = false tracks/6/enabled = true tracks/6/path = NodePath("Halo:mesh:size") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(0.75, 0.75)] } tracks/7/type = "method" tracks/7/imported = false tracks/7/enabled = true tracks/7/path = NodePath("Halo") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { "times": PackedFloat32Array(0.3), "transitions": PackedFloat32Array(1), "values": [{ "args": [], "method": &"queue_free" }] } tracks/8/type = "audio" tracks/8/imported = false tracks/8/enabled = false tracks/8/path = NodePath("SoundPlayer/AudioStreamPlayer3D") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { "clips": [{ "end_offset": 0.0, "start_offset": 0.0, "stream": ExtResource( "4_ieunx" ) }], "times": PackedFloat32Array(0) } tracks/9/type = "method" tracks/9/imported = false tracks/9/enabled = false tracks/9/path = NodePath("SoundPlayer") tracks/9/interp = 1 tracks/9/loop_wrap = true tracks/9/keys = { "times": PackedFloat32Array(2.35), "transitions": PackedFloat32Array(1), "values": [{ "args": [], "method": &"queue_free" }] } tracks/10/type = "method" tracks/10/imported = false tracks/10/enabled = true tracks/10/path = NodePath("AnimationPlayer") tracks/10/interp = 1 tracks/10/loop_wrap = true tracks/10/keys = { "times": PackedFloat32Array(2.4), "transitions": PackedFloat32Array(1), "values": [{ "args": [], "method": &"queue_free" }] } [sub_resource type="Animation" id="Animation_itp5v"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Decal:distance_fade_begin") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [20.0] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Decal:distance_fade_length") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [10.0] } [sub_resource type="Animation" id="Animation_55he2"] resource_name = "Splat" length = 15.0 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Decal:distance_fade_begin") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(5, 15), "transitions": PackedFloat32Array(1, 1), "update": 0, "values": [10.0, -10.0] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Decal:distance_fade_length") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(5, 15), "transitions": PackedFloat32Array(1, 1), "update": 0, "values": [10.0, 0.0] } tracks/2/type = "method" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath(".") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(15), "transitions": PackedFloat32Array(1), "values": [{ "args": [], "method": &"queue_free" }] } [sub_resource type="Gradient" id="Gradient_x5mjl"] offsets = PackedFloat32Array(0, 0.0696517, 0.154229, 0.241294, 0.320896, 0.425373, 0.537313, 0.634328, 0.756219, 1) colors = PackedColorArray(2, 2, 2, 1, 0.985075, 0.985075, 0.985075, 1, 0.500439, 0.500439, 0.500439, 1, 0.247924, 0.247924, 0.247924, 1, 0.120634, 0.120634, 0.120634, 1, 0.0580323, 0.0580323, 0.0580323, 1, 0.0304474, 0.0304474, 0.0304474, 1, 0.0187759, 0.0187759, 0.0187759, 1, 0.00932661, 0.00932661, 0.00932661, 1, 0, 0, 0, 1) [sub_resource type="GradientTexture2D" id="GradientTexture2D_hy81s"] gradient = SubResource( "Gradient_x5mjl" ) use_hdr = true fill = 1 fill_from = Vector2(0.5, 0.5) fill_to = Vector2(0.5, 0) [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_gwnl0"] blend_mode = 1 no_depth_test = true shading_mode = 0 vertex_color_use_as_albedo = true albedo_color = Color(1, 0.529412, 0.270588, 1) albedo_texture = SubResource( "GradientTexture2D_hy81s" ) disable_receive_shadows = true billboard_mode = 1 fixed_size = true point_size = 89.7 proximity_fade_distance = 0.25 [sub_resource type="QuadMesh" id="QuadMesh_n0j78"] material = SubResource( "StandardMaterial3D_gwnl0" ) size = Vector2(0.75, 0.75) [node name="Impact" type="Node3D"] script = ExtResource( "1_7cd22" ) [node name="GPUParticlesAttractorSphere3D" type="GPUParticlesAttractorSphere3D" parent="."] visible = false strength = 0.0 radius = 0.01 [node name="Explosion" type="GPUParticles3D" parent="."] layers = 2 emitting = false amount = 4 lifetime = 2.0 one_shot = true explosiveness = 1.0 fixed_fps = 0 local_coords = false trail_length_secs = 0.72 process_material = SubResource( "ParticlesMaterial_pw7km" ) draw_pass_1 = SubResource( "QuadMesh_hbyxo" ) [node name="Tracers" type="GPUParticles3D" parent="."] layers = 2 emitting = false amount = 4 sub_emitter = NodePath("Smoke") one_shot = true speed_scale = 2.5 explosiveness = 1.0 randomness = 0.5 fixed_fps = 120 local_coords = false trail_length_secs = 0.66 process_material = SubResource( "ParticlesMaterial_bye5r" ) draw_pass_1 = SubResource( "QuadMesh_opq4v" ) [node name="Smoke" type="GPUParticles3D" parent="Tracers"] layers = 2 emitting = false amount = 64 lifetime = 1.26 fixed_fps = 0 local_coords = false trail_length_secs = 0.72 process_material = SubResource( "ParticlesMaterial_fp0kq" ) draw_pass_1 = SubResource( "QuadMesh_n7yo0" ) [node name="Timer" type="Timer" parent="."] wait_time = 15.0 [node name="OmniLight3D" type="OmniLight3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.369677, 0) layers = 7 light_color = Color(1, 0.929412, 0, 1) light_projector = SubResource( "NoiseTexture_c4len" ) light_size = 0.75 light_specular = 0.2 shadow_blur = 2.0 omni_range = 15.0 omni_attenuation = 0.574349 [node name="AnimationPlayer" type="AnimationPlayer" parent="."] autoplay = "anim" anims/RESET = SubResource( "7" ) anims/anim = SubResource( "8" ) [node name="SoundPlayer" parent="." instance=ExtResource( "3_3wksr" )] SoundClip = "res://Assets/SFX/Weapons_BulletHitWall_01.wav" AutoPlay = true RandomizePitch = 0.1 [node name="AudioStreamPlayer3D" parent="SoundPlayer" index="0"] stream = ExtResource( "4_ieunx" ) unit_size = 8.0 pitch_scale = 0.9 autoplay = true [node name="AnimationPlayer2" type="AnimationPlayer" parent="."] autoplay = "Splat" anims/RESET = SubResource( "Animation_itp5v" ) anims/Splat = SubResource( "Animation_55he2" ) [node name="Decal" type="Decal" parent="."] transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0, 0) extents = Vector3(2, 1, 2) texture_albedo = ExtResource( "5_tp0ly" ) texture_orm = ExtResource( "6_q3tta" ) upper_fade = 2.66296 lower_fade = 2.23928 distance_fade_enabled = true distance_fade_begin = 20.0 distance_fade_length = 10.0 cull_mask = 1 [node name="Halo" type="MeshInstance3D" parent="."] transform = Transform3D(-1, 0, 8.74228e-08, 0, 1, 0, -8.74228e-08, 0, -1, 0, 0, 0.174589) layers = 2 cast_shadow = 0 mesh = SubResource( "QuadMesh_n0j78" ) surface_material_override/0 = SubResource( "StandardMaterial3D_gwnl0" ) [connection signal="timeout" from="Timer" to="." method="_on_Timer_timeout"] [editable path="SoundPlayer"]