barebones menu and credits

This commit is contained in:
Clevertop 2024-08-11 22:19:23 +10:00
parent 78d24cecfa
commit 1a00e03306
5 changed files with 166 additions and 4 deletions

View file

@ -132,12 +132,12 @@ uv1_triplanar = true
texture_filter = 0
[sub_resource type="BoxMesh" id="BoxMesh_s4kja"]
size = Vector3(1, 2, 1)
size = Vector3(1, 2, 1.001)
[sub_resource type="BoxShape3D" id="BoxShape3D_jvb5m"]
size = Vector3(1, 2, 1)
[node name="ChronoManager" type="Node3D" node_paths=PackedStringArray("gui", "pedstalContainer", "chime_player", "world_env", "player", "player_spawn")]
[node name="ChronoManager" type="Node3D" node_paths=PackedStringArray("gui", "pedstalContainer", "chime_player", "world_env", "player", "player_spawn", "left_door", "right_door")]
script = ExtResource("1_5b2rd")
pedestal_off_mat = ExtResource("2_0aj3l")
pedestal_on_mat = ExtResource("3_mnhg8")
@ -147,6 +147,8 @@ chime_player = NodePath("AudioStreamPlayer")
world_env = NodePath("WorldEnvironment")
player = NodePath("Player")
player_spawn = NodePath("PlayerStartPos")
left_door = NodePath("DoorLeft")
right_door = NodePath("DoorRight")
[node name="Player" parent="." instance=ExtResource("2_hsi55")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.12895, 0)

View file

@ -23,12 +23,19 @@ Puzzle game made by Tom for the Playmakers August Jam 2024
- [ ] Credits page
- [ ] itch.io page
- [ ] kill blocks - resets level if player touches them
- [ ] door, starting level button
- [x] door, starting level button
- [ ] Sounds
- [ ] Press button
- [ ] Level lose
- [ ] doors open
- [x] tick chime
- [ ] take/place/drop block
- [ ] per command sounds?
## COMMANDS
- [x] Jump - go up! works in the air too
- [ ] Dash - Move in direction you are facing for 0.3s (horizontal only, maybe normalise/magnitude)
- [x] Dash - Move in direction you are facing for 0.3s (horizontal only, maybe normalise/magnitude)
- [x] Phase - collider turns off for 1 second (should i make this longer or a toggle perhaps?)
- [ ] Toggle gravity - could also be low gravity?
- 2-3 more commands would add more content/puzzle potencial

View file

@ -15,6 +15,7 @@ var room_started : bool = false
var current_tick = 0
var failed : bool = false
var fail_timer : float = 2
var door_timer : float = 0
@export_group("Resources")
@export var pedestal_off_mat : Material
@ -28,6 +29,8 @@ var pedestals : Array[Pedestal]
@export var world_env : WorldEnvironment
@export var player : CharacterBody3D
@export var player_spawn : Node3D
@export var left_door : Node3D
@export var right_door : Node3D
# Called when the node enters the scene tree for the first time.
func _ready():
@ -41,6 +44,12 @@ func _ready():
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
if(room_started):
door_timer -= delta
#-1.5 open, -0.5 closed
left_door.position.x = -0.5 + clampf(door_timer*4, -0.995,0)
right_door.position.x = 0.5 + clampf(-door_timer*4, 0,0.995)
if Input.is_action_just_pressed("debug_start"):
start_room()
@ -131,6 +140,7 @@ func reset_room():
current_tick = 0
failed = false
fail_timer = 2
door_timer = 0
#reset pedestals
for i in pedestals.size():

31
Scripts/menu.gd Normal file
View file

@ -0,0 +1,31 @@
extends Control
var credits_shown : bool = false
@export var level_node : Control
@export var credits_node : Control
@export var credits_button : Button
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
if credits_shown:
credits_node.visible = true
level_node.visible = false
credits_button.text = "Back to Level Select"
else:
credits_node.visible = false
level_node.visible = true
credits_button.text = "Credits"
func _on_credits_button_pressed():
credits_shown = !credits_shown
func _on_credits_page_meta_clicked(meta):
OS.shell_open(str(meta))

112
menu.tscn Normal file
View file

