pretty happy with ladder movement right now
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
[gd_scene load_steps=116 format=4 uid="uid://6agmt1hqlhww"]
|
[gd_scene load_steps=112 format=4 uid="uid://6agmt1hqlhww"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_sbpvn"]
|
[ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_sbpvn"]
|
||||||
[ext_resource type="PackedScene" uid="uid://brl0bsqjl5dg3" path="res://assets/mac_10.tscn" id="2_fn4vb"]
|
[ext_resource type="PackedScene" uid="uid://brl0bsqjl5dg3" path="res://assets/mac_10.tscn" id="2_fn4vb"]
|
||||||
@@ -25,7 +25,6 @@
|
|||||||
[ext_resource type="Script" path="res://scripts/room_manager.gd" id="13_84vop"]
|
[ext_resource type="Script" path="res://scripts/room_manager.gd" id="13_84vop"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bessq6hl7qsh8" path="res://assets/stats.tscn" id="13_gu6tc"]
|
[ext_resource type="PackedScene" uid="uid://bessq6hl7qsh8" path="res://assets/stats.tscn" id="13_gu6tc"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cgo4qyul7ix5p" path="res://assets/ladder.tscn" id="13_qu8oi"]
|
[ext_resource type="PackedScene" uid="uid://cgo4qyul7ix5p" path="res://assets/ladder.tscn" id="13_qu8oi"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cdpxctwwi12j" path="res://assets/ladder_collision_check.tscn" id="14_gijx0"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://b3t8fra7evqfb" path="res://assets/Models/building_1.tscn" id="15_ds1t8"]
|
[ext_resource type="PackedScene" uid="uid://b3t8fra7evqfb" path="res://assets/Models/building_1.tscn" id="15_ds1t8"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cp7tsicuudd6v" path="res://assets/boxcar_1.tscn" id="16_65evy"]
|
[ext_resource type="PackedScene" uid="uid://cp7tsicuudd6v" path="res://assets/boxcar_1.tscn" id="16_65evy"]
|
||||||
[ext_resource type="Script" path="res://scripts/room_check.gd" id="16_ba8wj"]
|
[ext_resource type="Script" path="res://scripts/room_check.gd" id="16_ba8wj"]
|
||||||
@@ -44,7 +43,7 @@
|
|||||||
[ext_resource type="PackedScene" uid="uid://bcmd7elfjhppe" path="res://assets/tree_1.tscn" id="43_o23bq"]
|
[ext_resource type="PackedScene" uid="uid://bcmd7elfjhppe" path="res://assets/tree_1.tscn" id="43_o23bq"]
|
||||||
[ext_resource type="PackedScene" uid="uid://df34olntmk0wl" path="res://assets/vent_1.tscn" id="44_b0rr7"]
|
[ext_resource type="PackedScene" uid="uid://df34olntmk0wl" path="res://assets/vent_1.tscn" id="44_b0rr7"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dlhjacsike5a4" path="res://assets/oildrum1.tscn" id="45_eatji"]
|
[ext_resource type="PackedScene" uid="uid://dlhjacsike5a4" path="res://assets/oildrum1.tscn" id="45_eatji"]
|
||||||
[ext_resource type="Shader" path="res://assets/Shaders/outline.gdshader" id="46_avsk5"]
|
[ext_resource type="PackedScene" uid="uid://bj1y0fbjtul4a" path="res://post_processing.tscn" id="45_lveut"]
|
||||||
|
|
||||||
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_eiud5"]
|
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_eiud5"]
|
||||||
sky_horizon_color = Color(0.64625, 0.65575, 0.67075, 1)
|
sky_horizon_color = Color(0.64625, 0.65575, 0.67075, 1)
|
||||||
@@ -896,29 +895,6 @@ _data = {
|
|||||||
"RESET": SubResource("Animation_3oaw1")
|
"RESET": SubResource("Animation_3oaw1")
|
||||||
}
|
}
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_axa5q"]
|
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_loib4"]
|
|
||||||
render_priority = 0
|
|
||||||
next_pass = SubResource("ShaderMaterial_axa5q")
|
|
||||||
shader = ExtResource("46_avsk5")
|
|
||||||
shader_parameter/outlineColor = Color(0, 0, 0, 1)
|
|
||||||
shader_parameter/depth_threshold = 0.025
|
|
||||||
shader_parameter/normal_threshold = 0.5
|
|
||||||
shader_parameter/normal_smoothing = 0.25
|
|
||||||
shader_parameter/max_thickness = 1.3
|
|
||||||
shader_parameter/min_thickness = 0.5
|
|
||||||
shader_parameter/max_distance = 75.0
|
|
||||||
shader_parameter/min_distance = 2.0
|
|
||||||
shader_parameter/grazing_fresnel_power = 5.0
|
|
||||||
shader_parameter/grazing_angle_mask_power = 1.0
|
|
||||||
shader_parameter/grazing_angle_modulation_factor = 50.0
|
|
||||||
|
|
||||||
[sub_resource type="QuadMesh" id="QuadMesh_ootk3"]
|
|
||||||
material = SubResource("ShaderMaterial_loib4")
|
|
||||||
flip_faces = true
|
|
||||||
size = Vector2(2, 2)
|
|
||||||
|
|
||||||
[node name="BLOCKOUT2Test" type="Node3D" node_paths=PackedStringArray("player")]
|
[node name="BLOCKOUT2Test" type="Node3D" node_paths=PackedStringArray("player")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.016016, 0.0225029, -0.0192337)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.016016, 0.0225029, -0.0192337)
|
||||||
script = ExtResource("1_sbpvn")
|
script = ExtResource("1_sbpvn")
|
||||||
@@ -1267,9 +1243,6 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.8461, -7.8707, 15.6061)
|
|||||||
[node name="Ladder2" parent="." instance=ExtResource("13_qu8oi")]
|
[node name="Ladder2" parent="." instance=ExtResource("13_qu8oi")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.8461, -3.91327, 15.6061)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.8461, -3.91327, 15.6061)
|
||||||
|
|
||||||
[node name="LadderCollisionCheck" parent="." instance=ExtResource("14_gijx0")]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 0.683592, 0, 0, 0, 1, 3.80189, -5.50271, 16.0033)
|
|
||||||
|
|
||||||
[node name="Building1" parent="." instance=ExtResource("15_ds1t8")]
|
[node name="Building1" parent="." instance=ExtResource("15_ds1t8")]
|
||||||
transform = Transform3D(-6.11959e-08, 0, 1.4, 0, 1.4, 0, -1.4, 0, -6.11959e-08, 21.5803, -472.358, 97.8783)
|
transform = Transform3D(-6.11959e-08, 0, 1.4, 0, 1.4, 0, -1.4, 0, -6.11959e-08, 21.5803, -472.358, 97.8783)
|
||||||
|
|
||||||
@@ -1291,9 +1264,6 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.100218, 24.4327, 46.4567)
|
|||||||
[node name="Ladder6" parent="." instance=ExtResource("13_qu8oi")]
|
[node name="Ladder6" parent="." instance=ExtResource("13_qu8oi")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.100218, 28.3013, 46.4567)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.100218, 28.3013, 46.4567)
|
||||||
|
|
||||||
[node name="LadderCollisionCheck2" parent="." instance=ExtResource("14_gijx0")]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1.88048, 0, 0, 0, 0.180683, -0.0459655, 17.4816, 46.5358)
|
|
||||||
|
|
||||||
[node name="pistol1_pickup" parent="." instance=ExtResource("17_buv6l")]
|
[node name="pistol1_pickup" parent="." instance=ExtResource("17_buv6l")]
|
||||||
transform = Transform3D(0.558498, -0.829506, 0, 0.829506, 0.558498, 0, 0, 0, 1, 35.2023, 17.3708, 122.41)
|
transform = Transform3D(0.558498, -0.829506, 0, 0.829506, 0.558498, 0, 0, 0, 1, 35.2023, 17.3708, 122.41)
|
||||||
|
|
||||||
@@ -2064,10 +2034,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.46674, 27.457, -7.49986)
|
|||||||
[node name="Oildrum2" parent="." instance=ExtResource("45_eatji")]
|
[node name="Oildrum2" parent="." instance=ExtResource("45_eatji")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.84071, 27.457, 3.20335)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.84071, 27.457, 3.20335)
|
||||||
|
|
||||||
[node name="PostProcessing" type="MeshInstance3D" parent="."]
|
[node name="PostProcessing" parent="." instance=ExtResource("45_lveut")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.271851, 1.43588, -9.80906)
|
|
||||||
extra_cull_margin = 16384.0
|
|
||||||
mesh = SubResource("QuadMesh_ootk3")
|
|
||||||
|
|
||||||
[connection signal="body_entered" from="Room1/RoomCheck" to="Room1/RoomCheck" method="_on_body_entered"]
|
[connection signal="body_entered" from="Room1/RoomCheck" to="Room1/RoomCheck" method="_on_body_entered"]
|
||||||
[connection signal="body_exited" from="Room1/RoomCheck" to="Room1/RoomCheck" method="_on_body_exited"]
|
[connection signal="body_exited" from="Room1/RoomCheck" to="Room1/RoomCheck" method="_on_body_exited"]
|
||||||
|
|||||||
@@ -580,6 +580,7 @@ attenuation_model = 1
|
|||||||
autoplay = true
|
autoplay = true
|
||||||
|
|
||||||
[node name="Magnet_Timer" type="Timer" parent="."]
|
[node name="Magnet_Timer" type="Timer" parent="."]
|
||||||
|
wait_time = 0.5
|
||||||
one_shot = true
|
one_shot = true
|
||||||
autostart = true
|
autostart = true
|
||||||
|
|
||||||
|
|||||||
@@ -59,3 +59,6 @@ skeleton = NodePath("")
|
|||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||||
transform = Transform3D(3.57628e-07, 1, 7.54979e-08, 1, -3.57628e-07, -7.54979e-08, -7.54979e-08, 7.54979e-08, -1, 0, 0, 0)
|
transform = Transform3D(3.57628e-07, 1, 7.54979e-08, 1, -3.57628e-07, -7.54979e-08, -7.54979e-08, 7.54979e-08, -1, 0, 0, 0)
|
||||||
shape = SubResource("ConvexPolygonShape3D_wmqg7")
|
shape = SubResource("ConvexPolygonShape3D_wmqg7")
|
||||||
|
|
||||||
|
[node name="ladder_top" type="Node3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.677, 0)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
[ext_resource type="Script" path="res://scripts/ladder.gd" id="1_ugi45"]
|
[ext_resource type="Script" path="res://scripts/ladder.gd" id="1_ugi45"]
|
||||||
|
|
||||||
[sub_resource type="BoxShape3D" id="BoxShape3D_gxu3i"]
|
[sub_resource type="BoxShape3D" id="BoxShape3D_gxu3i"]
|
||||||
size = Vector3(1, 8.23889, 1.6582)
|
size = Vector3(1, 10, 1)
|
||||||
|
|
||||||
[node name="LadderCollisionCheck" type="Area3D"]
|
[node name="LadderCollisionCheck" type="Area3D"]
|
||||||
collision_layer = 2
|
collision_layer = 2
|
||||||
@@ -11,8 +11,11 @@ collision_mask = 2
|
|||||||
script = ExtResource("1_ugi45")
|
script = ExtResource("1_ugi45")
|
||||||
|
|
||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.67353, 0.329102)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, 0.329)
|
||||||
shape = SubResource("BoxShape3D_gxu3i")
|
shape = SubResource("BoxShape3D_gxu3i")
|
||||||
|
|
||||||
|
[node name="CollisionMidpoint" type="Node3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, 0)
|
||||||
|
|
||||||
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
|
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
|
||||||
[connection signal="body_exited" from="." to="." method="_on_body_exited"]
|
[connection signal="body_exited" from="." to="." method="_on_body_exited"]
|
||||||
|
|||||||
30
post_processing.tscn
Normal file
30
post_processing.tscn
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
[gd_scene load_steps=5 format=3 uid="uid://bj1y0fbjtul4a"]
|
||||||
|
|
||||||
|
[ext_resource type="Shader" path="res://assets/Shaders/outline.gdshader" id="1_ri2g1"]
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_axa5q"]
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_loib4"]
|
||||||
|
render_priority = 0
|
||||||
|
next_pass = SubResource("ShaderMaterial_axa5q")
|
||||||
|
shader = ExtResource("1_ri2g1")
|
||||||
|
shader_parameter/outlineColor = Color(0, 0, 0, 1)
|
||||||
|
shader_parameter/depth_threshold = 0.025
|
||||||
|
shader_parameter/normal_threshold = 0.5
|
||||||
|
shader_parameter/normal_smoothing = 0.25
|
||||||
|
shader_parameter/max_thickness = 1.5
|
||||||
|
shader_parameter/min_thickness = 0.75
|
||||||
|
shader_parameter/max_distance = 75.0
|
||||||
|
shader_parameter/min_distance = 2.0
|
||||||
|
shader_parameter/grazing_fresnel_power = 5.0
|
||||||
|
shader_parameter/grazing_angle_mask_power = 1.0
|
||||||
|
shader_parameter/grazing_angle_modulation_factor = 50.0
|
||||||
|
|
||||||
|
[sub_resource type="QuadMesh" id="QuadMesh_ootk3"]
|
||||||
|
material = SubResource("ShaderMaterial_loib4")
|
||||||
|
flip_faces = true
|
||||||
|
size = Vector2(2, 2)
|
||||||
|
|
||||||
|
[node name="PostProcessing" type="MeshInstance3D"]
|
||||||
|
extra_cull_margin = 16384.0
|
||||||
|
mesh = SubResource("QuadMesh_ootk3")
|
||||||
@@ -11,7 +11,7 @@ config_version=5
|
|||||||
[application]
|
[application]
|
||||||
|
|
||||||
config/name="First Person Test"
|
config/name="First Person Test"
|
||||||
run/main_scene="res://assets/blockout_2.tscn"
|
run/main_scene="res://scenes/blockout_4.tscn"
|
||||||
config/features=PackedStringArray("4.3", "Forward Plus")
|
config/features=PackedStringArray("4.3", "Forward Plus")
|
||||||
config/icon="res://icon.svg"
|
config/icon="res://icon.svg"
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
[gd_scene load_steps=26 format=3 uid="uid://breenfpt04iua"]
|
[gd_scene load_steps=27 format=3 uid="uid://breenfpt04iua"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_8g3mj"]
|
[ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_8g3mj"]
|
||||||
[ext_resource type="PackedScene" uid="uid://xerc06hjfnbf" path="res://assets/LevelBlockouts/blockout4.blend" id="1_038d8"]
|
[ext_resource type="PackedScene" uid="uid://xerc06hjfnbf" path="res://assets/LevelBlockouts/blockout4.blend" id="1_038d8"]
|
||||||
[ext_resource type="PackedScene" uid="uid://drwae3loscbw7" path="res://assets/player.tscn" id="4_ykmsc"]
|
[ext_resource type="PackedScene" uid="uid://drwae3loscbw7" path="res://assets/player.tscn" id="4_ykmsc"]
|
||||||
[ext_resource type="PackedScene" uid="uid://df34olntmk0wl" path="res://assets/vent_1.tscn" id="5_hc1cs"]
|
[ext_resource type="PackedScene" uid="uid://df34olntmk0wl" path="res://assets/vent_1.tscn" id="5_hc1cs"]
|
||||||
[ext_resource type="PackedScene" uid="uid://20csd6dmwj4y" path="res://assets/jump_platform.tscn" id="6_p3qak"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bycbdb5u5ewgl" path="res://assets/tree_2.tscn" id="7_t1egx"]
|
[ext_resource type="PackedScene" uid="uid://bycbdb5u5ewgl" path="res://assets/tree_2.tscn" id="7_t1egx"]
|
||||||
[ext_resource type="PackedScene" uid="uid://do6gt53xr2l23" path="res://assets/garbage_bin.tscn" id="8_xilbw"]
|
[ext_resource type="PackedScene" uid="uid://do6gt53xr2l23" path="res://assets/garbage_bin.tscn" id="8_xilbw"]
|
||||||
[ext_resource type="PackedScene" uid="uid://brpsfqr85xi35" path="res://assets/file_cabinet.tscn" id="9_hveq1"]
|
[ext_resource type="PackedScene" uid="uid://brpsfqr85xi35" path="res://assets/file_cabinet.tscn" id="9_hveq1"]
|
||||||
@@ -21,6 +20,8 @@
|
|||||||
[ext_resource type="PackedScene" uid="uid://dws4iro7820fc" path="res://assets/pistol1_pickup.tscn" id="19_1o424"]
|
[ext_resource type="PackedScene" uid="uid://dws4iro7820fc" path="res://assets/pistol1_pickup.tscn" id="19_1o424"]
|
||||||
[ext_resource type="PackedScene" uid="uid://clu76sc4uoswn" path="res://assets/rocketlauncher_pickup.tscn" id="20_4cdch"]
|
[ext_resource type="PackedScene" uid="uid://clu76sc4uoswn" path="res://assets/rocketlauncher_pickup.tscn" id="20_4cdch"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dws2vwfxubqvb" path="res://assets/cannon.tscn" id="21_24v0y"]
|
[ext_resource type="PackedScene" uid="uid://dws2vwfxubqvb" path="res://assets/cannon.tscn" id="21_24v0y"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://cdpxctwwi12j" path="res://assets/ladder_collision_check.tscn" id="22_lsb7i"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://cgo4qyul7ix5p" path="res://assets/ladder.tscn" id="22_tt78r"]
|
||||||
|
|
||||||
[sub_resource type="Environment" id="Environment_q4t3f"]
|
[sub_resource type="Environment" id="Environment_q4t3f"]
|
||||||
ssr_enabled = true
|
ssr_enabled = true
|
||||||
@@ -71,10 +72,6 @@ transform = Transform3D(1, 0.000164476, 0.000583754, -0.000165075, 0.999999, 0.0
|
|||||||
[node name="Vent1" parent="." instance=ExtResource("5_hc1cs")]
|
[node name="Vent1" parent="." instance=ExtResource("5_hc1cs")]
|
||||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0.71, 5.67755)
|
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0.71, 5.67755)
|
||||||
|
|
||||||
[node name="JumpPlatform" parent="." instance=ExtResource("6_p3qak")]
|
|
||||||
transform = Transform3D(2, 0, 0, 0, 2, 0, 0, 0, 2, 34.3221, 6.80971, 12.7129)
|
|
||||||
jump_amount = 30
|
|
||||||
|
|
||||||
[node name="Tree2" parent="." instance=ExtResource("7_t1egx")]
|
[node name="Tree2" parent="." instance=ExtResource("7_t1egx")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.25018, -0.176033, -39.0611)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.25018, -0.176033, -39.0611)
|
||||||
|
|
||||||
@@ -680,3 +677,27 @@ transform = Transform3D(0.978792, -0.185004, 0.0879728, 0, 0.42944, 0.903096, -0
|
|||||||
CANNON_MIN_POWER = 20
|
CANNON_MIN_POWER = 20
|
||||||
CANNON_MAX_POWER = 50
|
CANNON_MAX_POWER = 50
|
||||||
TIMER_MAX = 10.0
|
TIMER_MAX = 10.0
|
||||||
|
|
||||||
|
[node name="Ladder" parent="." instance=ExtResource("22_tt78r")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15.108, 9.05991e-06, -18.8845)
|
||||||
|
|
||||||
|
[node name="Ladder2" parent="." instance=ExtResource("22_tt78r")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34.3988, 5.79711, 11.9526)
|
||||||
|
|
||||||
|
[node name="Ladder3" parent="." instance=ExtResource("22_tt78r")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34.3988, 9.74877, 11.9526)
|
||||||
|
|
||||||
|
[node name="Ladder4" parent="." instance=ExtResource("22_tt78r")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34.3988, 13.7116, 11.9526)
|
||||||
|
|
||||||
|
[node name="Ladder5" parent="." instance=ExtResource("22_tt78r")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34.3988, 17.6943, 11.9526)
|
||||||
|
|
||||||
|
[node name="Ladder6" parent="." instance=ExtResource("22_tt78r")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34.3988, 21.6723, 11.9526)
|
||||||
|
|
||||||
|
[node name="Ladder7" parent="." instance=ExtResource("22_tt78r")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 34.3988, 25.6446, 11.9526)
|
||||||
|
|
||||||
|
[node name="LadderCollisionCheck" parent="." instance=ExtResource("22_lsb7i")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 2.24237, 0, 0, 0, 1, 34.3971, 6.89573, 12.1428)
|
||||||
|
|||||||
@@ -210,14 +210,17 @@ func pickup_spawn(randomized):
|
|||||||
4:
|
4:
|
||||||
i_weight = 1.0 - clamp(float(player.ammo_reserve[str(i)]) / float(expected_ammo["rocket"]),0,1)
|
i_weight = 1.0 - clamp(float(player.ammo_reserve[str(i)]) / float(expected_ammo["rocket"]),0,1)
|
||||||
if i_weight > ammo_weight:
|
if i_weight > ammo_weight:
|
||||||
ammo_weight = i_weight + drop_chance_minimum
|
ammo_weight = i_weight
|
||||||
ammo_type_weight[i] = i_weight + drop_chance_minimum
|
ammo_type_weight[i] = i_weight + drop_chance_minimum
|
||||||
|
|
||||||
pickup_type = HelperFuncs.weighted_random({"0" : ammo_weight, "1" : stamina_weight,"2" : health_weight,"3" : money_weight})
|
pickup_type = HelperFuncs.weighted_random({"0" : ammo_weight, "1" : stamina_weight,"2" : health_weight,"3" : money_weight})
|
||||||
|
|
||||||
match pickup_type:
|
match pickup_type:
|
||||||
"0":
|
"0":
|
||||||
ammo_type = int(HelperFuncs.weighted_random(ammo_type_weight))
|
if ammo_type_weight.size() > 0:
|
||||||
|
ammo_type = int(HelperFuncs.weighted_random(ammo_type_weight))
|
||||||
|
else:
|
||||||
|
ammo_type = randi_range(0,4)
|
||||||
value = randi_range(1,20)
|
value = randi_range(1,20)
|
||||||
"1":
|
"1":
|
||||||
value = randi_range(int(player.MAX_STAMINA * .25),player.MAX_STAMINA)
|
value = randi_range(int(player.MAX_STAMINA * .25),player.MAX_STAMINA)
|
||||||
|
|||||||
@@ -83,8 +83,6 @@ func reload_finished():
|
|||||||
player.ammo_reserve[str(ammo_type)] -= player.ammo_reserve[str(ammo_type)]
|
player.ammo_reserve[str(ammo_type)] -= player.ammo_reserve[str(ammo_type)]
|
||||||
|
|
||||||
func shoot(delta):
|
func shoot(delta):
|
||||||
print("GUN AMMO: ",player.gun_ammo)
|
|
||||||
print("RESERVE AMMO: ",player.ammo_reserve)
|
|
||||||
if player.gun_ammo[gun_name] > 0 and cycle_count > 0:
|
if player.gun_ammo[gun_name] > 0 and cycle_count > 0:
|
||||||
if !anim_player.is_playing():
|
if !anim_player.is_playing():
|
||||||
player.gun_ammo[gun_name] -= 1
|
player.gun_ammo[gun_name] -= 1
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ extends RigidBody3D
|
|||||||
var despawning = false
|
var despawning = false
|
||||||
var despawn_time_s = 10
|
var despawn_time_s = 10
|
||||||
|
|
||||||
|
var mesh_activated = false
|
||||||
var value
|
var value
|
||||||
@export_enum("Ammo", "Stamina", "Health", "Money","Weapon") var pickup_type: int
|
@export_enum("Ammo", "Stamina", "Health", "Money","Weapon") var pickup_type: int
|
||||||
var ammo_type
|
var ammo_type
|
||||||
@@ -23,7 +24,7 @@ var ammo_type
|
|||||||
@onready var money: Node3D = $Meshes/money
|
@onready var money: Node3D = $Meshes/money
|
||||||
|
|
||||||
|
|
||||||
var magnetable = true #false
|
var magnetable = false
|
||||||
var pickupable = false
|
var pickupable = false
|
||||||
var pick_up = false
|
var pick_up = false
|
||||||
var rand_amt
|
var rand_amt
|
||||||
@@ -32,41 +33,21 @@ var player
|
|||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
# Called when the node enters the scene tree for the first time.
|
||||||
func _ready():
|
func _ready():
|
||||||
add_to_group("spawned")
|
|
||||||
add_to_group("persist")
|
|
||||||
|
|
||||||
#Enable mesh
|
|
||||||
match pickup_type:
|
|
||||||
0:
|
|
||||||
match ammo_type:
|
|
||||||
0:
|
|
||||||
light_ammo.visible = true
|
|
||||||
1:
|
|
||||||
medium_ammo.visible = true #medium
|
|
||||||
2:
|
|
||||||
heavy_ammo.visible = true #heavy
|
|
||||||
3:
|
|
||||||
shotgun_ammo.visible = true #shotgun
|
|
||||||
4:
|
|
||||||
rocket.visible = true #rocket
|
|
||||||
1:
|
|
||||||
stamina.visible = true
|
|
||||||
2:
|
|
||||||
health.visible = true
|
|
||||||
3:
|
|
||||||
money.visible = true
|
|
||||||
|
|
||||||
|
|
||||||
if despawning == true:
|
if despawning == true:
|
||||||
timer.wait_time = despawn_time_s
|
timer.wait_time = despawn_time_s
|
||||||
timer.start()
|
timer.start()
|
||||||
|
|
||||||
func _physics_process(delta):
|
func _physics_process(delta):
|
||||||
|
if !mesh_activated:
|
||||||
|
activate_mesh()
|
||||||
|
|
||||||
if player_follow != null:
|
if player_follow != null:
|
||||||
if !pick_up:
|
if !pick_up:
|
||||||
despawning = false
|
if magnetable:
|
||||||
angular_velocity = lerp(angular_velocity, Vector3(0,0,0), delta)
|
despawning = false
|
||||||
position = lerp(position, player.item_holder.global_position, 25 * delta)
|
angular_velocity = lerp(angular_velocity, Vector3(0,0,0), delta)
|
||||||
|
position = lerp(position, player.item_holder.global_position, 25 * delta)
|
||||||
|
|
||||||
if abs(position - player.item_holder.global_position) < Vector3(.5,.5,.5):
|
if abs(position - player.item_holder.global_position) < Vector3(.5,.5,.5):
|
||||||
await get_tree().create_timer(1).timeout
|
await get_tree().create_timer(1).timeout
|
||||||
@@ -91,12 +72,36 @@ func save():
|
|||||||
"rot_x" : rotation.x,
|
"rot_x" : rotation.x,
|
||||||
"rot_y" : rotation.y,
|
"rot_y" : rotation.y,
|
||||||
"rot_z" : rotation.z,
|
"rot_z" : rotation.z,
|
||||||
|
"linear_velocity" : linear_velocity,
|
||||||
|
"angular_velocity" : angular_velocity,
|
||||||
"pickup_type" : pickup_type,
|
"pickup_type" : pickup_type,
|
||||||
"ammo_type" : ammo_type,
|
"ammo_type" : ammo_type,
|
||||||
"value" : value
|
"value" : value
|
||||||
}
|
}
|
||||||
return save_dict
|
return save_dict
|
||||||
|
|
||||||
|
func activate_mesh():
|
||||||
|
match pickup_type:
|
||||||
|
0:
|
||||||
|
match ammo_type:
|
||||||
|
0:
|
||||||
|
light_ammo.visible = true
|
||||||
|
1:
|
||||||
|
medium_ammo.visible = true #medium
|
||||||
|
2:
|
||||||
|
heavy_ammo.visible = true #heavy
|
||||||
|
3:
|
||||||
|
shotgun_ammo.visible = true #shotgun
|
||||||
|
4:
|
||||||
|
rocket.visible = true #rocket
|
||||||
|
1:
|
||||||
|
stamina.visible = true
|
||||||
|
2:
|
||||||
|
health.visible = true
|
||||||
|
3:
|
||||||
|
money.visible = true
|
||||||
|
|
||||||
|
mesh_activated = true
|
||||||
|
|
||||||
func _on_magnet_timer_timeout() -> void:
|
func _on_magnet_timer_timeout() -> void:
|
||||||
magnetable = true
|
magnetable = true
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
extends Area3D
|
extends Area3D
|
||||||
|
|
||||||
|
@onready var collision_midpoint: Node3D = $CollisionMidpoint
|
||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
# Called when the node enters the scene tree for the first time.
|
||||||
func _ready():
|
func _ready():
|
||||||
pass
|
pass
|
||||||
@@ -11,9 +13,8 @@ func _process(delta):
|
|||||||
|
|
||||||
func _on_body_entered(body):
|
func _on_body_entered(body):
|
||||||
if body.is_in_group("player"):
|
if body.is_in_group("player"):
|
||||||
body.velocity = Vector3(0,0,0)
|
|
||||||
body.is_climbing = true
|
body.is_climbing = true
|
||||||
if body.global_position.y < global_position.y:
|
if body.global_position.y < collision_midpoint.global_position.y:
|
||||||
body.global_position.y += .2
|
body.global_position.y += .2
|
||||||
|
|
||||||
|
|
||||||
@@ -21,4 +22,3 @@ func _on_body_exited(body):
|
|||||||
if body.is_in_group("player"):
|
if body.is_in_group("player"):
|
||||||
body.is_climbing = false
|
body.is_climbing = false
|
||||||
body.gravity = body.default_gravity
|
body.gravity = body.default_gravity
|
||||||
body.ladder_center = null
|
|
||||||
|
|||||||
Reference in New Issue
Block a user