Added credits screen off of main menu

This commit is contained in:
Benjamin Morgan 2025-10-21 21:38:06 -06:00
parent e46d1066c0
commit bb963db15f
8 changed files with 165 additions and 29 deletions

47
Scenes/credits.gd Normal file
View file

@ -0,0 +1,47 @@
extends Control
@onready var grid: GridContainer = $Columns
signal main_menu
const CREDIT_LABELS_LINKS := {
"Godot Engine" : ["Godot Team : godotengine.org", "https://godotengine.org"],
"Ship and Enemies" : ["bart : opengameart.org", "https://opengameart.org/content/i-are-spaceship-16x16-space-sprites"],
"Starry Background" : ["Kutejnikov : opengameart.org", "https://opengameart.org/content/space-9"],
"Laser Sound" : ["dklon : opengameart.org", "https://opengameart.org/content/laser-fire"],
"Explosion Sounds" : ["TeamAlpha : opengameart.org", "https://opengameart.org/content/8-bitnes-explosion-sound-effecs"],
"Extra Life Jingle" : ["Mrthenoronha : freesound.org", "https://freesound.org/people/Mrthenoronha/sounds/518306/"]
}
const LEFT_COL_WIDTH := 300
const RIGHT_COL_WIDTH := 300
func _ready() -> void:
$Back.pressed.connect(_emit_back)
# center the grid
grid.anchor_left = 0.5
grid.anchor_right = 0.5
grid.offset_left = int(-(LEFT_COL_WIDTH + RIGHT_COL_WIDTH) / 2.0)
grid.offset_right = int((LEFT_COL_WIDTH + RIGHT_COL_WIDTH) / 2.0)
for btn_name in CREDIT_LABELS_LINKS.keys():
var display_text = CREDIT_LABELS_LINKS[btn_name][0]
var link: String = CREDIT_LABELS_LINKS[btn_name][1]
var label = Label.new()
label.text = btn_name
label.horizontal_alignment = HORIZONTAL_ALIGNMENT_RIGHT
label.custom_minimum_size.x = LEFT_COL_WIDTH
grid.add_child(label)
var button = Button.new()
button.text = display_text
button.focus_mode = Control.FOCUS_NONE
button.custom_minimum_size.x = RIGHT_COL_WIDTH
var link_local := link
button.pressed.connect(func(): OS.shell_open(link_local))
grid.add_child(button)
func _emit_back():
emit_signal("main_menu")

1
Scenes/credits.gd.uid Normal file
View file

@ -0,0 +1 @@
uid://dinqb3ubrx76h

58
Scenes/credits.tscn Normal file
View file

@ -0,0 +1,58 @@
[gd_scene load_steps=3 format=3 uid="uid://dylsy7qq16t6e"]
[ext_resource type="Script" uid="uid://dinqb3ubrx76h" path="res://Scenes/credits.gd" id="1_r18jl"]
[sub_resource type="LabelSettings" id="LabelSettings_gryuy"]
font_size = 36
[node name="Control" type="Control"]
layout_mode = 3
anchors_preset = 13
anchor_left = 0.5
anchor_right = 0.5
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_r18jl")
[node name="Title" type="Label" parent="."]
layout_mode = 1
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -61.5
offset_top = 35.0
offset_right = 61.5
offset_bottom = 85.0
grow_horizontal = 2
text = "Credits"
label_settings = SubResource("LabelSettings_gryuy")
[node name="Columns" type="GridContainer" parent="."]
layout_mode = 1
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -20.0
offset_top = 100.0
offset_right = 20.0
offset_bottom = 140.0
grow_horizontal = 2
theme_override_constants/h_separation = 30
theme_override_constants/v_separation = 5
columns = 2
[node name="Back" type="Button" parent="."]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -50.0
offset_top = -73.0
offset_right = 50.0
offset_bottom = -38.0
grow_horizontal = 2
grow_vertical = 0
text = "Back"

View file

@ -59,9 +59,9 @@ layout_mode = 1
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -46.5
offset_top = 150.0
offset_right = 46.5
offset_bottom = 181.0
offset_left = -75.0
offset_top = 155.0
offset_right = 75.0
offset_bottom = 190.0
grow_horizontal = 2
text = "New Game"

View file

@ -21,8 +21,8 @@ anchors_preset = 13
anchor_left = 0.5
anchor_right = 0.5
anchor_bottom = 1.0
offset_top = -100.0
offset_bottom = -100.0
offset_top = -120.0
offset_bottom = -120.0
grow_horizontal = 2
grow_vertical = 2
@ -44,10 +44,10 @@ layout_mode = 1
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -46.5
offset_top = 111.0
offset_right = 46.5
offset_bottom = 142.0
offset_left = -75.0
offset_top = 105.0
offset_right = 75.0
offset_bottom = 140.0
grow_horizontal = 2
text = "New Game"
@ -56,9 +56,21 @@ layout_mode = 1
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -46.5
offset_top = 150.0
offset_right = 46.5
offset_bottom = 181.0
offset_left = -75.0
offset_top = 205.0
offset_right = 75.0
offset_bottom = 240.0
grow_horizontal = 2
text = "Quit"
[node name="Credits" type="Button" parent="Container"]
layout_mode = 1
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -75.0
offset_top = 155.0
offset_right = 75.0
offset_bottom = 190.0
grow_horizontal = 2
text = "Credits"