[gd_scene format=3 uid="uid://cv5p3w87nk0wn"] [ext_resource type="Script" uid="uid://dhin7ux2njfja" path="res://player/player.gd" id="1_4flbx"] [ext_resource type="Script" uid="uid://fe3m1ax0w2lh" path="res://player/player_hud.gd" id="2_g6k8r"] [ext_resource type="Script" uid="uid://cjdxibg3pnans" path="res://player/score_label.gd" id="2_onrkg"] [ext_resource type="Script" uid="uid://fv1n5noqdfg2" path="res://player/guns/basic_gun.gd" id="3_g1dw6"] [ext_resource type="Script" uid="uid://3t2vgdd22w6g" path="res://player/weapon_ui.gd" id="4_c35mf"] [ext_resource type="Texture2D" uid="uid://cxig6u6fiw1dx" path="res://ui/weapons/sharpshooter.png" id="4_e7oew"] [ext_resource type="Script" uid="uid://b87cyvu2m5b1k" path="res://player/guns/mini_gun.gd" id="4_yw30f"] [ext_resource type="AudioStream" uid="uid://djrp7mwg3pbrq" path="res://sfx/freesound_community-meaty-gunshot-101257.mp3" id="5_2ieo8"] [ext_resource type="Texture2D" uid="uid://cl05ee526nm3u" path="res://ui/weapons/minigun.png" id="5_c35mf"] [ext_resource type="Script" uid="uid://ftrngxkkycl1" path="res://player/guns/mortar.gd" id="5_qjkh3"] [ext_resource type="Texture2D" uid="uid://bekqcc0dsvvc7" path="res://ui/weapons/explosion.png" id="6_65viv"] [ext_resource type="Script" uid="uid://urxp3pg8g2mh" path="res://player/health_bar.gd" id="7_boad6"] [ext_resource type="AudioStream" uid="uid://b42aa4bhyfv12" path="res://sfx/mortar_shot.wav" id="8_ebec5"] [ext_resource type="Shader" uid="uid://cf3h3knluytmm" path="res://player/hp_outline.gdshader" id="8_rgyib"] [ext_resource type="Script" uid="uid://ban0rphntn10r" path="res://player/stamina_bar.gd" id="9_hg6s5"] [ext_resource type="PackedScene" uid="uid://54f44t3gniw2" path="res://models/vehicles/tank.glb" id="10_8t03j"] [ext_resource type="AudioStream" uid="uid://bdsy6ok06lerf" path="res://sfx/u_mgq59j5ayf-sound-effect-car-crash-394903.mp3" id="13_yllr7"] [ext_resource type="AudioStream" uid="uid://p3uawesg4xq1" path="res://sfx/pwlpl-car_crash-377291.wav" id="14_kb6p2"] [ext_resource type="AudioStream" uid="uid://42ntqiyti72f" path="res://sfx/engine.ogg" id="15_wodsf"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_onrkg"] [sub_resource type="BoxShape3D" id="BoxShape3D_i3pqv"] [sub_resource type="SphereMesh" id="SphereMesh_4flbx"] [sub_resource type="Gradient" id="Gradient_x7c3f"] offsets = PackedFloat32Array(0.44044322, 0.4903047, 0.53462607, 0.5734072) colors = PackedColorArray(1, 1, 1, 0.5529412, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0) [sub_resource type="GradientTexture2D" id="GradientTexture2D_bjvpn"] gradient = SubResource("Gradient_x7c3f") width = 96 height = 96 fill = 1 fill_from = Vector2(0.5, 0.5) [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_2ieo8"] random_pitch = 1.0594631 random_volume_offset_db = 1.0 streams_count = 1 stream_0/stream = ExtResource("5_2ieo8") [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_yllr7"] random_pitch = 1.0293022 streams_count = 1 stream_0/stream = ExtResource("5_2ieo8") [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_ebec5"] random_volume_offset_db = 1.0 streams_count = 1 stream_0/stream = ExtResource("8_ebec5") [sub_resource type="ViewportTexture" id="ViewportTexture_g6k8r"] viewport_path = NodePath("OnPlayerHUD") [sub_resource type="ShaderMaterial" id="ShaderMaterial_hg6s5"] shader = ExtResource("8_rgyib") [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_rgyib"] bg_color = Color(0.23, 0.23, 0.23, 0.34901962) [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_hg6s5"] bg_color = Color(0.30492008, 0.84, 0.18480001, 1) [sub_resource type="Gradient" id="Gradient_hg6s5"] offsets = PackedFloat32Array(0.4537445, 0.53744495, 0.5947136, 0.6387665) colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0) [sub_resource type="GradientTexture2D" id="GradientTexture2D_8t03j"] gradient = SubResource("Gradient_hg6s5") width = 256 height = 256 fill = 1 fill_from = Vector2(0.5, 0.5) [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_kb6p2"] playback_mode = 1 random_pitch = 1.0293022 random_volume_offset_db = 3.0 streams_count = 2 stream_0/stream = ExtResource("13_yllr7") stream_1/stream = ExtResource("14_kb6p2") [node name="Player" type="CharacterBody3D" unique_id=1904432250 node_paths=PackedStringArray("cannon", "guns")] collision_layer = 2 collision_mask = 13 script = ExtResource("1_4flbx") shake_noise = SubResource("FastNoiseLite_onrkg") cannon = NodePath("Tank/Turret") guns = [NodePath("Guns/Sharpshooter"), NodePath("Guns/MiniGun"), NodePath("Guns/Mortar")] [node name="CollisionShape3D" type="CollisionShape3D" parent="." unique_id=918462062] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0) shape = SubResource("BoxShape3D_i3pqv") [node name="Camera3D" type="Camera3D" parent="." unique_id=253280781] unique_name_in_owner = true transform = Transform3D(1, 0, 0, 0, 0.53349644, 0.84580237, 0, -0.84580237, 0.53349644, 0, 20.150661, 11.874705) [node name="Reticle" type="MeshInstance3D" parent="." unique_id=242722222] unique_name_in_owner = true visible = false mesh = SubResource("SphereMesh_4flbx") [node name="PlayerHUD" type="CanvasLayer" parent="." unique_id=1676328708] script = ExtResource("2_g6k8r") [node name="HealthLabel" type="Label" parent="PlayerHUD" unique_id=1653322479] unique_name_in_owner = true visible = false anchors_preset = 10 anchor_right = 1.0 offset_bottom = 67.0 grow_horizontal = 2 size_flags_horizontal = 10 theme_override_font_sizes/font_size = 48 text = "Health: 2" horizontal_alignment = 2 [node name="StaminaBar" type="ProgressBar" parent="PlayerHUD" unique_id=961689130] visible = false anchors_preset = 7 anchor_left = 0.5 anchor_top = 1.0 anchor_right = 0.5 anchor_bottom = 1.0 offset_left = -162.0 offset_top = -27.0 offset_right = 162.0 grow_horizontal = 2 grow_vertical = 0 max_value = 1.0 show_percentage = false [node name="Label" type="Label" parent="PlayerHUD/StaminaBar" unique_id=1238654404] layout_mode = 0 offset_left = 132.0 offset_top = -27.0 offset_right = 196.0 offset_bottom = -4.0 text = "Stamina" [node name="Score" type="Control" parent="PlayerHUD" unique_id=1241180984] layout_mode = 3 anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 grow_horizontal = 2 script = ExtResource("2_onrkg") metadata/_edit_use_anchors_ = true [node name="ScoreText" type="Label" parent="PlayerHUD/Score" unique_id=1108751125] custom_minimum_size = Vector2(1152, 0) layout_mode = 1 anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 offset_left = -576.0 offset_right = 576.0 offset_bottom = 132.0 grow_horizontal = 2 theme_override_constants/outline_size = 31 theme_override_font_sizes/font_size = 96 text = "14" horizontal_alignment = 1 [node name="WeaponUI" type="Control" parent="PlayerHUD" unique_id=1846927607] unique_name_in_owner = true layout_mode = 3 anchors_preset = 0 offset_right = 40.0 offset_bottom = 40.0 script = ExtResource("4_c35mf") [node name="Sprite2D" type="Sprite2D" parent="PlayerHUD/WeaponUI" unique_id=622800622] self_modulate = Color(1, 0.8333334, 0, 1) position = Vector2(97.78559, 597.8928) scale = Vector2(0.8906935, 0.85193384) texture = SubResource("GradientTexture2D_bjvpn") [node name="Sharpshooter" type="Sprite2D" parent="PlayerHUD/WeaponUI/Sprite2D" unique_id=1113290106] position = Vector2(1.045371, -1.3996036) scale = Vector2(0.2772135, 0.28815705) texture = ExtResource("4_e7oew") [node name="Label" type="Label" parent="PlayerHUD/WeaponUI/Sprite2D" unique_id=1403203983] offset_left = 19.96259 offset_top = 4.274618 offset_right = 59.96259 offset_bottom = 43.27462 scale = Vector2(1.0077233, 1.059216) theme_override_constants/outline_size = 7 theme_override_font_sizes/font_size = 28 text = "1" [node name="Sprite2D2" type="Sprite2D" parent="PlayerHUD/WeaponUI" unique_id=1270801051] self_modulate = Color(0.096800014, 0.88, 0.21427989, 1) position = Vector2(198.7533, 597.8928) scale = Vector2(0.8906935, 0.85193384) texture = SubResource("GradientTexture2D_bjvpn") [node name="Minigun" type="Sprite2D" parent="PlayerHUD/WeaponUI/Sprite2D2" unique_id=174416607] position = Vector2(0.9441545, -1.399601) scale = Vector2(0.20828299, 0.20828296) texture = ExtResource("5_c35mf") [node name="Label2" type="Label" parent="PlayerHUD/WeaponUI/Sprite2D2" unique_id=2073572324] offset_left = 21.376274 offset_top = 4.2746277 offset_right = 61.376274 offset_bottom = 43.274628 scale = Vector2(1.0077233, 1.059216) theme_override_constants/outline_size = 7 theme_override_font_sizes/font_size = 28 text = "2" [node name="Sprite2D3" type="Sprite2D" parent="PlayerHUD/WeaponUI" unique_id=2102311935] self_modulate = Color(1, 0.22000003, 0.22000003, 1) position = Vector2(303.00003, 598.0571) scale = Vector2(0.8906933, 0.8519337) texture = SubResource("GradientTexture2D_bjvpn") [node name="Label3" type="Label" parent="PlayerHUD/WeaponUI/Sprite2D3" unique_id=1175081439] offset_left = 22.959694 offset_top = 4.138611 offset_right = 62.959694 offset_bottom = 43.13861 scale = Vector2(1.0077233, 1.059216) theme_override_constants/outline_size = 7 theme_override_font_sizes/font_size = 28 text = "3" [node name="Explosion" type="Sprite2D" parent="PlayerHUD/WeaponUI/Sprite2D3" unique_id=1522295851] position = Vector2(-1.4162259, -1.4806914) scale = Vector2(0.2141057, 0.21290459) texture = ExtResource("6_65viv") [node name="Guns" type="Node3D" parent="." unique_id=2018109083] [node name="Sharpshooter" type="Node3D" parent="Guns" unique_id=1677055720] unique_name_in_owner = true script = ExtResource("3_g1dw6") [node name="SharpshooterFire" type="AudioStreamPlayer" parent="Guns/Sharpshooter" unique_id=434739790] unique_name_in_owner = true stream = SubResource("AudioStreamRandomizer_2ieo8") volume_db = -4.0 bus = &"SFX" [node name="MiniGun" type="Node3D" parent="Guns" unique_id=416187827] unique_name_in_owner = true script = ExtResource("4_yw30f") fire_rate = 800.0 [node name="MiniGunFire" type="AudioStreamPlayer" parent="Guns/MiniGun" unique_id=325727002] unique_name_in_owner = true stream = SubResource("AudioStreamRandomizer_yllr7") volume_db = -6.0 pitch_scale = 1.5 max_polyphony = 10 bus = &"SFX" [node name="Mortar" type="Node3D" parent="Guns" unique_id=1321220525] unique_name_in_owner = true script = ExtResource("5_qjkh3") fire_rate = 70.0 [node name="MortarFire" type="AudioStreamPlayer" parent="Guns/Mortar" unique_id=2137084473] unique_name_in_owner = true stream = SubResource("AudioStreamRandomizer_ebec5") bus = &"SFX" [node name="OnPlayerHUDSprite" type="Sprite3D" parent="." unique_id=1611457281] transform = Transform3D(2.5426614, 0, 0, 0, 1.4438343, 2.0929568, 0, -2.0929568, 1.4438343, 0, 3.1055684, 0.17435753) layers = 2 texture = SubResource("ViewportTexture_g6k8r") [node name="OnPlayerHUD" type="SubViewport" parent="." unique_id=477940783] transparent_bg = true size = Vector2i(512, 200) [node name="Modulator" type="Control" parent="OnPlayerHUD" unique_id=1763321617] layout_mode = 3 anchors_preset = 0 offset_right = 40.0 offset_bottom = 40.0 [node name="HealthBar" type="Control" parent="OnPlayerHUD/Modulator" unique_id=1594760840] unique_name_in_owner = true anchors_preset = 0 offset_right = 40.0 offset_bottom = 40.0 script = ExtResource("7_boad6") [node name="HLeft" type="ColorRect" parent="OnPlayerHUD/Modulator/HealthBar" unique_id=868789341] layout_mode = 1 anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 offset_left = 76.0 offset_right = 176.0 offset_bottom = 40.0 grow_horizontal = 2 color = Color(1, 0, 0, 1) [node name="HMiddle" type="ColorRect" parent="OnPlayerHUD/Modulator/HealthBar" unique_id=1539420729] layout_mode = 1 anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 offset_left = 186.0 offset_right = 286.0 offset_bottom = 40.0 grow_horizontal = 2 color = Color(1, 0, 0, 1) [node name="HRight" type="ColorRect" parent="OnPlayerHUD/Modulator/HealthBar" unique_id=1676746583] layout_mode = 1 anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 offset_left = 296.0 offset_right = 396.0 offset_bottom = 40.0 grow_horizontal = 2 color = Color(1, 0, 0, 1) [node name="HealthbarOutline" type="Control" parent="OnPlayerHUD/Modulator" unique_id=1389427565] anchors_preset = 0 offset_right = 40.0 offset_bottom = 40.0 [node name="HLeft" type="ColorRect" parent="OnPlayerHUD/Modulator/HealthbarOutline" unique_id=1163991791] material = SubResource("ShaderMaterial_hg6s5") layout_mode = 1 anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 offset_left = 76.0 offset_right = 176.0 offset_bottom = 40.0 grow_horizontal = 2 color = Color(1, 0.31, 0.31, 1) [node name="HMiddle" type="ColorRect" parent="OnPlayerHUD/Modulator/HealthbarOutline" unique_id=1489109783] material = SubResource("ShaderMaterial_hg6s5") layout_mode = 1 anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 offset_left = 186.0 offset_right = 286.0 offset_bottom = 40.0 grow_horizontal = 2 color = Color(1, 0.31, 0.31, 1) [node name="HRight" type="ColorRect" parent="OnPlayerHUD/Modulator/HealthbarOutline" unique_id=1936619089] material = SubResource("ShaderMaterial_hg6s5") layout_mode = 1 anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 offset_left = 296.0 offset_right = 396.0 offset_bottom = 40.0 grow_horizontal = 2 color = Color(1, 0.31, 0.31, 1) [node name="StaminaBar" type="ProgressBar" parent="OnPlayerHUD" unique_id=1360991619] unique_name_in_owner = true anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 offset_left = -160.0 offset_top = 50.0 offset_right = 160.0 offset_bottom = 77.0 grow_horizontal = 2 theme_override_styles/background = SubResource("StyleBoxFlat_rgyib") theme_override_styles/fill = SubResource("StyleBoxFlat_hg6s5") max_value = 1.0 value = 1.0 show_percentage = false script = ExtResource("9_hg6s5") [node name="MortarDecal" type="Decal" parent="." unique_id=1050350909] unique_name_in_owner = true transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 24.471222, 0) visible = false size = Vector3(6.55249, 50.942444, 6.388672) texture_albedo = SubResource("GradientTexture2D_8t03j") modulate = Color(0.89, 0.40049997, 0.40049997, 1) cull_mask = 1 [node name="Tank" parent="." unique_id=1376341535 instance=ExtResource("10_8t03j")] unique_name_in_owner = true transform = Transform3D(-0.6377325, 0, -5.5752345e-08, 0, 0.6377325, 0, 5.5752345e-08, 0, -0.6377325, 0, 0.75759906, 0) [node name="AudioListener3D" type="AudioListener3D" parent="." unique_id=1114579283] current = true [node name="CrashSFX" type="AudioStreamPlayer" parent="." unique_id=1313499323] unique_name_in_owner = true stream = SubResource("AudioStreamRandomizer_kb6p2") volume_db = 4.0 bus = &"SFX" [node name="EngineSFX" type="AudioStreamPlayer" parent="." unique_id=668897298] unique_name_in_owner = true stream = ExtResource("15_wodsf") volume_db = -8.0 bus = &"SFX" [editable path="Tank"]