Add escape-to-pause
This commit is contained in:
parent
f6d66e0101
commit
1d6b5c35ca
4 changed files with 60 additions and 0 deletions
|
|
@ -10,6 +10,7 @@
|
||||||
[ext_resource type="PackedScene" path="res://scenes/component_spawn.tscn" id="9_0tnpc"]
|
[ext_resource type="PackedScene" path="res://scenes/component_spawn.tscn" id="9_0tnpc"]
|
||||||
[ext_resource type="PackedScene" path="res://scenes/end_screen.tscn" id="10_endsc"]
|
[ext_resource type="PackedScene" path="res://scenes/end_screen.tscn" id="10_endsc"]
|
||||||
[ext_resource type="PackedScene" path="res://scenes/title_screen.tscn" id="11_title"]
|
[ext_resource type="PackedScene" path="res://scenes/title_screen.tscn" id="11_title"]
|
||||||
|
[ext_resource type="PackedScene" path="res://scenes/pause_menu.tscn" id="12_pause"]
|
||||||
|
|
||||||
[node name="Game" type="Node3D" unique_id=1456297160]
|
[node name="Game" type="Node3D" unique_id=1456297160]
|
||||||
script = ExtResource("1_lbhrr")
|
script = ExtResource("1_lbhrr")
|
||||||
|
|
@ -41,3 +42,5 @@ stream = ExtResource("6_gee14")
|
||||||
[node name="EndScreen" parent="." instance=ExtResource("10_endsc")]
|
[node name="EndScreen" parent="." instance=ExtResource("10_endsc")]
|
||||||
|
|
||||||
[node name="TitleScreen" parent="." instance=ExtResource("11_title")]
|
[node name="TitleScreen" parent="." instance=ExtResource("11_title")]
|
||||||
|
|
||||||
|
[node name="PauseMenu" parent="." instance=ExtResource("12_pause")]
|
||||||
|
|
|
||||||
22
scenes/pause_menu.gd
Normal file
22
scenes/pause_menu.gd
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
extends CanvasLayer
|
||||||
|
|
||||||
|
var _enabled := false
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
visible = false
|
||||||
|
EventBus.game_started.connect(_on_game_started)
|
||||||
|
|
||||||
|
func _on_game_started():
|
||||||
|
_enabled = true
|
||||||
|
|
||||||
|
func _unhandled_input(event):
|
||||||
|
if not _enabled:
|
||||||
|
return
|
||||||
|
if event is InputEventKey and event.pressed and not event.echo and event.keycode == KEY_ESCAPE:
|
||||||
|
_toggle()
|
||||||
|
get_viewport().set_input_as_handled()
|
||||||
|
|
||||||
|
func _toggle():
|
||||||
|
var paused := not get_tree().paused
|
||||||
|
get_tree().paused = paused
|
||||||
|
visible = paused
|
||||||
1
scenes/pause_menu.gd.uid
Normal file
1
scenes/pause_menu.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
uid://chssreaybnwn8
|
||||||
34
scenes/pause_menu.tscn
Normal file
34
scenes/pause_menu.tscn
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
[gd_scene load_steps=2 format=3]
|
||||||
|
|
||||||
|
[ext_resource type="Script" path="res://scenes/pause_menu.gd" id="1"]
|
||||||
|
|
||||||
|
[node name="PauseMenu" type="CanvasLayer"]
|
||||||
|
layer = 25
|
||||||
|
process_mode = 3
|
||||||
|
script = ExtResource("1")
|
||||||
|
|
||||||
|
[node name="Dim" type="ColorRect" parent="."]
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
mouse_filter = 2
|
||||||
|
color = Color(0, 0, 0, 0.7)
|
||||||
|
|
||||||
|
[node name="Center" type="CenterContainer" parent="."]
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
mouse_filter = 1
|
||||||
|
|
||||||
|
[node name="Column" type="VBoxContainer" parent="Center"]
|
||||||
|
theme_override_constants/separation = 16
|
||||||
|
|
||||||
|
[node name="Title" type="Label" parent="Center/Column"]
|
||||||
|
text = "PAUSED"
|
||||||
|
horizontal_alignment = 1
|
||||||
|
theme_override_colors/font_color = Color(1, 1, 1, 1)
|
||||||
|
theme_override_font_sizes/font_size = 64
|
||||||
|
|
||||||
|
[node name="Prompt" type="Label" parent="Center/Column"]
|
||||||
|
text = "ESC TO RESUME"
|
||||||
|
horizontal_alignment = 1
|
||||||
|
theme_override_colors/font_color = Color(0.7, 0.7, 0.7, 1)
|
||||||
|
theme_override_font_sizes/font_size = 24
|
||||||
Loading…
Add table
Add a link
Reference in a new issue