@ -0,0 +1,112 @@
[gd_scene load_steps=3 format=3 uid="uid://dggn70v8xqwgy"]
[ext_resource type="Script" path="res://Scripts/menu.gd" id="1_igukb"]
[sub_resource type="LabelSettings" id="LabelSettings_d2xlr"]
font_size = 56
font_color = Color(0.631665, 0.267098, 1, 1)
outline_size = 15
outline_color = Color(1, 0.446282, 0.988369, 1)
[node name="Menu" type="Control" node_paths=PackedStringArray("level_node", "credits_node", "credits_button")]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_igukb")
level_node = NodePath("MarginContainer/VBoxContainer/PanelContainer/ScrollContainer/VBoxContainer")
credits_node = NodePath("MarginContainer/VBoxContainer/PanelContainer/ScrollContainer/MarginContainer/CreditsPage")
credits_button = NodePath("MarginContainer/VBoxContainer/HBoxContainer/CreditsButton")
[node name="MarginContainer" type="MarginContainer" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 200
theme_override_constants/margin_top = 100
theme_override_constants/margin_right = 200
theme_override_constants/margin_bottom = 100
[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"]
layout_mode = 2
[node name="Title" type="Label" parent="MarginContainer/VBoxContainer"]
layout_mode = 2
text = "Chrono Chamber"
label_settings = SubResource("LabelSettings_d2xlr")
horizontal_alignment = 1
[node name="Credit" type="Label" parent="MarginContainer/VBoxContainer"]
layout_mode = 2
text = "by Tom Howarth"
horizontal_alignment = 1
[node name="PanelContainer" type="PanelContainer" parent="MarginContainer/VBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
[node name="ScrollContainer" type="ScrollContainer" parent="MarginContainer/VBoxContainer/PanelContainer"]
layout_mode = 2
size_flags_vertical = 3
[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/VBoxContainer/PanelContainer/ScrollContainer"]
visible = false
layout_mode = 2
size_flags_horizontal = 3
[node name="Button" type="Button" parent="MarginContainer/VBoxContainer/PanelContainer/ScrollContainer/VBoxContainer"]
layout_mode = 2
text = "Level 1 - Name"
[node name="Button2" type="Button" parent="MarginContainer/VBoxContainer/PanelContainer/ScrollContainer/VBoxContainer"]
layout_mode = 2
text = "Level 1 - Name"
[node name="Button3" type="Button" parent="MarginContainer/VBoxContainer/PanelContainer/ScrollContainer/VBoxContainer"]
layout_mode = 2
text = "Level 1 - Name"
[node name="Button4" type="Button" parent="MarginContainer/VBoxContainer/PanelContainer/ScrollContainer/VBoxContainer"]
layout_mode = 2
text = "Level 1 - Name"
[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/VBoxContainer/PanelContainer/ScrollContainer"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_constants/margin_left = 10
theme_override_constants/margin_top = 10
theme_override_constants/margin_right = 10
theme_override_constants/margin_bottom = 10
[node name="CreditsPage" type="RichTextLabel" parent="MarginContainer/VBoxContainer/PanelContainer/ScrollContainer/MarginContainer"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
bbcode_enabled = true
text = "Programming and Game Design: [url=https://clevertop.dev]Tom Howarth[/url]
Created for the [url=https://itch.io/jam/playmakers-august-game-jam]August 2024 Game Jam[/url] hosted by Playmakers! - Themes: 3D, Puzzle
Textures: [url=https://opengameart.org/content/dungeon-crawl-32x32-tiles]Dungeon Crawl Stone Soup[/url]
Command Chime Sounds: [url=https://freesound.org/people/radian/sounds/62986/]Chime 0011.wav by radian[/url]"
[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer"]
layout_mode = 2
[node name="CreditsButton" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
text = "Credits"
[node name="ExitButton" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
text = "Exit Game"
[connection signal="meta_clicked" from="MarginContainer/VBoxContainer/PanelContainer/ScrollContainer/MarginContainer/CreditsPage" to="." method="_on_credits_page_meta_clicked"]
[connection signal="pressed" from="MarginContainer/VBoxContainer/HBoxContainer/CreditsButton" to="." method="_on_credits_button_pressed"]