diff --git a/Game/Assets/Audio/BulletFlyBySoundPlayer.gd b/Game/Assets/Audio/BulletFlyBySoundPlayer.gd index d0dc43e..1d7885f 100644 --- a/Game/Assets/Audio/BulletFlyBySoundPlayer.gd +++ b/Game/Assets/Audio/BulletFlyBySoundPlayer.gd @@ -1,7 +1,4 @@ -extends Spatial - -#func _ready(): -# pass +extends Node3D func _on_SoundPlayer_SoundPlayer_finished(): queue_free() diff --git a/Game/Assets/Audio/BulletFlyBySoundPlayer.tscn b/Game/Assets/Audio/BulletFlyBySoundPlayer.tscn index 747f1d9..205e9d3 100644 --- a/Game/Assets/Audio/BulletFlyBySoundPlayer.tscn +++ b/Game/Assets/Audio/BulletFlyBySoundPlayer.tscn @@ -2,7 +2,7 @@ [ext_resource type="PackedScene" uid="uid://c5cwnfuw4go1b" path="res://Assets/Audio/SoundPlayer.tscn" id="1"] [ext_resource type="Script" path="res://Assets/Audio/BulletFlyBySoundPlayer.gd" id="2"] -[ext_resource type="AudioStream" uid="uid://dlbnvd5ypkwor" path="res://Assets/SFX/Weapons_BulletFlyBy_01.wav" id="3_rujqw"] +[ext_resource type="AudioStream" uid="uid://baog7oxjincev" path="res://Assets/SFX/Weapons_BulletFlyBy_07.wav" id="3_tpw2g"] [sub_resource type="BoxMesh" id="BoxMesh_8lyvt"] @@ -11,6 +11,7 @@ script = ExtResource( "2" ) [node name="MeshInstance3D" type="MeshInstance3D" parent="."] transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 0, 0, 0) +visible = false mesh = SubResource( "BoxMesh_8lyvt" ) [node name="SoundPlayer" parent="." instance=ExtResource( "1" )] @@ -19,7 +20,10 @@ AutoPlay = true RandomizePitch = 0.3 [node name="AudioStreamPlayer3D" parent="SoundPlayer" index="0"] -stream = ExtResource( "3_rujqw" ) +stream = ExtResource( "3_tpw2g" ) +unit_size = 2.0 +max_db = 0.0 +autoplay = true [connection signal="SoundPlayer_finished" from="SoundPlayer" to="." method="_on_SoundPlayer_SoundPlayer_finished"] [connection signal="finished" from="SoundPlayer/AudioStreamPlayer3D" to="SoundPlayer" method="_on_AudioStreamPlayer3D_finished"] diff --git a/Game/Assets/Audio/SoundPlayer.gd b/Game/Assets/Audio/SoundPlayer.gd index 93ff70d..ba3c0a1 100644 --- a/Game/Assets/Audio/SoundPlayer.gd +++ b/Game/Assets/Audio/SoundPlayer.gd @@ -114,6 +114,11 @@ func pick_random(): @rpc(call_local, any_peer, reliable) func play(): # temporary + + if RandomizePitch != 0: + $AudioStreamPlayer3D.pitch_scale = PitchScale + randf_range(-RandomizePitch /2, RandomizePitch/2) + else: + $AudioStreamPlayer3D.pitch_scale = PitchScale $AudioStreamPlayer3D.play() return # the functionality fo this node is disabled until the Godot not bundling wave files in exports issue is solved diff --git a/Game/Assets/Effects/ImpactSparks.tscn b/Game/Assets/Effects/ImpactSparks.tscn index 1b4b6b7..0d3a487 100644 --- a/Game/Assets/Effects/ImpactSparks.tscn +++ b/Game/Assets/Effects/ImpactSparks.tscn @@ -3,8 +3,8 @@ [ext_resource type="Script" path="res://Assets/Effects/Impact.gd" id="1"] [ext_resource type="Texture2D" uid="uid://cguy76rs8e220" path="res://Assets/Effects/Flame.png" id="2"] [ext_resource type="PackedScene" uid="uid://c5cwnfuw4go1b" path="res://Assets/Audio/SoundPlayer.tscn" id="3_oh3bk"] -[ext_resource type="AudioStream" uid="uid://e6h2bvb51xun" path="res://Assets/SFX/Weapons_BulletHitWall_05.wav" id="4_5a6ll"] [ext_resource type="Texture2D" uid="uid://cb584onhet4nd" path="res://Assets/Decals/BulletHits/BulletHitConcrete_albedo.png" id="4_6wvg3"] +[ext_resource type="AudioStream" uid="uid://c847pi2pieg25" path="res://Assets/SFX/Weapons_BulletHitWall_02.wav" id="4_hrtky"] [ext_resource type="Texture2D" uid="uid://bs08bclmrvacp" path="res://Assets/Decals/BulletHits/BulletHitConcrete_normal.png" id="5_fr6k3"] [ext_resource type="Texture2D" uid="uid://ddncj1g0e27m8" path="res://Assets/Decals/BulletHits/BulletHitConcrete_orm.png" id="6_0nm8w"] @@ -43,11 +43,11 @@ size = Vector2(0.25, 0.25) [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/imported = false -tracks/0/enabled = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), @@ -55,11 +55,11 @@ tracks/0/keys = { "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/imported = false -tracks/1/enabled = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), @@ -72,11 +72,11 @@ resource_name = "anim" length = 0.2 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/imported = false -tracks/0/enabled = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.1, 0.2), "transitions": PackedFloat32Array(1, 1, 1), @@ -84,11 +84,11 @@ tracks/0/keys = { "values": [Color(1, 0.905882, 0.34902, 1), Color(0.666667, 0.270588, 0, 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/imported = false -tracks/1/enabled = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.2), "transitions": PackedFloat32Array(0.15932, 1), @@ -99,11 +99,11 @@ tracks/1/keys = { [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("MeshInstance3D:shader_params/o3007790_ANIM") tracks/0/interp = 1 tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.5), "transitions": PackedFloat32Array(1, 1), @@ -111,11 +111,11 @@ tracks/0/keys = { "values": [0.0, 1.0] } tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true tracks/1/path = NodePath("Decal:distance_fade_begin") 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), @@ -123,11 +123,11 @@ tracks/1/keys = { "values": [20.0] } tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true tracks/2/path = NodePath("Decal:distance_fade_length") 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), @@ -139,11 +139,11 @@ tracks/2/keys = { resource_name = "Splat" length = 15.0 tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true tracks/0/path = NodePath("MeshInstance3D:shader_params/o3007790_ANIM") tracks/0/interp = 1 tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.3), "transitions": PackedFloat32Array(1, 1), @@ -151,11 +151,11 @@ tracks/0/keys = { "values": [0.0, 1.0] } tracks/1/type = "method" +tracks/1/imported = false +tracks/1/enabled = true tracks/1/path = NodePath("MeshInstance3D") tracks/1/interp = 1 tracks/1/loop_wrap = true -tracks/1/imported = false -tracks/1/enabled = true tracks/1/keys = { "times": PackedFloat32Array(0.3), "transitions": PackedFloat32Array(1), @@ -165,11 +165,11 @@ tracks/1/keys = { }] } tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true tracks/2/path = NodePath("Decal:distance_fade_begin") tracks/2/interp = 1 tracks/2/loop_wrap = true -tracks/2/imported = false -tracks/2/enabled = true tracks/2/keys = { "times": PackedFloat32Array(5, 15), "transitions": PackedFloat32Array(1, 1), @@ -177,11 +177,11 @@ tracks/2/keys = { "values": [10.0, -10.0] } tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true tracks/3/path = NodePath("Decal:distance_fade_length") tracks/3/interp = 1 tracks/3/loop_wrap = true -tracks/3/imported = false -tracks/3/enabled = true tracks/3/keys = { "times": PackedFloat32Array(5, 15), "transitions": PackedFloat32Array(1, 1), @@ -189,11 +189,11 @@ tracks/3/keys = { "values": [10.0, 0.0] } tracks/4/type = "method" +tracks/4/imported = false +tracks/4/enabled = true tracks/4/path = NodePath(".") tracks/4/interp = 1 tracks/4/loop_wrap = true -tracks/4/imported = false -tracks/4/enabled = true tracks/4/keys = { "times": PackedFloat32Array(15), "transitions": PackedFloat32Array(1), @@ -221,31 +221,24 @@ initial_velocity_max = 4.0 scale_amount_curve = SubResource( "3" ) color_ramp = SubResource( "4" ) anim_offset_max = 1.0 -script = null [node name="Timer" type="Timer" parent="."] wait_time = 15.0 -script = null [node name="MeshInstance3D" type="MeshInstance3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 1.06581e-14, 0, -1.06581e-14, 1, 0, 0.00379224, 0) visible = false mesh = SubResource( "6" ) -surface_material_override/0 = null -script = null [node name="OmniLight3D" type="OmniLight3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.369677, 0) light_color = Color(1, 0.929412, 0, 1) omni_attenuation = 2.63902 -script = null [node name="AnimationPlayer" type="AnimationPlayer" parent="."] autoplay = "anim" anims/RESET = SubResource( "7" ) anims/anim = SubResource( "8" ) -blend_times = [] -script = null [node name="SoundPlayer" parent="." instance=ExtResource( "3_oh3bk" )] SoundClip = "res://Assets/SFX/Weapons_BulletHitWall_01.wav" @@ -253,16 +246,15 @@ AutoPlay = true RandomizePitch = 0.1 [node name="AudioStreamPlayer3D" parent="SoundPlayer" index="0"] -stream = ExtResource( "4_5a6ll" ) +stream = ExtResource( "4_hrtky" ) unit_db = -8.0 unit_size = 2.0 +autoplay = true [node name="AnimationPlayer2" type="AnimationPlayer" parent="."] autoplay = "Splat" anims/RESET = SubResource( "Animation_itp5v" ) anims/Splat = SubResource( "Animation_55he2" ) -blend_times = [] -script = null [node name="Decal" type="Decal" parent="."] transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0, -0.0171875) @@ -276,7 +268,6 @@ distance_fade_enabled = true distance_fade_begin = 20.0 distance_fade_length = 10.0 cull_mask = 1 -script = null [connection signal="timeout" from="Timer" to="." method="_on_Timer_timeout"] diff --git a/Game/Assets/HUD/HUD.tscn b/Game/Assets/HUD/HUD.tscn index 811c568..c687df5 100644 --- a/Game/Assets/HUD/HUD.tscn +++ b/Game/Assets/HUD/HUD.tscn @@ -312,10 +312,12 @@ stream = ExtResource( "9_ubwxw" ) [node name="RespawnCountdown" type="Label" parent="."] visible = false anchor_left = 0.5 +anchor_top = 1.0 anchor_right = 0.5 +anchor_bottom = 1.0 offset_left = -220.0 +offset_top = -221.0 offset_right = 220.0 -offset_bottom = 221.0 theme_override_font_sizes/font_size = 32 text = "RESPAWNING IN 5.0 seconds" align = 1 diff --git a/Game/Assets/Weapons/Handgun/Casing.tscn b/Game/Assets/Weapons/Handgun/Casing.tscn index 50dc240..05e8746 100644 --- a/Game/Assets/Weapons/Handgun/Casing.tscn +++ b/Game/Assets/Weapons/Handgun/Casing.tscn @@ -14,11 +14,11 @@ height = 0.179472 resource_name = "Fade" length = 3.0 tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true tracks/0/path = NodePath("Casing_LOD0:surface_material_override/0:transparency") 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), @@ -26,11 +26,11 @@ tracks/0/keys = { "values": [1] } tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true tracks/1/path = NodePath("Casing_LOD0:surface_material_override/0:albedo_color") tracks/1/interp = 1 tracks/1/loop_wrap = true -tracks/1/imported = false -tracks/1/enabled = true tracks/1/keys = { "times": PackedFloat32Array(0, 3), "transitions": PackedFloat32Array(1, 1), @@ -38,11 +38,11 @@ tracks/1/keys = { "values": [Color(0.905882, 0.701961, 0.309804, 1), Color(0.905882, 0.701961, 0.309804, 0)] } tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true tracks/2/path = NodePath("Casing_LOD0:surface_material_override/0:depth_draw_mode") 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), @@ -50,11 +50,11 @@ tracks/2/keys = { "values": [1] } tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true tracks/3/path = NodePath("Casing_LOD0:surface_material_override/0:cull_mode") tracks/3/interp = 1 tracks/3/loop_wrap = true -tracks/3/imported = false -tracks/3/enabled = true tracks/3/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), @@ -62,11 +62,11 @@ tracks/3/keys = { "values": [0] } tracks/4/type = "method" +tracks/4/imported = false +tracks/4/enabled = true tracks/4/path = NodePath("..") tracks/4/interp = 1 tracks/4/loop_wrap = true -tracks/4/imported = false -tracks/4/enabled = true tracks/4/keys = { "times": PackedFloat32Array(3), "transitions": PackedFloat32Array(1), @@ -79,11 +79,11 @@ tracks/4/keys = { [sub_resource type="Animation" id="Animation_u4pct"] length = 0.001 tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true tracks/0/path = NodePath("Casing_LOD0:mesh:surface_1/material:transparency") 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), @@ -91,11 +91,11 @@ tracks/0/keys = { "values": [0] } tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true tracks/1/path = NodePath("Casing_LOD0:mesh:surface_1/material:albedo_color") 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), @@ -103,11 +103,11 @@ tracks/1/keys = { "values": [Color(0.906332, 0.703778, 0.309292, 1)] } tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true tracks/2/path = NodePath("Casing_LOD0:mesh:surface_1/material:depth_draw_mode") 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), @@ -115,11 +115,11 @@ tracks/2/keys = { "values": [1] } tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true tracks/3/path = NodePath("Casing_LOD0:mesh:surface_1/material:cull_mode") tracks/3/interp = 1 tracks/3/loop_wrap = true -tracks/3/imported = false -tracks/3/enabled = true tracks/3/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), @@ -127,11 +127,11 @@ tracks/3/keys = { "values": [0] } tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true tracks/4/path = NodePath("Casing_LOD0:surface_material_override/0:transparency") tracks/4/interp = 1 tracks/4/loop_wrap = true -tracks/4/imported = false -tracks/4/enabled = true tracks/4/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), @@ -143,7 +143,7 @@ tracks/4/keys = { offsets = PackedFloat32Array(0, 0.13587, 0.875, 1) colors = PackedColorArray(0.211765, 0.211765, 0.211765, 0, 1, 1, 1, 1, 0.139394, 0.139394, 0.139394, 0.139394, 0, 0, 0, 0) -[sub_resource type="GradientTexture" id="GradientTexture_cx0o7"] +[sub_resource type="GradientTexture1D" id="GradientTexture_cx0o7"] gradient = SubResource( "Gradient_hmrjy" ) [sub_resource type="Curve" id="Curve_40r7q"] @@ -210,7 +210,7 @@ _data = [Vector2(0, 0.327273), 0.0, 0.0, 0, 0, Vector2(1, 0.981818), 0.0929754, [sub_resource type="Gradient" id="Gradient_585vn"] colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1) -[sub_resource type="GradientTexture" id="GradientTexture_oxmwq"] +[sub_resource type="GradientTexture1D" id="GradientTexture_oxmwq"] gradient = SubResource( "Gradient_585vn" ) width = 128 @@ -243,12 +243,10 @@ transform = Transform3D(-4.37114e-08, -1, 1.06774e-14, 1, -4.37114e-08, 0, 4.030 visible = false shape = SubResource( "2" ) disabled = true -script = null [node name="CollisionShape3D2" type="CollisionShape3D" parent="."] transform = Transform3D(-4.37114e-08, -1, 1.06774e-14, 1, -4.37114e-08, 0, 4.03066e-21, 1.06774e-14, 1, 0, 0, 0) shape = SubResource( "2" ) -script = null [node name="Casing" parent="." instance=ExtResource( "1" )] transform = Transform3D(1, 0, 1.06774e-14, 0, 1, 0, -1.06774e-14, 0, 1, 0, 0, 0) @@ -260,18 +258,17 @@ gi_mode = 2 wait_time = 5.0 one_shot = true autostart = true -script = null [node name="Sound" parent="." instance=ExtResource( "3_47hc3" )] SoundClip = "res://Assets/SFX/Weapons_Handgun_Casing_01.wav" PitchScale = 1.2 -RandomizePitch = 0.01 +RandomizePitch = 0.015 Voice_Count = 2 [node name="AudioStreamPlayer3D" parent="Sound" index="0"] stream = ExtResource( "4_qmv6c" ) unit_db = -12.0 -unit_size = 2.0 +unit_size = 0.5 max_db = -3.0 pitch_scale = 1.5 @@ -279,8 +276,6 @@ pitch_scale = 1.5 root_node = NodePath("../Casing") anims/Fade = SubResource( "Animation_euct2" ) anims/RESET = SubResource( "Animation_u4pct" ) -blend_times = [] -script = null [node name="Smoke" type="GPUParticles3D" parent="."] visible = false @@ -293,15 +288,12 @@ local_coords = false trail_length_secs = 2.0 process_material = SubResource( "ParticlesMaterial_bb1vw" ) draw_pass_1 = SubResource( "QuadMesh_24v16" ) -script = null [node name="MeshInstance3D" type="MeshInstance3D" parent="."] top_level = true visible = false mesh = SubResource( "TubeTrailMesh_syvhj" ) skeleton = NodePath("../SmokeTrail") -surface_material_override/0 = null -script = null [node name="SmokeTrail" type="GPUParticles3D" parent="."] visible = false @@ -314,7 +306,6 @@ trail_enabled = true trail_length_secs = 2.0 process_material = SubResource( "ParticlesMaterial_bb1vw" ) draw_pass_1 = SubResource( "RibbonTrailMesh_dh8q5" ) -script = null [node name="GPUParticles3D" type="GPUParticles3D" parent="."] visible = false @@ -324,7 +315,6 @@ local_coords = false trail_length_secs = 0.01 process_material = SubResource( "ParticlesMaterial_vkp8p" ) draw_pass_1 = SubResource( "RibbonTrailMesh_fl8aq" ) -script = null [connection signal="body_entered" from="." to="." method="_on_Casing_body_entered"] [connection signal="timeout" from="Timer" to="." method="_on_Timer_timeout"] diff --git a/Game/Assets/Weapons/Weapon.gd b/Game/Assets/Weapons/Weapon.gd index df1c5cf..8526302 100644 --- a/Game/Assets/Weapons/Weapon.gd +++ b/Game/Assets/Weapons/Weapon.gd @@ -75,10 +75,14 @@ var spread = spread_min if ray: # if we hit something - use that to evaluate the flyby sound to = ray['position'] + var flyby_camera = get_tree().get_root().get_camera_3d() + if flyby_camera == camera: # don't spawn flyby sound for the shooter + return + var x := Vector3.ZERO var A = from var B = to - var C = get_tree().get_root().get_camera_3d().global_transform.origin + var C = flyby_camera.global_transform.origin var d0 = (B - A).dot(A - C) var d1 = (B - A).dot(B - C)