diff --git a/GameModes/Arena of Money.tres b/GameModes/Arena of Money.tres index f5b09bf..fdf54a0 100644 --- a/GameModes/Arena of Money.tres +++ b/GameModes/Arena of Money.tres @@ -10,6 +10,7 @@ survival_time = 160.0 money_lost_multiplier = 0.5 weapon_penalty = 0 weapon_drop_percentage = 0.5 +ammo_drop_percentage = 0.5 walk_speed = 12.0 jump_velocity = 5 dash_speed = 40 diff --git a/GameModes/hubworld.tres b/GameModes/hubworld.tres index f87e066..5828395 100644 --- a/GameModes/hubworld.tres +++ b/GameModes/hubworld.tres @@ -10,6 +10,7 @@ survival_time = 160.0 money_lost_multiplier = 1.0 weapon_penalty = 2 weapon_drop_percentage = 0.0 +ammo_drop_percentage = 0.5 walk_speed = 12.0 jump_velocity = 5 dash_speed = 40 diff --git a/GameModes/standard.tres b/GameModes/standard.tres index f91101a..0eb30d5 100644 --- a/GameModes/standard.tres +++ b/GameModes/standard.tres @@ -11,6 +11,7 @@ survival_time = 160.0 money_lost_multiplier = 0.5 weapon_penalty = 0 weapon_drop_percentage = 0.5 +ammo_drop_percentage = 0.5 walk_speed = 12.0 jump_velocity = 5 dash_speed = 40 diff --git a/assets/machete.tscn b/assets/machete.tscn index 51f404f..fa8ae24 100644 --- a/assets/machete.tscn +++ b/assets/machete.tscn @@ -281,11 +281,10 @@ cast_shadow = 0 mesh = SubResource("ArrayMesh_io6u4") skeleton = NodePath("") -[node name="Area3D" type="Area3D" parent="MacheteHandle"] +[node name="Area3D" type="RigidBody3D" parent="MacheteHandle"] transform = Transform3D(-4.37114e-08, -1, 4.37114e-08, 0.314307, -5.5235e-08, -0.949321, 0.949321, -2.77573e-08, 0.314307, 0, 0.415, -0.0427188) collision_layer = 128 collision_mask = 232 -priority = 1 script = ExtResource("12_u0mbp") [node name="CollisionShape3D" type="CollisionShape3D" parent="MacheteHandle/Area3D"] @@ -305,5 +304,3 @@ libraries = { [node name="Audio" type="Node3D" parent="."] [node name="Swing" type="AudioStreamPlayer3D" parent="Audio"] - -[connection signal="body_entered" from="MacheteHandle/Area3D" to="." method="_on_area_3d_body_entered"] diff --git a/gamemode.gd b/gamemode.gd index b5e96ae..6c00384 100644 --- a/gamemode.gd +++ b/gamemode.gd @@ -10,6 +10,7 @@ class_name gamemode @export var money_lost_multiplier : float = .5 @export_enum("Drop All Weapons","Drop Random","Drop None") var weapon_penalty = 0 @export var weapon_drop_percentage : float = .5 +@export var ammo_drop_percentage : float = .5 @export_group("Player Movement") @export var walk_speed = 12.0 @export var jump_velocity = 5 diff --git a/hud.tscn b/hud.tscn index 7e6ce8f..fdfc757 100644 --- a/hud.tscn +++ b/hud.tscn @@ -165,26 +165,26 @@ theme_override_constants/outline_size = 15 text = "Gun Name" horizontal_alignment = 2 -[node name="HBoxContainer" type="HBoxContainer" parent="GunInfo/VBoxContainer"] +[node name="AmmoCounter" type="HBoxContainer" parent="GunInfo/VBoxContainer"] layout_mode = 2 size_flags_vertical = 3 theme = ExtResource("1_22trs") theme_override_constants/separation = 50 alignment = 2 -[node name="AmmoCurrent" type="Label" parent="GunInfo/VBoxContainer/HBoxContainer"] +[node name="AmmoCurrent" type="Label" parent="GunInfo/VBoxContainer/AmmoCounter"] layout_mode = 2 theme = ExtResource("1_22trs") theme_override_constants/outline_size = 15 text = "XXX" horizontal_alignment = 2 -[node name="Label" type="Label" parent="GunInfo/VBoxContainer/HBoxContainer"] +[node name="Label" type="Label" parent="GunInfo/VBoxContainer/AmmoCounter"] layout_mode = 2 theme_override_constants/outline_size = 15 text = "-" -[node name="AmmoReserve" type="Label" parent="GunInfo/VBoxContainer/HBoxContainer"] +[node name="AmmoReserve" type="Label" parent="GunInfo/VBoxContainer/AmmoCounter"] layout_mode = 2 theme = ExtResource("1_22trs") theme_override_colors/font_shadow_color = Color(0, 0, 0, 1) diff --git a/scenes/Arena of Money.tscn b/scenes/Arena of Money.tscn index 1b6ed5b..57aefd5 100644 --- a/scenes/Arena of Money.tscn +++ b/scenes/Arena of Money.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=32 format=3 uid="uid://bs2iopee5f3bv"] +[gd_scene load_steps=30 format=3 uid="uid://bs2iopee5f3bv"] [ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_wmpql"] [ext_resource type="Resource" uid="uid://llsqx2cby5in" path="res://GameModes/Arena of Money.tres" id="2_8jpxx"] @@ -19,7 +19,6 @@ [ext_resource type="PackedScene" uid="uid://hp4xn8oqdxnd" path="res://assets/machete_pickup.tscn" id="20_3482g"] [ext_resource type="Material" uid="uid://b6hhomp4kcjvb" path="res://assets/materials/prototype/tadaoando.tres" id="21_41y65"] [ext_resource type="PackedScene" uid="uid://dgapcuvg0gtmm" path="res://assets/scene_changer.tscn" id="22_e6msx"] -[ext_resource type="Script" path="res://scripts/level_bounds.gd" id="23_eo3iq"] [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_w6vpl"] sky_top_color = Color(0.623488, 0.812575, 0.900791, 1) @@ -85,9 +84,6 @@ polygons = [PackedInt32Array(3, 2, 0), PackedInt32Array(0, 2, 1)] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6yrih"] albedo_color = Color(0.300579, 0.462784, 0.249767, 1) -[sub_resource type="BoxShape3D" id="BoxShape3D_5m8am"] -size = Vector3(526.157, 940.327, 500) - [node name="Money Gulag" type="Node3D" node_paths=PackedStringArray("player")] script = ExtResource("1_wmpql") map_name = "Money Gulag" @@ -231,16 +227,5 @@ transform = Transform3D(2, 0, 0, 0, 2, 0, 0, 0, 2, 27.2325, -7.8068, -32.4933) jump_amount = 100 [node name="Scene Changer" parent="." instance=ExtResource("22_e6msx")] -transform = Transform3D(15.1486, 0, 0, 0, 405.877, 0, 0, 0, 9.59561, 29.1358, 544.113, -33.0379) +transform = Transform3D(15.1486, 0, 0, 0, 405.877, 0, 0, 0, 9.59561, 29.1358, 312.899, -33.0379) scene_path = "res://scenes/HUBWORLD.tscn" - -[node name="BOUNDS" type="Area3D" parent="."] -collision_layer = 2 -collision_mask = 2 -script = ExtResource("23_eo3iq") - -[node name="CollisionShape3D" type="CollisionShape3D" parent="BOUNDS"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 13.0786, 327.699, -39.4503) -shape = SubResource("BoxShape3D_5m8am") - -[connection signal="body_exited" from="BOUNDS" to="BOUNDS" method="_on_body_exited"] diff --git a/scenes/HUBWORLD.tscn b/scenes/HUBWORLD.tscn index 8960fbe..ffbf8b2 100644 --- a/scenes/HUBWORLD.tscn +++ b/scenes/HUBWORLD.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=17 format=3 uid="uid://jdwpc622vmok"] +[gd_scene load_steps=18 format=3 uid="uid://jdwpc622vmok"] [ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_1bnbi"] [ext_resource type="Resource" uid="uid://bxcxqt7rmfvdw" path="res://GameModes/hubworld.tres" id="2_62iy8"] @@ -13,6 +13,7 @@ [ext_resource type="PackedScene" uid="uid://c6bpysq1tjhy4" path="res://vendingmahcine.tscn" id="9_nu6q5"] [ext_resource type="PackedScene" uid="uid://eujx0yilqqcp" path="res://assets/level_sign.tscn" id="11_p3sg0"] [ext_resource type="PackedScene" uid="uid://bji3bukudxlhm" path="res://assets/health_dispenser.tscn" id="13_h5xga"] +[ext_resource type="PackedScene" uid="uid://d4suhr3allsj" path="res://assets/revolver2_pickup.tscn" id="14_ak7yq"] [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_s7e4t"] sky_top_color = Color(0.623488, 0.812575, 0.900791, 1) @@ -142,6 +143,38 @@ material_override = ExtResource("3_hlejc") use_collision = true size = Vector3(18.9743, 2.36012, 19.9824) +[node name="TUBE3" type="Node3D" parent="."] +transform = Transform3D(-0.00141369, 0, 0.999999, 0, 1, 0, -0.999999, 0, -0.00141369, -5.43223, -373.706, -20.5858) + +[node name="CSGBox3D7" type="CSGBox3D" parent="TUBE3"] +material_override = ExtResource("3_hlejc") +use_collision = true +size = Vector3(21.6041, 760.743, 6.07715) + +[node name="CSGBox3D8" type="CSGBox3D" parent="TUBE3"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0456009, -4.25201, 11.5096) +material_override = ExtResource("3_hlejc") +use_collision = true +size = Vector3(21.6041, 769.246, 6.07715) + +[node name="CSGBox3D9" type="CSGBox3D" parent="TUBE3"] +transform = Transform3D(0.00661477, 0, -0.999978, 0, 1, 0, 0.999978, 0, 0.00661477, -11.0942, -6.68951, 2.83656) +material_override = ExtResource("3_hlejc") +use_collision = true +size = Vector3(21.6041, 759.912, 6.07715) + +[node name="CSGBox3D10" type="CSGBox3D" parent="TUBE3"] +transform = Transform3D(0.00661477, 0, -0.999978, 0, 1, 0, 0.999978, 0, 0.00661477, 7.4889, -5.168, 6.00268) +material_override = ExtResource("3_hlejc") +use_collision = true +size = Vector3(21.6041, 771.124, 6.07715) + +[node name="CSGBox3D11" type="CSGBox3D" parent="TUBE3"] +transform = Transform3D(0.00661477, 0, -0.999978, 0, 1, 0, 0.999978, 0, 0.00661477, 0.549826, 380.825, 6.01347) +material_override = ExtResource("3_hlejc") +use_collision = true +size = Vector3(18.9743, 2.36012, 19.9824) + [node name="Player" parent="." instance=ExtResource("4_04o4y")] transform = Transform3D(1, 0.000164476, 0.000583754, -0.000165075, 0.999999, 0.00104027, -0.000583585, -0.00104036, 0.999999, 0.818877, 1.17009, 3.09268) @@ -163,6 +196,12 @@ scene_path = "res://scenes/Arena of Money.tscn" scene_name = "The Gulag" level_gamemode = ExtResource("6_pf4wj") +[node name="TestLevel2v2" parent="." instance=ExtResource("5_alya6")] +transform = Transform3D(22.8101, 0, 0, 0, 30.4856, 0, 0, 0, 16.2143, 0.74234, -57.3609, -22.7822) +scene_path = "res://scenes/test_level_2v2.tscn" +scene_name = "Test Level 2v2" +level_gamemode = ExtResource("6_t16kj") + [node name="Stats" parent="." instance=ExtResource("6_mkn70")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.212402, 1.9891, -6.02898) @@ -184,6 +223,10 @@ number_uses = 15 transform = Transform3D(0.738985, 0, -0.673722, 0, 1, 0, 0.673722, 0, 0.738985, 7.37127, 1.19867, -9.17978) portal_node = NodePath("../EnemyWorkingScene") +[node name="Level Sign4" parent="." node_paths=PackedStringArray("portal_node") instance=ExtResource("11_p3sg0")] +transform = Transform3D(0.744626, 0, 0.667482, 0, 1, 0, -0.667482, 0, 0.744626, -2.45327, 1.19867, -9.41885) +portal_node = NodePath("../TestLevel2v2") + [node name="Level Sign2" parent="." node_paths=PackedStringArray("portal_node") instance=ExtResource("11_p3sg0")] transform = Transform3D(-0.529904, 0, 0.848057, 0, 1, 0, -0.848057, 0, -0.529904, -7.68211, 1.19868, 2.00196) portal_node = NodePath("../Blockout2") @@ -194,3 +237,9 @@ portal_node = NodePath("../Gulag of Money") [node name="HealthDispenser" parent="." instance=ExtResource("13_h5xga")] transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 7.99763, 1.77484, -1.41809) + +[node name="vendingmachine2" parent="." instance=ExtResource("9_nu6q5")] +transform = Transform3D(-0.00572468, 0, -0.999984, 0, 1, 0, 0.999984, 0, -0.00572468, 7.8571, 0.0503511, 3.6909) +item = ExtResource("14_ak7yq") +item_name = "bullet sniper" +item_price = 5000 diff --git a/scenes/asset_checker.tscn b/scenes/asset_checker.tscn index 4bbec20..a7fe948 100644 --- a/scenes/asset_checker.tscn +++ b/scenes/asset_checker.tscn @@ -310,20 +310,21 @@ dof_blur_near_enabled = true [sub_resource type="Animation" id="Animation_slj52"] resource_name = "Menu" length = 40.0 +loop_mode = 1 tracks/0/type = "position_3d" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Camera3D") -tracks/0/interp = 2 -tracks/0/loop_wrap = true -tracks/0/keys = PackedFloat32Array(0, 1, 4.83154, 1.76087, 7.17499, 19.9333, 1, -4.96827, 1.76087, 6.32403, 40, 1, 4.83154, 1.76087, 7.17499) +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/keys = PackedFloat32Array(0, 1, 27.488, 7.93845, -0.672977, 20, 1, 25.7341, 7.93845, -1.42255, 20.0333, 1, 9.73562, 2.3287, 5.39941, 30, 1, 4.62892, 2.1615, 5.93688, 40, 1, 27.488, 7.93845, -0.672977) tracks/1/type = "rotation_3d" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Camera3D") -tracks/1/interp = 2 -tracks/1/loop_wrap = true -tracks/1/keys = PackedFloat32Array(0, 1, 0, 0, 0, 1, 19.9, 1, 0, 0.254973, 0, 0.966948, 40, 1, 0, 0, 0, 1) +tracks/1/interp = 1 +tracks/1/loop_wrap = false +tracks/1/keys = PackedFloat32Array(0.0333333, 1, 0, 0.73086, 0, 0.682528, 20, 1, 0, 0.636758, 0, 0.771064, 20.0333, 1, 0, 0.341069, 0, 0.940038, 30, 1, 0, 0.45101, 0, 0.892519, 40, 1, 0, 0.636758, 0, 0.771064) [sub_resource type="Animation" id="Animation_6siip"] length = 0.001 @@ -590,7 +591,7 @@ transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 23.119 transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -6.98721, 0.923517, 22.4057) [node name="Camera3D" type="Camera3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.83154, 1.76087, 7.17499) +transform = Transform3D(-0.0683113, 0, 0.997664, 0, 1, 0, -0.997664, 0, -0.0683113, 4.83154, 1.76087, 7.17499) attributes = SubResource("CameraAttributesPractical_6pck7") fov = 42.0 diff --git a/scenes/test_level_2v2.tscn b/scenes/test_level_2v2.tscn index b36686e..b622cf5 100644 --- a/scenes/test_level_2v2.tscn +++ b/scenes/test_level_2v2.tscn @@ -1,8 +1,9 @@ -[gd_scene load_steps=121 format=4 uid="uid://dyop6vk3rgkkb"] +[gd_scene load_steps=125 format=4 uid="uid://dyop6vk3rgkkb"] [ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_orhgl"] [ext_resource type="Texture2D" uid="uid://dqs06ic3vjtwk" path="res://assets/Models/asphalt1.albedo.jpg" id="1_w4rag"] [ext_resource type="PackedScene" uid="uid://drwae3loscbw7" path="res://assets/player.tscn" id="2_f87c2"] +[ext_resource type="Resource" uid="uid://dn3t7wcoumlm3" path="res://GameModes/standard.tres" id="2_ynfvy"] [ext_resource type="PackedScene" uid="uid://20csd6dmwj4y" path="res://assets/jump_platform.tscn" id="4_8nxyr"] [ext_resource type="PackedScene" uid="uid://dws2vwfxubqvb" path="res://assets/cannon.tscn" id="5_28rul"] [ext_resource type="Texture2D" uid="uid://bu3w5slec6gib" path="res://assets/Models/brick1.png" id="6_e1oan"] @@ -40,7 +41,10 @@ [ext_resource type="PackedScene" uid="uid://cucqbjb8bcha5" path="res://assets/blunderbuss_pickup.tscn" id="41_c48kk"] [ext_resource type="PackedScene" uid="uid://d4suhr3allsj" path="res://assets/revolver2_pickup.tscn" id="42_2cdbd"] [ext_resource type="PackedScene" uid="uid://dws4iro7820fc" path="res://assets/pistol1_pickup.tscn" id="42_mmvms"] +[ext_resource type="Material" uid="uid://b6hhomp4kcjvb" path="res://assets/materials/prototype/tadaoando.tres" id="42_tln7o"] [ext_resource type="PackedScene" uid="uid://bj1y0fbjtul4a" path="res://post_processing.tscn" id="43_82hec"] +[ext_resource type="PackedScene" uid="uid://dgapcuvg0gtmm" path="res://assets/scene_changer.tscn" id="43_x54pr"] +[ext_resource type="Resource" uid="uid://bxcxqt7rmfvdw" path="res://GameModes/hubworld.tres" id="44_1akso"] [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_nb6x7"] sky_top_color = Color(0.500562, 0.697334, 0.809889, 1) @@ -1162,10 +1166,11 @@ _data = { [node name="Test Level 2" type="Node3D" node_paths=PackedStringArray("player")] script = ExtResource("1_orhgl") +gamemode = ExtResource("2_ynfvy") player = NodePath("Player") [node name="Player" parent="." instance=ExtResource("2_f87c2")] -transform = Transform3D(-0.866025, 0, -0.5, 0, 1, 0, 0.5, 0, -0.866025, -16.0295, 1.4435, 12.1166) +transform = Transform3D(-0.866025, 0, -0.5, 0, 1, 0, 0.5, 0, -0.866025, -44.3464, 70.2562, -23.9068) [node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] transform = Transform3D(0.420794, 0.292511, -0.858703, -0.23587, 0.949309, 0.207791, 0.875956, 0.115105, 0.468458, 0, 0, 0) @@ -1274,6 +1279,10 @@ jump_amount = 30 transform = Transform3D(2, 0, 0, 0, 2, 0, 0, 0, 2, -57.3605, -0.228642, 15.9129) jump_amount = 30 +[node name="JumpPlatform3" parent="." instance=ExtResource("4_8nxyr")] +transform = Transform3D(2, 0, 0, 0, 2, 0, 0, 0, 2, -41.9294, -0.228642, -22.7717) +jump_amount = 50 + [node name="cannon" parent="." instance=ExtResource("5_28rul")] transform = Transform3D(0.408804, -0.265126, -0.112196, 0.112468, 0.326453, -0.361634, 0.26501, 0.270438, 0.326548, 35.9635, 15.39, 5.25797) @@ -1602,3 +1611,41 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.93409, 5.69926, 1.22332) [node name="PostProcessing" parent="." instance=ExtResource("43_82hec")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8.35692, 7.15345, 5.33085) + +[node name="TUBE3" type="Node3D" parent="."] +transform = Transform3D(-0.00141369, 0, 0.999999, 0, 1, 0, -0.999999, 0, -0.00141369, -47.6869, 389.484, -25.1986) + +[node name="CSGBox3D7" type="CSGBox3D" parent="TUBE3"] +material_override = ExtResource("42_tln7o") +use_collision = true +size = Vector3(21.6041, 760.743, 6.07715) + +[node name="CSGBox3D8" type="CSGBox3D" parent="TUBE3"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0456009, -4.25201, 11.5096) +material_override = ExtResource("42_tln7o") +use_collision = true +size = Vector3(21.6041, 769.246, 6.07715) + +[node name="CSGBox3D9" type="CSGBox3D" parent="TUBE3"] +transform = Transform3D(0.00661477, 0, -0.999978, 0, 1, 0, 0.999978, 0, 0.00661477, -11.0942, -6.68951, 2.83656) +material_override = ExtResource("42_tln7o") +use_collision = true +size = Vector3(21.6041, 759.912, 6.07715) + +[node name="CSGBox3D10" type="CSGBox3D" parent="TUBE3"] +transform = Transform3D(0.00661477, 0, -0.999978, 0, 1, 0, 0.999978, 0, 0.00661477, 7.4889, -5.168, 6.00268) +material_override = ExtResource("42_tln7o") +use_collision = true +size = Vector3(21.6041, 771.124, 6.07715) + +[node name="CSGBox3D11" type="CSGBox3D" parent="TUBE3"] +transform = Transform3D(0.00661477, 0, -0.999978, 0, 1, 0, 0.999978, 0, 0.00661477, 0.549826, 380.825, 6.01347) +material_override = ExtResource("42_tln7o") +use_collision = true +size = Vector3(18.9743, 2.36012, 19.9824) + +[node name="Scene Changer" parent="." instance=ExtResource("43_x54pr")] +transform = Transform3D(21.0694, 0, 0, 0, 42.7379, 0, 0, 0, 16.9908, -43.5807, 119.267, -24.4693) +scene_path = "res://scenes/HUBWORLD.tscn" +scene_name = "HUB" +level_gamemode = ExtResource("44_1akso") diff --git a/scripts/EnemyTarget.gd b/scripts/EnemyTarget.gd index 9628d21..2bf393c 100644 --- a/scripts/EnemyTarget.gd +++ b/scripts/EnemyTarget.gd @@ -27,4 +27,3 @@ func hit(bullet_damage): func _on_body_entered(body: Node3D) -> void: hit(body.bullet_damage) SignalBus.emit_signal("enemy_hit") - body.despawn() diff --git a/scripts/game_globals.gd b/scripts/game_globals.gd index b7f7821..39f1708 100644 --- a/scripts/game_globals.gd +++ b/scripts/game_globals.gd @@ -41,7 +41,7 @@ func money_penalty(): func weapon_penalty(): var level_control = get_tree().current_scene - + GameGlobals.ammo_reserve = {} match level_control.gamemode.weapon_penalty: 0: #Drop All GameGlobals.held_guns = [] diff --git a/scripts/hud.gd b/scripts/hud.gd index da3a890..614611a 100644 --- a/scripts/hud.gd +++ b/scripts/hud.gd @@ -19,9 +19,10 @@ var crosshair_target @onready var stamina_bar: TextureProgressBar = $StaminaBar @onready var stamina_bar_2: ProgressBar = $StaminaBar2 @onready var health_bar: ProgressBar = $HealthBar +@onready var ammo_counter: HBoxContainer = $GunInfo/VBoxContainer/AmmoCounter @onready var gun_name: Label = $"GunInfo/VBoxContainer/Gun Name" -@onready var ammo_current: Label = $GunInfo/VBoxContainer/HBoxContainer/AmmoCurrent -@onready var ammo_reserve: Label = $GunInfo/VBoxContainer/HBoxContainer/AmmoReserve +@onready var ammo_current: Label = $GunInfo/VBoxContainer/AmmoCounter/AmmoCurrent +@onready var ammo_reserve: Label = $GunInfo/VBoxContainer/AmmoCounter/AmmoReserve @onready var gun_info: MarginContainer = $GunInfo @onready var money: Label = $Money @onready var crosshair: TextureRect = $Crosshair @@ -50,6 +51,8 @@ func _ready() -> void: SignalBus.player_hit.connect(player_hit) SignalBus.shot_fired.connect(crosshair_size_change) + money_count = GameGlobals.money + health_bar.max_value = level_control.gamemode.start_health health_bar_start_pos = health_bar.position @@ -112,10 +115,11 @@ func _process(delta: float) -> void: if player.gun != null: if GameGlobals.gun_ammo.has(player.gun.gun_name) and GameGlobals.gun_ammo[player.gun.gun_name] != null: + ammo_counter.visible = true ammo_current.text = str(GameGlobals.gun_ammo[player.gun.gun_name]).pad_zeros(2) lerp_color(ammo_current,RED_COLOR,FULL_WHITE,GameGlobals.gun_ammo[player.gun.gun_name],player.gun.max_ammo,.5) else: - ammo_current.text = "-" + ammo_counter.visible = false if GameGlobals.ammo_reserve.has(str(player.gun.ammo_type)): ammo_reserve.text = str(GameGlobals.ammo_reserve[str(player.gun.ammo_type)]).pad_zeros(3) lerp_color(ammo_reserve,RED_COLOR,FULL_WHITE,GameGlobals.ammo_reserve[str(player.gun.ammo_type)],player.gun.max_ammo*2,.5) diff --git a/scripts/melee_collision.gd b/scripts/melee_collision.gd index 6b28225..cab3959 100644 --- a/scripts/melee_collision.gd +++ b/scripts/melee_collision.gd @@ -1,4 +1,4 @@ -extends Area3D +extends Node var bullet_damage @@ -8,8 +8,3 @@ var bullet_damage # Called when the node enters the scene tree for the first time. func _ready() -> void: bullet_damage = machete.bullet_damage - - -# Called every frame. 'delta' is the elapsed time since the previous frame. -func _process(delta: float) -> void: - pass diff --git a/scripts/melee_weapon.gd b/scripts/melee_weapon.gd index ae3fd09..7ad00d3 100644 --- a/scripts/melee_weapon.gd +++ b/scripts/melee_weapon.gd @@ -39,7 +39,7 @@ func _ready(): func _process(_delta): if blade_ray.is_colliding(): var body = blade_ray.get_collider() - if body.has_method("hit"): + if body != null and body.has_method("hit"): body.hit(bullet_damage) func shoot(delta):