diff --git a/assets/LevelBlockouts/blockout_1-2.tscn b/assets/LevelBlockouts/blockout_1-2.tscn index 68bdb5e..d2e4e04 100644 --- a/assets/LevelBlockouts/blockout_1-2.tscn +++ b/assets/LevelBlockouts/blockout_1-2.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=19 format=4 uid="uid://2qe0qva745ft"] +[gd_scene load_steps=20 format=4 uid="uid://2qe0qva745ft"] [ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_p4w8f"] [ext_resource type="Material" uid="uid://br2pyyyl2n3cx" path="res://assets/materials/prototype/prototype1.tres" id="2_0dugn"] @@ -9,6 +9,7 @@ [ext_resource type="Script" path="res://scripts/room_manager.gd" id="7_gjclr"] [ext_resource type="PackedScene" uid="uid://djr7vnr1hcx82" path="res://assets/spider2.tscn" id="8_dbtj1"] [ext_resource type="PackedScene" uid="uid://20csd6dmwj4y" path="res://assets/jump_platform.tscn" id="10_q51tk"] +[ext_resource type="PackedScene" uid="uid://dlhjacsike5a4" path="res://assets/oildrum1.tscn" id="11_quoke"] [ext_resource type="PackedScene" uid="uid://clu76sc4uoswn" path="res://assets/rocketlauncher_pickup.tscn" id="11_ywujp"] [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_0gb6c"] @@ -218,3 +219,9 @@ jump_amount = 15 [node name="rocketlauncher1_pickup" parent="." instance=ExtResource("11_ywujp")] transform = Transform3D(0.0918144, 0, -0.995776, 0, 1, 0, 0.995776, 0, 0.0918144, 105.97, -11.8855, -22.3294) + +[node name="Oildrum1" parent="." instance=ExtResource("11_quoke")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30.5495, -11.7726, -17.1589) + +[node name="Oildrum2" parent="." instance=ExtResource("11_quoke")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30.4028, -11.7726, -25.0833) diff --git a/assets/Shaders/blur.gdshader b/assets/Shaders/blur.gdshader new file mode 100644 index 0000000..7ad938f --- /dev/null +++ b/assets/Shaders/blur.gdshader @@ -0,0 +1,40 @@ +shader_type canvas_item; + +#define pow2(x) (x * x) +#define iResolution 1.0/SCREEN_PIXEL_SIZE + +uniform sampler2D SCREEN_TEXTURE : hint_screen_texture, filter_linear_mipmap; +uniform float strength : hint_range(0.0, 5.0, 0.1) = 3.0; +const float pi = atan(1.0) * 4.0; +const int samples = 35; +const float sigma = float(samples) * 0.25; + +float gaussian(vec2 i) { + return 1.0 / (2.0 * pi * pow2(sigma)) * exp(-((pow2(i.x) + pow2(i.y)) / (2.0 * pow2(sigma)))); +} + +vec3 blur(sampler2D sp, vec2 uv, vec2 scale) { + vec3 col = vec3(0.0); + float accum = 0.0; + float weight; + vec2 offset; + + for (int x = -samples / 2; x < samples / 2; ++x) { + for (int y = -samples / 2; y < samples / 2; ++y) { + offset = vec2(float(x), float(y)); + weight = gaussian(offset); + col += texture(sp, uv + scale * offset).rgb * weight; + accum += weight; + } + } + + return col / accum; +} + +void fragment() { + vec2 ps = vec2(1.0) / iResolution.xy * .000001 * strength; + vec2 uv = UV ; + + COLOR.rgb = blur(SCREEN_TEXTURE, uv, ps ); + COLOR.a = 1.0; +} diff --git a/assets/Textures/ObjectTextures/Blunderbus.png b/assets/Textures/ObjectTextures/Blunderbus.png index bf73b7c..e22cea8 100644 Binary files a/assets/Textures/ObjectTextures/Blunderbus.png and b/assets/Textures/ObjectTextures/Blunderbus.png differ diff --git a/assets/Textures/ObjectTextures/Pistol.png b/assets/Textures/ObjectTextures/Pistol.png index 0a59e5c..b14f03c 100644 Binary files a/assets/Textures/ObjectTextures/Pistol.png and b/assets/Textures/ObjectTextures/Pistol.png differ diff --git a/assets/Textures/ObjectTextures/RocketLauncher.png b/assets/Textures/ObjectTextures/RocketLauncher.png index db748ea..ed6e162 100644 Binary files a/assets/Textures/ObjectTextures/RocketLauncher.png and b/assets/Textures/ObjectTextures/RocketLauncher.png differ diff --git a/assets/Textures/ObjectTextures/mac10.png b/assets/Textures/ObjectTextures/mac10.png index e0bfdd3..a13655c 100644 Binary files a/assets/Textures/ObjectTextures/mac10.png and b/assets/Textures/ObjectTextures/mac10.png differ diff --git a/assets/Textures/ObjectTextures/revolver1.png b/assets/Textures/ObjectTextures/revolver1.png index 03a7cdc..697021e 100644 Binary files a/assets/Textures/ObjectTextures/revolver1.png and b/assets/Textures/ObjectTextures/revolver1.png differ diff --git a/assets/UI/Crosshair/SVG/Stamina_White.svg.import b/assets/UI/Crosshair/SVG/Stamina_White.svg.import index e4997e1..786ab57 100644 --- a/assets/UI/Crosshair/SVG/Stamina_White.svg.import +++ b/assets/UI/Crosshair/SVG/Stamina_White.svg.import @@ -21,7 +21,7 @@ compress/lossy_quality=0.7 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" diff --git a/assets/UI/Crosshair/SVG/reticle_inner.svg.import b/assets/UI/Crosshair/SVG/reticle_inner.svg.import index a2a3a50..137223c 100644 --- a/assets/UI/Crosshair/SVG/reticle_inner.svg.import +++ b/assets/UI/Crosshair/SVG/reticle_inner.svg.import @@ -21,7 +21,7 @@ compress/lossy_quality=0.7 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" diff --git a/assets/UI/Crosshair/SVG/reticle_outer.svg.import b/assets/UI/Crosshair/SVG/reticle_outer.svg.import index c62293e..8f11202 100644 --- a/assets/UI/Crosshair/SVG/reticle_outer.svg.import +++ b/assets/UI/Crosshair/SVG/reticle_outer.svg.import @@ -21,7 +21,7 @@ compress/lossy_quality=0.7 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" diff --git a/assets/jump_platform.tscn b/assets/jump_platform.tscn index a2cdd50..d3fac62 100644 --- a/assets/jump_platform.tscn +++ b/assets/jump_platform.tscn @@ -40,3 +40,4 @@ volume_db = 10.0 doppler_tracking = 2 [connection signal="body_entered" from="Area3D" to="." method="_on_area_3d_body_entered"] +[connection signal="body_exited" from="Area3D" to="." method="_on_area_3d_body_exited"] diff --git a/assets/mac_10.tscn b/assets/mac_10.tscn index ec5a80a..544289f 100644 --- a/assets/mac_10.tscn +++ b/assets/mac_10.tscn @@ -491,7 +491,7 @@ _data = { script = ExtResource("2_tskiy") gun_name = "Mac 10" gun_icon = ExtResource("3_p1hxc") -fov_zoom_amt = 0.998 +fov_zoom_amt = 5.0 recoil_amount = Vector3(0.02, 0.05, 0.05) max_ammo = 20 bullet_damage = 2 diff --git a/assets/oildrum1.tscn b/assets/oildrum1.tscn index d72154a..b2919e0 100644 --- a/assets/oildrum1.tscn +++ b/assets/oildrum1.tscn @@ -125,6 +125,7 @@ size = Vector2(3, 3) orientation = 2 [node name="Oildrum1" type="RigidBody3D" groups=["leak"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.725629, 0) collision_layer = 32 collision_mask = 253 mass = 10.0 diff --git a/assets/player.tscn b/assets/player.tscn index 8cc627b..1fb6461 100644 --- a/assets/player.tscn +++ b/assets/player.tscn @@ -143,10 +143,13 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.437954, -1) stream = ExtResource("14_pnsbm") volume_db = 2.0 +[node name="HUD" parent="Head/Recoil/Camera3D" instance=ExtResource("5_yenaw")] + [node name="WeaponSelect" parent="Head/Recoil/Camera3D" instance=ExtResource("5_bvbcl")] visible = false - -[node name="HUD" parent="Head/Recoil/Camera3D" instance=ExtResource("5_yenaw")] +light_mask = 2 +visibility_layer = 2 +z_index = 1 [node name="GunRay" type="RayCast3D" parent="Head/Recoil/Camera3D" groups=["gun_ray"]] transform = Transform3D(0.977933, 0, -0.208919, 0, 1, 7.45058e-09, 0.208919, 0, 0.977933, 0, -0.197421, -0.129669) diff --git a/assets/revolver_1.tscn b/assets/revolver_1.tscn index 8d21a91..526f3b7 100644 --- a/assets/revolver_1.tscn +++ b/assets/revolver_1.tscn @@ -1097,7 +1097,7 @@ script = ExtResource("2_7rsti") gun_name = ".44 Galore" gun_icon = ExtResource("3_nl201") fire_mode = 1 -fov_zoom_amt = 25 +fov_zoom_amt = 15 recoil_amount = Vector3(0.125, 0.1, 0.1) max_ammo = 6 bullet_damage = 5 diff --git a/assets/rocket.tscn b/assets/rocket.tscn index b67bf4a..ceda81c 100644 --- a/assets/rocket.tscn +++ b/assets/rocket.tscn @@ -66,7 +66,7 @@ radius = 10.0 [node name="Rocket" type="RigidBody3D" node_paths=PackedStringArray("blast_radius_area", "radius_shape")] collision_layer = 0 -collision_mask = 105 +collision_mask = 233 center_of_mass_mode = 1 center_of_mass = Vector3(0, 0, -0.45) continuous_cd = true diff --git a/assets/spider2.tscn b/assets/spider2.tscn index 66303b6..b0b9133 100644 --- a/assets/spider2.tscn +++ b/assets/spider2.tscn @@ -1024,6 +1024,7 @@ avoidance_enabled = true wait_time = 0.3 [node name="postfire_timer" type="Timer" parent="Timers"] +wait_time = 3.0 one_shot = true autostart = true diff --git a/assets/stunned_stars.tscn b/assets/stunned_stars.tscn index 8325858..bb1d1b0 100644 --- a/assets/stunned_stars.tscn +++ b/assets/stunned_stars.tscn @@ -5,10 +5,11 @@ resource_name = "star" transparency = 1 blend_mode = 1 cull_mode = 2 -albedo_color = Color(0.91, 0.73801, 0.3367, 0.654902) +albedo_color = Color(0.91, 0.73801, 0.3367, 0.117647) roughness = 0.5 emission_enabled = true -emission = Color(0.91, 0.74256, 0.0728, 1) +emission = Color(0.91, 0.77168, 0.2184, 1) +emission_energy_multiplier = 5.0 [sub_resource type="ArrayMesh" id="ArrayMesh_6tg4b"] _surfaces = [{ @@ -44,6 +45,45 @@ _surfaces = [{ blend_shape_mode = 0 shadow_mesh = SubResource("ArrayMesh_6tg4b") +[sub_resource type="Animation" id="Animation_fj2ge"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("StarRotate:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 5.65487, 0)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("StarRotate/Odds:position") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 0.2, 0)] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("StarRotate/Evens:position") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 0, 0)] +} + [sub_resource type="Animation" id="Animation_s5evp"] resource_name = "stunned" length = 2.0 @@ -85,45 +125,6 @@ tracks/2/keys = { "values": [Vector3(0, 0, 0), Vector3(0, 0.2, 0), Vector3(0, 0, 0)] } -[sub_resource type="Animation" id="Animation_fj2ge"] -length = 0.001 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("StarRotate:rotation") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(0, 5.65487, 0)] -} -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("StarRotate/Odds:position") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(0, 0.2, 0)] -} -tracks/2/type = "value" -tracks/2/imported = false -tracks/2/enabled = true -tracks/2/path = NodePath("StarRotate/Evens:position") -tracks/2/interp = 1 -tracks/2/loop_wrap = true -tracks/2/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(0, 0, 0)] -} - [sub_resource type="AnimationLibrary" id="AnimationLibrary_7fuec"] _data = { "RESET": SubResource("Animation_fj2ge"), @@ -133,7 +134,7 @@ _data = { [node name="StunnedStars" type="Node3D"] [node name="StarRotate" type="Node3D" parent="."] -transform = Transform3D(0.809017, 0, -0.587785, 0, 1, 0, 0.587785, 0, 0.809017, 0, 0, 0) +transform = Transform3D(0.809019, 0, -0.587783, 0, 1, 0, 0.587783, 0, 0.809019, 0, 0, 0) [node name="Odds" type="Node3D" parent="StarRotate"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.2, 0) diff --git a/assets/texture_catcher.tscn b/assets/texture_catcher.tscn index 03187d9..e8dac06 100644 --- a/assets/texture_catcher.tscn +++ b/assets/texture_catcher.tscn @@ -15,8 +15,7 @@ [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_n016m"] sky_top_color = Color(1, 1, 1, 1) sky_horizon_color = Color(0.81452, 0.81452, 0.81452, 1) -ground_bottom_color = Color(0.258082, 0.258082, 0.258082, 1) -ground_horizon_color = Color(0.81452, 0.81452, 0.81452, 1) +ground_bottom_color = Color(0, 0, 0, 1) [sub_resource type="Sky" id="Sky_qjshd"] sky_material = SubResource("ProceduralSkyMaterial_n016m") @@ -26,6 +25,7 @@ background_mode = 2 sky = SubResource("Sky_qjshd") tonemap_mode = 2 ssao_enabled = true +ssil_enabled = true sdfgi_enabled = true glow_enabled = true @@ -54,8 +54,8 @@ size = 1.86 [node name="snapshotModel" type="Node3D" parent="CAPTURE/SubViewport"] -[node name="RocketLauncher" parent="CAPTURE/SubViewport/snapshotModel" instance=ExtResource("2_i6mk3")] -transform = Transform3D(0.993044, 0, 0.117746, 0, 1, 0, -0.117746, 0, 0.993044, 0.404976, -0.229299, 0.321818) +[node name="Pistol" parent="CAPTURE/SubViewport/snapshotModel" instance=ExtResource("5_v3dls")] +transform = Transform3D(0.99685, -0.0265935, -0.0747243, 0.00602563, 0.964785, -0.262972, 0.0790863, 0.261693, 0.961906, -0.0143074, -0.0145504, 0.231109) [node name="Sprite2D" type="Sprite2D" parent="."] texture = SubResource("ViewportTexture_xiqw1") @@ -64,9 +64,6 @@ texture = SubResource("ViewportTexture_xiqw1") transform = Transform3D(-0.707107, 0, -0.707107, 0, 1, 0, 0.707107, 0, -0.707107, -0.697249, -2.38419e-07, -0.649448) visible = false -[node name="Pistol" parent="PHOTOGRAPHED" instance=ExtResource("5_v3dls")] -transform = Transform3D(-0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, -0.707107, 0.139735, -0.0145502, -1.10556) - [node name="Crown" parent="PHOTOGRAPHED" instance=ExtResource("3_gog5n")] transform = Transform3D(-0.896591, 0.345323, -0.277267, 0.104303, 0.773128, 0.625615, 0.430402, 0.532001, -0.729197, -0.297585, -0.374549, -1.68743) @@ -82,11 +79,14 @@ transform = Transform3D(0.576019, 0, -0.817437, 0, 1, 0, 0.817437, 0, 0.576019, [node name="Ladder" parent="PHOTOGRAPHED" instance=ExtResource("2_yts0x")] transform = Transform3D(-0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, -0.707107, 0.0283049, -1.64915, -3.75383) -[node name="mac10" parent="PHOTOGRAPHED" instance=ExtResource("2_u0ggi")] -transform = Transform3D(-0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, -0.707107, -0.0338004, 0.189329, -0.952258) - [node name="revolver1" parent="PHOTOGRAPHED" instance=ExtResource("3_yqo0y")] transform = Transform3D(-0.707107, -0.278797, 0.649825, 0, 0.918991, 0.394279, -0.707107, 0.278797, -0.649825, 0.116568, 0.0718296, -1.10969) +[node name="mac10" parent="PHOTOGRAPHED" instance=ExtResource("2_u0ggi")] +transform = Transform3D(-0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, -0.707107, -0.0338004, 0.189329, -0.952258) + [node name="Blunderbus" parent="PHOTOGRAPHED" instance=ExtResource("7_do5lr")] -transform = Transform3D(-0.74921, 0, 0.662332, 0, 1, 0, -0.662332, 0, -0.74921, 0.125256, 2.38419e-07, -1.6817) +transform = Transform3D(-0.720177, 0.133439, 0.680837, -0.056748, 0.966712, -0.249495, -0.691466, -0.218317, -0.688631, 0.125256, 2.38419e-07, -1.6817) + +[node name="RocketLauncher" parent="PHOTOGRAPHED" instance=ExtResource("2_i6mk3")] +transform = Transform3D(-0.785447, 0, 0.618929, 0, 1, 0, -0.618929, 0, -0.785447, -0.092602, -0.229299, -1.46618) diff --git a/assets/weapon_select.tscn b/assets/weapon_select.tscn index 232ae05..e8d9485 100644 --- a/assets/weapon_select.tscn +++ b/assets/weapon_select.tscn @@ -1,6 +1,11 @@ -[gd_scene load_steps=2 format=3 uid="uid://dqgtnykkbngem"] +[gd_scene load_steps=4 format=3 uid="uid://dqgtnykkbngem"] [ext_resource type="Script" path="res://scripts/weapon_select.gd" id="1_qygnb"] +[ext_resource type="Shader" path="res://assets/Shaders/blur.gdshader" id="2_25dbo"] + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_7gwrd"] +shader = ExtResource("2_25dbo") +shader_parameter/strength = 0.2 [node name="WeaponSelect" type="Control"] layout_mode = 3 @@ -17,3 +22,19 @@ size_flags_horizontal = 4 size_flags_vertical = 4 script = ExtResource("1_qygnb") line_width = 2 + +[node name="ColorRect2" type="ColorRect" parent="."] +z_index = -1 +material = SubResource("ShaderMaterial_7gwrd") +layout_mode = 1 +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -1920.0 +offset_top = -1080.0 +offset_right = 1920.0 +offset_bottom = 1080.0 +grow_horizontal = 2 +grow_vertical = 2 diff --git a/hud.tscn b/hud.tscn index 6f026a7..dfb1bd0 100644 --- a/hud.tscn +++ b/hud.tscn @@ -23,6 +23,8 @@ bg_color = Color(1, 1, 1, 0.498039) [sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_ytfhs"] [node name="HUD" type="Control"] +light_mask = 2 +visibility_layer = 2 layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 @@ -38,7 +40,7 @@ anchors_preset = 2 anchor_top = 1.0 anchor_bottom = 1.0 offset_left = 44.975 -offset_top = -247.09 +offset_top = -273.09 offset_right = 244.975 offset_bottom = -142.09 grow_vertical = 0 @@ -136,8 +138,8 @@ anchor_left = 1.0 anchor_top = 1.0 anchor_right = 1.0 anchor_bottom = 1.0 -offset_left = -584.0 -offset_top = -314.0 +offset_left = -734.0 +offset_top = -372.0 grow_horizontal = 0 grow_vertical = 0 theme = ExtResource("1_22trs") @@ -152,6 +154,7 @@ size_flags_horizontal = 8 size_flags_vertical = 8 theme = ExtResource("1_22trs") theme_override_constants/separation = 10 +alignment = 2 [node name="Gun Name" type="Label" parent="MarginContainer/VBoxContainer"] layout_mode = 2 @@ -166,7 +169,7 @@ layout_mode = 2 size_flags_vertical = 3 theme = ExtResource("1_22trs") theme_override_constants/separation = 50 -alignment = 1 +alignment = 2 [node name="AmmoCurrent" type="Label" parent="MarginContainer/VBoxContainer/HBoxContainer"] layout_mode = 2 diff --git a/project.godot b/project.godot index ebf9641..043fd95 100644 --- a/project.godot +++ b/project.godot @@ -11,7 +11,7 @@ config_version=5 [application] config/name="First Person Test" -run/main_scene="res://assets/blockout_2.tscn" +run/main_scene="res://scenes/asset_checker.tscn" config/features=PackedStringArray("4.3", "Forward Plus") config/icon="res://icon.svg" diff --git a/scripts/JumpPlatform.gd b/scripts/JumpPlatform.gd index 4763da3..2bd7e59 100644 --- a/scripts/JumpPlatform.gd +++ b/scripts/JumpPlatform.gd @@ -5,6 +5,9 @@ extends StaticBody3D @export var ammo_amount = 20 @onready var jump_sound = $JumpSound +var can_jump = false +var player + # Called when the node enters the scene tree for the first time. func _ready(): pass # Replace with function body. @@ -12,14 +15,17 @@ func _ready(): # Called every frame. 'delta' is the elapsed time since the previous frame. func _process(delta): - pass + if can_jump: + if Input.is_action_just_pressed("jump"): + player.velocity.y = jump_amount + jump_sound.play() func _on_area_3d_body_entered(body): if body.is_in_group("player"): - body.velocity.y = jump_amount - jump_sound.play() - if body.ammo < body.gun.max_ammo + ammo_amount: - body.ammo += ammo_amount - if stamina_replenish == true: - body.remaining_stamina = body.MAX_STAMINA + can_jump = true + player = body + +func _on_area_3d_body_exited(body: Node3D) -> void: + if body.is_in_group("player"): + can_jump = false diff --git a/scripts/hud.gd b/scripts/hud.gd index 60030f6..83c6296 100644 --- a/scripts/hud.gd +++ b/scripts/hud.gd @@ -147,7 +147,7 @@ func _process(delta: float) -> void: fade_in_out(current_stam_bar,STAM_BAR_MAX_OPACITY,stam_bar_visible,5,delta) func crosshair_size_change(): - crosshair_target += Vector2(40,40) + crosshair_target += Vector2(20,20) diff --git a/scripts/pause_menu.gd b/scripts/pause_menu.gd index 2cbde97..f291f18 100644 --- a/scripts/pause_menu.gd +++ b/scripts/pause_menu.gd @@ -3,6 +3,8 @@ extends Control @onready var level_control = get_tree().current_scene @onready var player: CharacterBody3D = $"../../../.." +var paused + # Called when the node enters the scene tree for the first time. func _ready() -> void: visible = false @@ -26,16 +28,20 @@ func _on_load_pressed() -> void: func _unhandled_input(event: InputEvent) -> void: if Input.is_action_just_pressed("escape"): - pause() + if paused: + resume() + else: + pause() func pause(): + paused = true get_tree().paused = true Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE) player.toggle_hud(false) player.pause_menu.show() - func resume(): + paused = false hide() get_tree().paused = false Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED) diff --git a/scripts/player.gd b/scripts/player.gd index 433d2b4..dfac138 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -492,12 +492,14 @@ func crouch(delta): func aim_down_sights(delta): if gun: - if gun.ads == true: - if ads: + if ads: + if gun.ads == true: camera.fov = lerp(camera.fov,BASE_FOV - float(gun.fov_zoom_amt),(delta * 5)/Engine.time_scale) gun.position = lerp(gun.position,ADS_POS,delta * 10 / Engine.time_scale) else: gun.position = lerp(gun.position, weapon_start_pos,delta * 2) + camera.fov = lerp(camera.fov,BASE_FOV - float(gun.fov_zoom_amt),(delta * 5)/Engine.time_scale) + func _headbob(time) -> Vector3: var pos = Vector3.ZERO diff --git a/scripts/rocket.gd b/scripts/rocket.gd index d3f626d..1c2bb1d 100644 --- a/scripts/rocket.gd +++ b/scripts/rocket.gd @@ -56,6 +56,8 @@ func explode(): if body.is_in_group("player"): body.velocity += clamp(blast_velocity,Vector3(-7,-7,-7),Vector3(7,7,7)) body.recoil.add_recoil(Vector3(1,.1,.1),10,10) + if body.has_method("hit") and !body.is_in_group("player"): + body.hit(1) if body.is_in_group("enemy"): body.knocked = true body.stunned = true diff --git a/scripts/shotgun_pellet.gd b/scripts/shotgun_pellet.gd index 6c7c0c4..223b653 100644 --- a/scripts/shotgun_pellet.gd +++ b/scripts/shotgun_pellet.gd @@ -47,6 +47,9 @@ func _on_body_entered(body: Node) -> void: if body.is_in_group("switch"): body.hit(bullet_damage) + if body.has_method("hit") and !body.is_in_group("player"): + body.hit(1) + if body.is_in_group("breakable"): var current_velocity = transform.basis * Vector3(0,0,-1 * bullet_force_mod) body.breaking(current_velocity) diff --git a/scripts/spider.gd b/scripts/spider.gd index d6f9fe5..7f636bf 100644 --- a/scripts/spider.gd +++ b/scripts/spider.gd @@ -133,7 +133,7 @@ func _on_area_3d_body_part_hit(dam,bullet_damage): func _on_prefire_timer_timeout(): fire(barrel_1) smoke.emitting = true - #await get_tree().create_timer(.5).timeout # makes it too hard lol + await get_tree().create_timer(.01).timeout # makes it too hard lol fire(barrel_2) smoke_2.emitting = true turret_material.emission_enabled = false