started fixing hud to prevent crosshair from wobbling
This commit is contained in:
@@ -178,7 +178,7 @@ tracks/2/path = NodePath(".")
|
|||||||
tracks/2/interp = 1
|
tracks/2/interp = 1
|
||||||
tracks/2/loop_wrap = true
|
tracks/2/loop_wrap = true
|
||||||
tracks/2/keys = {
|
tracks/2/keys = {
|
||||||
"times": PackedFloat32Array(0.166667, 0.566667),
|
"times": PackedFloat32Array(0.166667, 0.266667),
|
||||||
"transitions": PackedFloat32Array(1, 1),
|
"transitions": PackedFloat32Array(1, 1),
|
||||||
"values": [{
|
"values": [{
|
||||||
"args": [],
|
"args": [],
|
||||||
|
|||||||
@@ -33,14 +33,15 @@ glow_enabled = true
|
|||||||
fog_density = 0.0005
|
fog_density = 0.0005
|
||||||
|
|
||||||
[node name="Realtime Day Night Cycle" type="Node3D"]
|
[node name="Realtime Day Night Cycle" type="Node3D"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)
|
|
||||||
script = ExtResource("1_idjmm")
|
script = ExtResource("1_idjmm")
|
||||||
sun_color = SubResource("GradientTexture1D_xp6wm")
|
sun_color = SubResource("GradientTexture1D_xp6wm")
|
||||||
|
realtime = true
|
||||||
sun_energy_over_time = SubResource("Curve_idjmm")
|
sun_energy_over_time = SubResource("Curve_idjmm")
|
||||||
|
|
||||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
environment = SubResource("Environment_ml2st")
|
environment = SubResource("Environment_ml2st")
|
||||||
|
|
||||||
[node name="Sun" type="DirectionalLight3D" parent="."]
|
[node name="Sun" type="DirectionalLight3D" parent="."]
|
||||||
transform = Transform3D(0.969658, -0.064919, 0.235691, -0.0649191, 0.861104, 0.504268, -0.235691, -0.504268, 0.830761, 0, 0, 0)
|
transform = Transform3D(0.997171, 0.0751772, 0, 0.0642699, -0.852493, 0.518773, 0.0389999, -0.517306, -0.854912, 0, 0, 0)
|
||||||
|
light_energy = 1.45936
|
||||||
shadow_enabled = true
|
shadow_enabled = true
|
||||||
|
|||||||
@@ -34,7 +34,6 @@ weapon_type = 0
|
|||||||
reload_type = 0
|
reload_type = 0
|
||||||
bullet = ExtResource("2_mnla0")
|
bullet = ExtResource("2_mnla0")
|
||||||
fire_mode = 1
|
fire_mode = 1
|
||||||
hitscan_range = 100.0
|
|
||||||
fov_zoom_amt = 0.98
|
fov_zoom_amt = 0.98
|
||||||
ads = false
|
ads = false
|
||||||
recoil_amount = Vector3(0.05, 0.05, 0.05)
|
recoil_amount = Vector3(0.05, 0.05, 0.05)
|
||||||
@@ -44,10 +43,15 @@ start_mags = 3
|
|||||||
bullet_damage = 1
|
bullet_damage = 1
|
||||||
smoke_enabled = false
|
smoke_enabled = false
|
||||||
bullet_force_mod = 5.0
|
bullet_force_mod = 5.0
|
||||||
bullet_speed = 300
|
bullet_speed = 100
|
||||||
|
vibration_weak_magnitude = 0.1
|
||||||
|
vibration_strong_magnitude = 0.5
|
||||||
|
vibration_duration = 0.1
|
||||||
|
chamber_rot_amount = 60.0
|
||||||
shotgun_spread = Vector3(0.1, 0.1, 0.1)
|
shotgun_spread = Vector3(0.1, 0.1, 0.1)
|
||||||
pellets_per_shot = 20
|
pellets_per_shot = 20
|
||||||
blast_power = 50.0
|
blast_power = 50.0
|
||||||
|
hitscan_range = 100.0
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_uqdtd"]
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_uqdtd"]
|
||||||
resource_name = "rocketlauncher12"
|
resource_name = "rocketlauncher12"
|
||||||
@@ -611,7 +615,7 @@ skeleton = NodePath("../../../../../../..")
|
|||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||||
libraries = {
|
libraries = {
|
||||||
"": SubResource("AnimationLibrary_lrhqi")
|
&"": SubResource("AnimationLibrary_lrhqi")
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Audio" type="Node3D" parent="."]
|
[node name="Audio" type="Node3D" parent="."]
|
||||||
|
|||||||
@@ -367,7 +367,7 @@ size = Vector3(1, 0.524719, 0.556091)
|
|||||||
material = ExtResource("17_bp2ds")
|
material = ExtResource("17_bp2ds")
|
||||||
size = Vector3(1.075, 0.61, 0.575)
|
size = Vector3(1.075, 0.61, 0.575)
|
||||||
|
|
||||||
[node name="Chest1" type="RigidBody3D" groups=["persist"]]
|
[node name="Chest1" type="RigidBody3D" node_paths=PackedStringArray("outline_meshes") groups=["persist"]]
|
||||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0)
|
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0)
|
||||||
collision_layer = 32
|
collision_layer = 32
|
||||||
collision_mask = 109
|
collision_mask = 109
|
||||||
@@ -376,6 +376,7 @@ center_of_mass_mode = 1
|
|||||||
continuous_cd = true
|
continuous_cd = true
|
||||||
script = ExtResource("1_0qjnf")
|
script = ExtResource("1_0qjnf")
|
||||||
weapon_drops = Array[Resource]([ExtResource("2_fw6eu"), ExtResource("3_vrqjr"), ExtResource("4_45tks"), ExtResource("5_koj0g"), ExtResource("6_plk4s"), ExtResource("7_t1qyn")])
|
weapon_drops = Array[Resource]([ExtResource("2_fw6eu"), ExtResource("3_vrqjr"), ExtResource("4_45tks"), ExtResource("5_koj0g"), ExtResource("6_plk4s"), ExtResource("7_t1qyn")])
|
||||||
|
outline_meshes = [NodePath("OutlineMesh")]
|
||||||
|
|
||||||
[node name="chest_base" type="MeshInstance3D" parent="."]
|
[node name="chest_base" type="MeshInstance3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.263113, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.263113, 0)
|
||||||
@@ -431,6 +432,6 @@ stream = SubResource("AudioStreamRandomizer_hfqb3")
|
|||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.235504, -0.00180054)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.235504, -0.00180054)
|
||||||
shape = SubResource("BoxShape3D_6k52y")
|
shape = SubResource("BoxShape3D_6k52y")
|
||||||
|
|
||||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
|
[node name="OutlineMesh" type="MeshInstance3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.92717e-10, 0.276406, 0.00334829)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.92717e-10, 0.276406, 0.00334829)
|
||||||
mesh = SubResource("BoxMesh_bp2ds")
|
mesh = SubResource("BoxMesh_bp2ds")
|
||||||
|
|||||||
148
hud.tscn
148
hud.tscn
@@ -34,56 +34,12 @@ grow_vertical = 2
|
|||||||
script = ExtResource("1_7hukm")
|
script = ExtResource("1_7hukm")
|
||||||
radial_stamina = true
|
radial_stamina = true
|
||||||
|
|
||||||
[node name="Money" type="Label" parent="."]
|
[node name="StaticItems" type="Control" parent="."]
|
||||||
layout_mode = 1
|
anchors_preset = 0
|
||||||
anchors_preset = 2
|
offset_right = 40.0
|
||||||
anchor_top = 1.0
|
offset_bottom = 40.0
|
||||||
anchor_bottom = 1.0
|
|
||||||
offset_left = 44.975
|
|
||||||
offset_top = -273.09
|
|
||||||
offset_right = 244.975
|
|
||||||
offset_bottom = -142.09
|
|
||||||
grow_vertical = 0
|
|
||||||
theme = ExtResource("1_22trs")
|
|
||||||
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
|
||||||
theme_override_font_sizes/font_size = 125
|
|
||||||
text = "$"
|
|
||||||
|
|
||||||
[node name="HealthBar" type="ProgressBar" parent="."]
|
[node name="StaminaBar2" type="ProgressBar" parent="StaticItems"]
|
||||||
custom_minimum_size = Vector2(300, 50)
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = 2
|
|
||||||
anchor_top = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
offset_left = 50.38
|
|
||||||
offset_top = -105.315
|
|
||||||
offset_right = 350.38
|
|
||||||
offset_bottom = -55.315
|
|
||||||
grow_vertical = 0
|
|
||||||
theme = ExtResource("1_22trs")
|
|
||||||
theme_override_styles/background = SubResource("StyleBoxFlat_2hn4h")
|
|
||||||
theme_override_styles/fill = SubResource("StyleBoxFlat_axtce")
|
|
||||||
value = 30.45
|
|
||||||
show_percentage = false
|
|
||||||
|
|
||||||
[node name="LeftMargin" type="MarginContainer" parent="."]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = 2
|
|
||||||
anchor_top = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
offset_top = -125.0
|
|
||||||
offset_right = 300.0
|
|
||||||
grow_vertical = 0
|
|
||||||
theme_override_constants/margin_left = 50
|
|
||||||
theme_override_constants/margin_top = 50
|
|
||||||
theme_override_constants/margin_right = 50
|
|
||||||
theme_override_constants/margin_bottom = 50
|
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="LeftMargin"]
|
|
||||||
layout_mode = 2
|
|
||||||
theme_override_constants/separation = 10
|
|
||||||
|
|
||||||
[node name="StaminaBar2" type="ProgressBar" parent="."]
|
|
||||||
custom_minimum_size = Vector2(30, 10)
|
custom_minimum_size = Vector2(30, 10)
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 8
|
anchors_preset = 8
|
||||||
@@ -91,10 +47,10 @@ anchor_left = 0.5
|
|||||||
anchor_top = 0.5
|
anchor_top = 0.5
|
||||||
anchor_right = 0.5
|
anchor_right = 0.5
|
||||||
anchor_bottom = 0.5
|
anchor_bottom = 0.5
|
||||||
offset_left = 50.0
|
offset_left = 606.0
|
||||||
offset_top = 27.0
|
offset_top = 331.0
|
||||||
offset_right = 105.0
|
offset_right = 661.0
|
||||||
offset_bottom = 37.0
|
offset_bottom = 341.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
rotation = -1.5708
|
rotation = -1.5708
|
||||||
@@ -104,7 +60,7 @@ theme_override_styles/fill = SubResource("StyleBoxFlat_axtce")
|
|||||||
value = 35.29
|
value = 35.29
|
||||||
show_percentage = false
|
show_percentage = false
|
||||||
|
|
||||||
[node name="Crosshair" type="TextureRect" parent="." groups=["hud"]]
|
[node name="Crosshair" type="TextureRect" parent="StaticItems" groups=["hud"]]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
offset_right = 396.0
|
offset_right = 396.0
|
||||||
offset_bottom = 396.0
|
offset_bottom = 396.0
|
||||||
@@ -112,7 +68,7 @@ texture = ExtResource("3_mgrwc")
|
|||||||
expand_mode = 3
|
expand_mode = 3
|
||||||
stretch_mode = 4
|
stretch_mode = 4
|
||||||
|
|
||||||
[node name="CrosshairCenter" type="TextureRect" parent="." groups=["hud"]]
|
[node name="CrosshairCenter" type="TextureRect" parent="StaticItems" groups=["hud"]]
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
offset_right = 396.0
|
offset_right = 396.0
|
||||||
offset_bottom = 396.0
|
offset_bottom = 396.0
|
||||||
@@ -121,7 +77,7 @@ texture = ExtResource("4_61fkt")
|
|||||||
expand_mode = 3
|
expand_mode = 3
|
||||||
stretch_mode = 4
|
stretch_mode = 4
|
||||||
|
|
||||||
[node name="StaminaBar" type="TextureProgressBar" parent="."]
|
[node name="StaminaBar" type="TextureProgressBar" parent="StaticItems"]
|
||||||
material = SubResource("CanvasItemMaterial_ytfhs")
|
material = SubResource("CanvasItemMaterial_ytfhs")
|
||||||
layout_mode = 0
|
layout_mode = 0
|
||||||
offset_right = 370.0
|
offset_right = 370.0
|
||||||
@@ -131,15 +87,77 @@ value = 49.0
|
|||||||
fill_mode = 5
|
fill_mode = 5
|
||||||
texture_progress = ExtResource("4_ooaul")
|
texture_progress = ExtResource("4_ooaul")
|
||||||
|
|
||||||
[node name="GunInfo" type="MarginContainer" parent="."]
|
[node name="WobbleItems" type="Control" parent="."]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 8
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="Money" type="Label" parent="WobbleItems"]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 2
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_left = 44.975
|
||||||
|
offset_top = 334.91
|
||||||
|
offset_right = 244.975
|
||||||
|
offset_bottom = 465.91
|
||||||
|
grow_vertical = 0
|
||||||
|
theme = ExtResource("1_22trs")
|
||||||
|
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
||||||
|
theme_override_font_sizes/font_size = 125
|
||||||
|
text = "$"
|
||||||
|
|
||||||
|
[node name="HealthBar" type="ProgressBar" parent="WobbleItems"]
|
||||||
|
custom_minimum_size = Vector2(300, 50)
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 2
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_left = 50.38
|
||||||
|
offset_top = 502.685
|
||||||
|
offset_right = 350.38
|
||||||
|
offset_bottom = 552.685
|
||||||
|
grow_vertical = 0
|
||||||
|
theme = ExtResource("1_22trs")
|
||||||
|
theme_override_styles/background = SubResource("StyleBoxFlat_2hn4h")
|
||||||
|
theme_override_styles/fill = SubResource("StyleBoxFlat_axtce")
|
||||||
|
value = 30.45
|
||||||
|
show_percentage = false
|
||||||
|
|
||||||
|
[node name="LeftMargin" type="MarginContainer" parent="WobbleItems"]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 2
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_top = 483.0
|
||||||
|
offset_right = 300.0
|
||||||
|
offset_bottom = 608.0
|
||||||
|
grow_vertical = 0
|
||||||
|
theme_override_constants/margin_left = 50
|
||||||
|
theme_override_constants/margin_top = 50
|
||||||
|
theme_override_constants/margin_right = 50
|
||||||
|
theme_override_constants/margin_bottom = 50
|
||||||
|
|
||||||
|
[node name="VBoxContainer" type="VBoxContainer" parent="WobbleItems/LeftMargin"]
|
||||||
|
layout_mode = 2
|
||||||
|
theme_override_constants/separation = 10
|
||||||
|
|
||||||
|
[node name="GunInfo" type="MarginContainer" parent="WobbleItems"]
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 3
|
anchors_preset = 3
|
||||||
anchor_left = 1.0
|
anchor_left = 1.0
|
||||||
anchor_top = 1.0
|
anchor_top = 1.0
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
offset_left = -734.0
|
offset_left = 378.0
|
||||||
offset_top = -372.0
|
offset_top = 236.0
|
||||||
|
offset_right = 1112.0
|
||||||
|
offset_bottom = 608.0
|
||||||
grow_horizontal = 0
|
grow_horizontal = 0
|
||||||
grow_vertical = 0
|
grow_vertical = 0
|
||||||
theme = ExtResource("1_22trs")
|
theme = ExtResource("1_22trs")
|
||||||
@@ -148,7 +166,7 @@ theme_override_constants/margin_top = 50
|
|||||||
theme_override_constants/margin_right = 50
|
theme_override_constants/margin_right = 50
|
||||||
theme_override_constants/margin_bottom = 50
|
theme_override_constants/margin_bottom = 50
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="GunInfo"]
|
[node name="VBoxContainer" type="VBoxContainer" parent="WobbleItems/GunInfo"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 8
|
size_flags_horizontal = 8
|
||||||
size_flags_vertical = 8
|
size_flags_vertical = 8
|
||||||
@@ -156,7 +174,7 @@ theme = ExtResource("1_22trs")
|
|||||||
theme_override_constants/separation = 10
|
theme_override_constants/separation = 10
|
||||||
alignment = 2
|
alignment = 2
|
||||||
|
|
||||||
[node name="Gun Name" type="Label" parent="GunInfo/VBoxContainer"]
|
[node name="Gun Name" type="Label" parent="WobbleItems/GunInfo/VBoxContainer"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme = ExtResource("1_22trs")
|
theme = ExtResource("1_22trs")
|
||||||
theme_type_variation = &"TextShadow"
|
theme_type_variation = &"TextShadow"
|
||||||
@@ -165,26 +183,26 @@ theme_override_constants/outline_size = 15
|
|||||||
text = "Gun Name"
|
text = "Gun Name"
|
||||||
horizontal_alignment = 2
|
horizontal_alignment = 2
|
||||||
|
|
||||||
[node name="AmmoCounter" type="HBoxContainer" parent="GunInfo/VBoxContainer"]
|
[node name="AmmoCounter" type="HBoxContainer" parent="WobbleItems/GunInfo/VBoxContainer"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
theme = ExtResource("1_22trs")
|
theme = ExtResource("1_22trs")
|
||||||
theme_override_constants/separation = 50
|
theme_override_constants/separation = 50
|
||||||
alignment = 2
|
alignment = 2
|
||||||
|
|
||||||
[node name="AmmoCurrent" type="Label" parent="GunInfo/VBoxContainer/AmmoCounter"]
|
[node name="AmmoCurrent" type="Label" parent="WobbleItems/GunInfo/VBoxContainer/AmmoCounter"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme = ExtResource("1_22trs")
|
theme = ExtResource("1_22trs")
|
||||||
theme_override_constants/outline_size = 15
|
theme_override_constants/outline_size = 15
|
||||||
text = "XXX"
|
text = "XXX"
|
||||||
horizontal_alignment = 2
|
horizontal_alignment = 2
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="GunInfo/VBoxContainer/AmmoCounter"]
|
[node name="Label" type="Label" parent="WobbleItems/GunInfo/VBoxContainer/AmmoCounter"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme_override_constants/outline_size = 15
|
theme_override_constants/outline_size = 15
|
||||||
text = "-"
|
text = "-"
|
||||||
|
|
||||||
[node name="AmmoReserve" type="Label" parent="GunInfo/VBoxContainer/AmmoCounter"]
|
[node name="AmmoReserve" type="Label" parent="WobbleItems/GunInfo/VBoxContainer/AmmoCounter"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme = ExtResource("1_22trs")
|
theme = ExtResource("1_22trs")
|
||||||
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
theme_override_colors/font_shadow_color = Color(0, 0, 0, 1)
|
||||||
|
|||||||
@@ -14,13 +14,12 @@ config/name="First Person Test"
|
|||||||
config/tags=PackedStringArray("fps")
|
config/tags=PackedStringArray("fps")
|
||||||
run/main_scene="uid://f7e0v1r6ra6c"
|
run/main_scene="uid://f7e0v1r6ra6c"
|
||||||
config/features=PackedStringArray("4.4", "Forward Plus")
|
config/features=PackedStringArray("4.4", "Forward Plus")
|
||||||
config/icon="res://icon.svg"
|
config/icon="uid://gx3iw54iemho"
|
||||||
|
|
||||||
[autoload]
|
[autoload]
|
||||||
|
|
||||||
SaveLoad="*res://scripts/save_load.gd"
|
SaveLoad="*res://scripts/save_load.gd"
|
||||||
SignalBus="*res://scripts/signal_bus.gd"
|
SignalBus="*res://scripts/signal_bus.gd"
|
||||||
SwitchBasic="*res://scripts/switch_basic.gd"
|
|
||||||
RigidbodyGeneric="*res://scripts/rigidbody_generic.gd"
|
RigidbodyGeneric="*res://scripts/rigidbody_generic.gd"
|
||||||
GameGlobals="*res://scripts/game_globals.gd"
|
GameGlobals="*res://scripts/game_globals.gd"
|
||||||
HelperFuncs="*res://scripts/HelperFuncs.gd"
|
HelperFuncs="*res://scripts/HelperFuncs.gd"
|
||||||
|
|||||||
@@ -331,7 +331,6 @@ _data = {
|
|||||||
[node name="Realtime Day Night Cycle" parent="." instance=ExtResource("26_qoxo0")]
|
[node name="Realtime Day Night Cycle" parent="." instance=ExtResource("26_qoxo0")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.9891, 1.53028, 4.26966)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.9891, 1.53028, 4.26966)
|
||||||
set_time = 18.25
|
set_time = 18.25
|
||||||
north_offset = null
|
|
||||||
|
|
||||||
[node name="CSGBox3D" type="CSGBox3D" parent="."]
|
[node name="CSGBox3D" type="CSGBox3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.54059, -4.88213, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.54059, -4.88213, 0)
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ class_name Chest
|
|||||||
|
|
||||||
@export var weapon_drops : Array[Resource]
|
@export var weapon_drops : Array[Resource]
|
||||||
@export var health : float = 30
|
@export var health : float = 30
|
||||||
|
@export var outline_meshes : Array[MeshInstance3D]
|
||||||
@onready var serial_label: Label3D = $chest_lid/serial_number
|
@onready var serial_label: Label3D = $chest_lid/serial_number
|
||||||
|
|
||||||
var serial_number
|
var serial_number
|
||||||
@@ -29,9 +30,15 @@ func _process(delta: float) -> void:
|
|||||||
func hit(dam):
|
func hit(dam):
|
||||||
health -= dam
|
health -= dam
|
||||||
if !open and health <= 0:
|
if !open and health <= 0:
|
||||||
anim_player.play("open")
|
open_chest()
|
||||||
open = true
|
|
||||||
|
func open_chest():
|
||||||
|
anim_player.play("open")
|
||||||
|
if outline_meshes != null:
|
||||||
|
for i in outline_meshes:
|
||||||
|
i.visible = false
|
||||||
|
open = true
|
||||||
|
|
||||||
func spawn_drop():
|
func spawn_drop():
|
||||||
drop_weapon.position = item_spawn.global_position
|
drop_weapon.position = item_spawn.global_position
|
||||||
drop_weapon.transform.basis = item_spawn.global_transform.basis
|
drop_weapon.transform.basis = item_spawn.global_transform.basis
|
||||||
|
|||||||
@@ -16,18 +16,19 @@ var crosshair_target
|
|||||||
|
|
||||||
@onready var level_control = get_tree().current_scene
|
@onready var level_control = get_tree().current_scene
|
||||||
@onready var player = level_control.player
|
@onready var player = level_control.player
|
||||||
@onready var stamina_bar: TextureProgressBar = $StaminaBar
|
@onready var stamina_bar: TextureProgressBar = $StaticItems/StaminaBar
|
||||||
@onready var stamina_bar_2: ProgressBar = $StaminaBar2
|
@onready var stamina_bar_2: ProgressBar = $StaticItems/StaminaBar2
|
||||||
@onready var health_bar: ProgressBar = $HealthBar
|
@onready var health_bar: ProgressBar = $WobbleItems/HealthBar
|
||||||
@onready var ammo_counter: HBoxContainer = $GunInfo/VBoxContainer/AmmoCounter
|
@onready var ammo_counter: HBoxContainer = $WobbleItems/GunInfo/VBoxContainer/AmmoCounter
|
||||||
@onready var gun_name: Label = $"GunInfo/VBoxContainer/Gun Name"
|
@onready var gun_name: Label = $"WobbleItems/GunInfo/VBoxContainer/Gun Name"
|
||||||
@onready var ammo_current: Label = $GunInfo/VBoxContainer/AmmoCounter/AmmoCurrent
|
@onready var ammo_current: Label = $WobbleItems/GunInfo/VBoxContainer/AmmoCounter/AmmoCurrent
|
||||||
@onready var ammo_reserve: Label = $GunInfo/VBoxContainer/AmmoCounter/AmmoReserve
|
@onready var ammo_reserve: Label = $WobbleItems/GunInfo/VBoxContainer/AmmoCounter/AmmoReserve
|
||||||
@onready var gun_info: MarginContainer = $GunInfo
|
@onready var gun_info: MarginContainer = $WobbleItems/GunInfo
|
||||||
@onready var money: Label = $Money
|
@onready var money: Label = $WobbleItems/Money
|
||||||
@onready var crosshair: TextureRect = $Crosshair
|
@onready var crosshair: TextureRect = $StaticItems/Crosshair
|
||||||
@onready var crosshair_center: TextureRect = $CrosshairCenter
|
@onready var crosshair_center: TextureRect = $StaticItems/CrosshairCenter
|
||||||
@onready var pickup_item_indicator = preload("res://assets/pickup_item_indicator.tscn")
|
@onready var pickup_item_indicator = preload("res://assets/pickup_item_indicator.tscn")
|
||||||
|
@onready var wobble_items: Control = $WobbleItems
|
||||||
|
|
||||||
const FULL_WHITE = Color(1, 1, 1, 1)
|
const FULL_WHITE = Color(1, 1, 1, 1)
|
||||||
const TRANSPARENT = Color(1, 1, 1, 0)
|
const TRANSPARENT = Color(1, 1, 1, 0)
|
||||||
@@ -173,6 +174,8 @@ func _process(delta: float) -> void:
|
|||||||
|
|
||||||
## SPAWN NOTIFICATIONS
|
## SPAWN NOTIFICATIONS
|
||||||
spawn_notifs()
|
spawn_notifs()
|
||||||
|
|
||||||
|
wobble_items.position = hud_wobble(delta)
|
||||||
|
|
||||||
func crosshair_size_change():
|
func crosshair_size_change():
|
||||||
crosshair_target += Vector2(20,20)
|
crosshair_target += Vector2(20,20)
|
||||||
@@ -220,3 +223,20 @@ func spawn_notifs():
|
|||||||
|
|
||||||
func player_hit():
|
func player_hit():
|
||||||
crosshair_size_change()
|
crosshair_size_change()
|
||||||
|
|
||||||
|
func hud_wobble(delta):
|
||||||
|
var viewport_height_adj = (get_viewport().size.y/1080)
|
||||||
|
|
||||||
|
var HUD_WOBBLE_MAX : float = 40 * viewport_height_adj
|
||||||
|
var MOUSE_AMT = 10 * viewport_height_adj
|
||||||
|
var VELOCITY_AMT = 100 * viewport_height_adj
|
||||||
|
var HUD_SPEED = 10 * viewport_height_adj
|
||||||
|
|
||||||
|
var dir_mouse = Vector2(-player.mouse_input.x * MOUSE_AMT,-player.mouse_input.y * MOUSE_AMT)
|
||||||
|
var velocity_dir_transformed = player.velocity.normalized() * player.global_basis
|
||||||
|
var velocity_lengh_clamped = clamp(player.velocity.length(),-VELOCITY_AMT,VELOCITY_AMT)
|
||||||
|
var dir_velocity = Vector2(-velocity_dir_transformed.x * velocity_lengh_clamped,velocity_dir_transformed.y * velocity_lengh_clamped)
|
||||||
|
var dir_clamped = clamp(dir_mouse + dir_velocity,Vector2(-HUD_WOBBLE_MAX,-HUD_WOBBLE_MAX),Vector2(HUD_WOBBLE_MAX,HUD_WOBBLE_MAX))
|
||||||
|
var offset = lerp(position, dir_clamped, delta * HUD_SPEED)
|
||||||
|
|
||||||
|
return offset
|
||||||
|
|||||||
@@ -476,7 +476,6 @@ func _physics_process(delta):
|
|||||||
joypad_look()
|
joypad_look()
|
||||||
aim_down_sights(delta)
|
aim_down_sights(delta)
|
||||||
flashlight_toggle()
|
flashlight_toggle()
|
||||||
hud_wobble(delta)
|
|
||||||
hold_item(delta)
|
hold_item(delta)
|
||||||
move_and_slide()
|
move_and_slide()
|
||||||
crouch(delta)
|
crouch(delta)
|
||||||
@@ -591,23 +590,6 @@ func aim_down_sights(delta):
|
|||||||
else:
|
else:
|
||||||
gun.position = lerp(gun.position, weapon_start_pos,(delta * 100)/Engine.time_scale)
|
gun.position = lerp(gun.position, weapon_start_pos,(delta * 100)/Engine.time_scale)
|
||||||
|
|
||||||
func hud_wobble(delta):
|
|
||||||
var viewport_height_adj = (get_viewport().size.y/1080)
|
|
||||||
|
|
||||||
var HUD_WOBBLE_MAX : float = 40 * viewport_height_adj
|
|
||||||
var MOUSE_AMT = 10 * viewport_height_adj
|
|
||||||
var VELOCITY_AMT = 100 * viewport_height_adj
|
|
||||||
var HUD_SPEED = 10 * viewport_height_adj
|
|
||||||
|
|
||||||
var dir_mouse = Vector2(-mouse_input.x * MOUSE_AMT,-mouse_input.y * MOUSE_AMT)
|
|
||||||
var velocity_dir_transformed = velocity.normalized() * global_basis
|
|
||||||
var velocity_lengh_clamped = clamp(velocity.length(),-VELOCITY_AMT,VELOCITY_AMT)
|
|
||||||
var dir_velocity = Vector2(-velocity_dir_transformed.x * velocity_lengh_clamped,velocity_dir_transformed.y * velocity_lengh_clamped)
|
|
||||||
var dir_clamped = clamp(dir_mouse + dir_velocity,Vector2(-HUD_WOBBLE_MAX,-HUD_WOBBLE_MAX),Vector2(HUD_WOBBLE_MAX,HUD_WOBBLE_MAX))
|
|
||||||
var offset = lerp(hud.position, dir_clamped, delta * HUD_SPEED)
|
|
||||||
hud.position = offset
|
|
||||||
hud.crosshair.position = -offset
|
|
||||||
|
|
||||||
func grab_moveable(body):
|
func grab_moveable(body):
|
||||||
held_item_cache = {
|
held_item_cache = {
|
||||||
"gravity_scale" : body.gravity_scale
|
"gravity_scale" : body.gravity_scale
|
||||||
|
|||||||
@@ -10,3 +10,12 @@ var bullet_force_mod
|
|||||||
var bullet_speed
|
var bullet_speed
|
||||||
var blast_power
|
var blast_power
|
||||||
var blast_radius
|
var blast_radius
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
visible = false
|
||||||
|
|
||||||
|
func _process(delta: float) -> void:
|
||||||
|
var distance_from_player = abs(self.global_position - player_position)
|
||||||
|
|
||||||
|
if distance_from_player.length() > 2:
|
||||||
|
visible = true
|
||||||
|
|||||||
@@ -5,11 +5,6 @@ extends RigidBody3D
|
|||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
add_to_group("persist")
|
add_to_group("persist")
|
||||||
|
|
||||||
|
|
||||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
|
||||||
func _process(delta: float) -> void:
|
|
||||||
pass
|
|
||||||
|
|
||||||
func save():
|
func save():
|
||||||
var save_dict = {
|
var save_dict = {
|
||||||
"filename" : get_scene_file_path(),
|
"filename" : get_scene_file_path(),
|
||||||
|
|||||||
Reference in New Issue
Block a user