Level Event Signal Manager, die when timer is up

This commit is contained in:
Jakob Feldmann 2022-09-07 20:49:13 +02:00
parent 38bf760182
commit ded07f8244
8 changed files with 31 additions and 12 deletions

View File

@ -358,3 +358,7 @@ func _on_Blobby_got_grounded() -> void:
else:
floor_friction = base_floor_friction
air_strafe_charges = 1
func _on_GameplaySignalManager_getback_timer_up() -> void:
die()

View File

@ -181,7 +181,6 @@ func _get_transition(_delta):
func _enter_state(new_state, old_state):
print(new_state)
if old_state == "idle" && (new_state == "walk" || new_state == "run"):
init_boost = true
init_boost_type = old_state + "_" + new_state

View File

@ -4,7 +4,7 @@ onready var buttonPlayer = $"%ButtonPlayer"
onready var activatorArea = $"%ActivatorArea"
onready var indicatorPlayer = $"%IndicatorPlayer"
onready var elevator = get_node("./Portal")
onready var ui = get_node("../UserInterface")
onready var signalManager = get_node("../GameplaySignalManager")
func selfActivate():
@ -18,7 +18,6 @@ func selfActivate():
func _on_ActivatorArea_area_entered(_area:Area2D) -> void:
selfActivate()
if ui.has_signal("terminal_activated"):
ui.emit_signal("terminal_activated")
signalManager.emit_signal("terminal_activated")

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=11 format=2]
[gd_scene load_steps=12 format=2]
[ext_resource path="res://src/Environment/AlienShipTileSet.tres" type="TileSet" id=1]
[ext_resource path="res://src/Actors/Blobby/Blobby.tscn" type="PackedScene" id=2]
@ -9,6 +9,7 @@
[ext_resource path="res://src/UserInterface/UserInterface.tscn" type="PackedScene" id=7]
[ext_resource path="res://src/Contraptions/Triggers/ThreeWhyButtons.tscn" type="PackedScene" id=8]
[ext_resource path="res://src/Levels/Enemy Test Level.tscn" type="PackedScene" id=9]
[ext_resource path="res://src/Utilities/GameplaySignalManager.gd" type="Script" id=10]
[sub_resource type="AnimationNodeStateMachinePlayback" id=4]
@ -20,6 +21,9 @@ __meta__ = {
[node name="UserInterface" parent="." instance=ExtResource( 7 )]
[node name="Timer" parent="UserInterface/HUD/HUDOverlay/GetBackTimer" index="0"]
wait_time = 20.0
[node name="Blobby" parent="." instance=ExtResource( 2 )]
position = Vector2( -60, -3.8147e-06 )
scale = Vector2( 0.878906, 0.936025 )
@ -108,6 +112,15 @@ position = Vector2( -1464, 84 )
monitoring = false
next_scene = ExtResource( 9 )
[node name="GameplaySignalManager" type="Node2D" parent="."]
script = ExtResource( 10 )
[connection signal="timeout" from="UserInterface/HUD/HUDOverlay/GetBackTimer/Timer" to="GameplaySignalManager" method="_on_Timer_timeout"]
[connection signal="getback_timer_up" from="GameplaySignalManager" to="Blobby" method="_on_GameplaySignalManager_getback_timer_up"]
[connection signal="terminal_activated" from="GameplaySignalManager" to="UserInterface/HUD" method="_on_SignalManager_terminal_activated"]
[editable path="UserInterface"]
[editable path="UserInterface/HUD"]
[editable path="Blobby"]
[editable path="TreeWhyButtons"]
[editable path="TreeWhyButtons/WhyButton1"]

View File

@ -32,5 +32,5 @@ func update_interface() -> void:
score.text = "Score: %s" % PlayerData.score
func _on_UserInterface_terminal_activated() -> void:
func _on_SignalManager_terminal_activated() -> void:
start_timer()

View File

@ -1,4 +1,3 @@
extends CanvasLayer
signal terminal_activated()

View File

@ -1,16 +1,12 @@
[gd_scene load_steps=4 format=2]
[gd_scene load_steps=3 format=2]
[ext_resource path="res://src/UserInterface/Screens/PauseScreen.tscn" type="PackedScene" id=1]
[ext_resource path="res://src/UserInterface/Screens/HUD.tscn" type="PackedScene" id=2]
[ext_resource path="res://src/UserInterface/UserInterface.gd" type="Script" id=3]
[node name="UserInterface" type="CanvasLayer"]
layer = 2
script = ExtResource( 3 )
[node name="HUD" parent="." instance=ExtResource( 2 )]
[node name="PauseScreen" parent="." instance=ExtResource( 1 )]
mouse_filter = 1
[connection signal="terminal_activated" from="." to="HUD" method="_on_UserInterface_terminal_activated"]

View File

@ -0,0 +1,9 @@
extends Node2D
signal terminal_activated()
signal getback_timer_up()
func _on_Timer_timeout() -> void:
emit_signal("getback_timer_up")