Added exit trigger in rover game so you can leave before the timer runs out

This commit is contained in:
akshay 2022-08-20 16:03:13 -04:00
parent cbbfe694ed
commit 2f8bbe57e2
7 changed files with 43 additions and 15 deletions

View File

@ -201,6 +201,7 @@ pause_game={
3d_physics/layer_4="Interactable"
3d_physics/layer_5="Camera Zone"
3d_physics/layer_6="Rock"
3d_physics/layer_7="Rover Exit"
[physics]

View File

@ -396,7 +396,6 @@ transform = Transform( 1, 6.98492e-10, -8.19564e-08, -1.45519e-09, 1, 5.78439e-1
transform = Transform( -0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, -0.707107, -11, 0, 11 )
[node name="rover_station" parent="Rover_Room" instance=ExtResource( 21 )]
start_broken = true
[node name="CanvasLayer" type="CanvasLayer" parent="."]
pause_mode = 1

View File

@ -714,7 +714,7 @@ mesh = SubResource( 1 )
skin = SubResource( 2 )
[node name="head_bone" type="BoneAttachment" parent="model_transform/DungMan/Armature/Skeleton" index="1"]
transform = Transform( 1, -2.22118e-16, -9.47951e-19, -2.04242e-19, -0.00518723, 0.999986, -2.2212e-16, -0.999986, -0.00518723, -3.33247e-16, 0.00719897, -1.50005 )
transform = Transform( 1, -2.19553e-16, 3.12257e-17, 1.20139e-18, 0.146168, 0.98926, -2.21759e-16, -0.98926, 0.146168, -3.30075e-16, -0.0808508, -1.51061 )
bone_name = "Item"
[node name="ItemSpawn" type="Spatial" parent="model_transform/DungMan/Armature/Skeleton/head_bone"]

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=5 format=2]
[gd_scene load_steps=6 format=2]
[ext_resource path="res://scripts/rover.gd" type="Script" id=1]
[ext_resource path="res://assets/moon_buggy/Beetle IX.tscn" type="PackedScene" id=2]
@ -9,6 +9,9 @@ radius = 2.98085
[sub_resource type="BoxShape" id=9]
extents = Vector3( 2.90757, 1, 2.12399 )
[sub_resource type="BoxShape" id=14]
extents = Vector3( 1.87657, 1, 1 )
[node name="rover" type="RigidBody"]
can_sleep = false
axis_lock_linear_y = true
@ -38,3 +41,14 @@ shape = SubResource( 9 )
[node name="BeetleIX" parent="visual" instance=ExtResource( 2 )]
transform = Transform( 2.3073, 0, 0, 0, 2.3073, 0, 0, 0, 2.3073, 0, 0, 0 )
[node name="exit_interact_box" type="Area" parent="."]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -1.71935 )
collision_layer = 2
collision_mask = 64
[node name="CollisionShape" type="CollisionShape" parent="exit_interact_box"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.383553 )
shape = SubResource( 14 )
[connection signal="area_entered" from="exit_interact_box" to="." method="_on_exit_interact_box_area_entered"]

View File

@ -9,7 +9,7 @@
[ext_resource path="res://item_types/geode.tres" type="Resource" id=7]
[sub_resource type="BoxShape" id=7]
extents = Vector3( 21.7976, 4.38074, 5.34608 )
extents = Vector3( 2.00704, 1, 1 )
[sub_resource type="Environment" id=5]
background_mode = 2
@ -76,17 +76,15 @@ autostart = true
anchor_right = 1.0
anchor_bottom = 1.0
[node name="Panel" type="Panel" parent="UI/Control"]
anchor_right = 1.0
margin_bottom = 44.0
[node name="progress_bar" type="ProgressBar" parent="UI/Control/Panel"]
[node name="progress_bar" type="ProgressBar" parent="UI/Control"]
unique_name_in_owner = true
anchor_left = 0.5
anchor_right = 0.5
margin_left = -393.0
margin_right = 393.0
margin_bottom = 43.0
anchor_left = 0.295312
anchor_right = 0.704687
anchor_bottom = 0.0398148
custom_colors/font_color = Color( 0, 0, 0, 0 )
__meta__ = {
"_edit_use_anchors_": true
}
[node name="spawn locations" type="Spatial" parent="."]
@ -220,6 +218,16 @@ transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 17.4828, 0, 603.399 )
transform = Transform( 0.866025, 2.18557e-08, -0.5, 0.5, -3.78552e-08, 0.866025, 0, -1, -4.37114e-08, 0, 87.952, 53 )
shadow_enabled = true
[node name="exit_trigger" type="Area" parent="."]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.225982, -7.75334 )
collision_layer = 64
collision_mask = 2
[node name="CollisionShape" type="CollisionShape" parent="exit_trigger"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.844644, -0.601815 )
shape = SubResource( 7 )
[connection signal="rover_exit_level" from="rover" to="." method="_on_rover_rover_exit_level"]
[connection signal="area_entered" from="collection_area" to="." method="_on_collection_area_area_entered"]
[connection signal="timeout" from="Timer" to="." method="_on_Timer_timeout"]

View File

@ -1,4 +1,5 @@
extends RigidBody
signal rover_exit_level
const EPSILON = 0.0001
const SPEED = 300.0
@ -27,3 +28,6 @@ func _unhandled_input(event):
area = area.get_meta("owner")
if area.on_rover_interact(self):
break
func _on_exit_interact_box_area_entered(area):
emit_signal("rover_exit_level")

View File

@ -41,4 +41,6 @@ func _process(delta):
func _on_Timer_timeout():
emit_signal("game_over")
func _on_rover_rover_exit_level():
timer.stop()
emit_signal("game_over")