Initial MVP

This commit is contained in:
Aodhan Collins
2026-01-26 02:57:40 +00:00
commit b42521a008
33 changed files with 1004 additions and 0 deletions

58
scenes/combat_ui.tscn Normal file
View File

@@ -0,0 +1,58 @@
[gd_scene format=3 uid="uid://combat_ui_scene"]
[node name="CombatUI" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Panel" type="Panel" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="VBox" type="VBoxContainer" parent="Panel"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -150.0
offset_top = -200.0
offset_right = 150.0
offset_bottom = 200.0
grow_horizontal = 2
grow_vertical = 2
alignment = 1
[node name="EnemyImage" type="TextureRect" parent="Panel/VBox"]
custom_minimum_size = Vector2(200, 200)
layout_mode = 2
expand_mode = 1
stretch_mode = 5
[node name="EnemyLabel" type="Label" parent="Panel/VBox"]
layout_mode = 2
text = "Enemy Name (HP: 100/100)"
horizontal_alignment = 1
[node name="HSeparator" type="HSeparator" parent="Panel/VBox"]
layout_mode = 2
[node name="Actions" type="HBoxContainer" parent="Panel/VBox"]
layout_mode = 2
alignment = 1
[node name="BtnAttack" type="Button" parent="Panel/VBox/Actions"]
layout_mode = 2
text = "Attack"
[node name="BtnFlee" type="Button" parent="Panel/VBox/Actions"]
layout_mode = 2
text = "Flee"

107
scenes/main.tscn Normal file
View File

@@ -0,0 +1,107 @@
[gd_scene load_steps=5 format=3 uid="uid://c8j7k6l5m4n3"]
[ext_resource type="Script" path="res://scripts/main.gd" id="1_main"]
[ext_resource type="Script" path="res://scripts/GameManager.gd" id="2_gm"]
[ext_resource type="Script" path="res://scripts/Minimap.gd" id="3_minimap"]
[ext_resource type="Texture2D" path="res://assets/placeholder_room.svg" id="4_bg"]
[ext_resource type="PackedScene" uid="uid://combat_ui_scene" path="res://scenes/combat_ui.tscn" id="5_combat"]
[node name="Main" type="Node2D"]
script = ExtResource("1_main")
[node name="GameManager" type="Node" parent="."]
script = ExtResource("2_gm")
[node name="UI" type="CanvasLayer" parent="."]
[node name="CombatUI" parent="UI" instance=ExtResource("5_combat")]
visible = false
[node name="MainLayout" type="HBoxContainer" parent="UI"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="GameView" type="VBoxContainer" parent="UI/MainLayout"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_stretch_ratio = 0.7
[node name="RoomImage" type="TextureRect" parent="UI/MainLayout/GameView"]
layout_mode = 2
size_flags_vertical = 3
texture = ExtResource("4_bg")
expand_mode = 1
stretch_mode = 5
[node name="Log" type="RichTextLabel" parent="UI/MainLayout/GameView"]
layout_mode = 2
size_flags_vertical = 3
size_flags_stretch_ratio = 0.4
text = "Log..."
scroll_following = true
[node name="Input" type="LineEdit" parent="UI/MainLayout/GameView"]
layout_mode = 2
placeholder_text = "What do you want to do?"
[node name="Sidebar" type="VBoxContainer" parent="UI/MainLayout"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_stretch_ratio = 0.3
[node name="StatsLabel" type="Label" parent="UI/MainLayout/Sidebar"]
layout_mode = 2
text = "HP: 100/100"
horizontal_alignment = 1
[node name="MinimapLabel" type="Label" parent="UI/MainLayout/Sidebar"]
layout_mode = 2
text = "Map"
horizontal_alignment = 1
[node name="Minimap" type="GridContainer" parent="UI/MainLayout/Sidebar"]
layout_mode = 2
size_flags_horizontal = 4
script = ExtResource("3_minimap")
[node name="RoomLabel" type="Label" parent="UI/MainLayout/Sidebar"]
layout_mode = 2
text = "Room Name"
horizontal_alignment = 1
[node name="Controls" type="VBoxContainer" parent="UI/MainLayout/Sidebar"]
layout_mode = 2
[node name="BtnNorth" type="Button" parent="UI/MainLayout/Sidebar/Controls"]
layout_mode = 2
text = "North"
[node name="HBox" type="HBoxContainer" parent="UI/MainLayout/Sidebar/Controls"]
layout_mode = 2
alignment = 1
[node name="BtnWest" type="Button" parent="UI/MainLayout/Sidebar/Controls/HBox"]
layout_mode = 2
text = "West"
[node name="BtnEast" type="Button" parent="UI/MainLayout/Sidebar/Controls/HBox"]
layout_mode = 2
text = "East"
[node name="BtnSouth" type="Button" parent="UI/MainLayout/Sidebar/Controls"]
layout_mode = 2
text = "South"
[node name="HSeparator" type="HSeparator" parent="UI/MainLayout/Sidebar/Controls"]
layout_mode = 2
[node name="BtnSave" type="Button" parent="UI/MainLayout/Sidebar/Controls"]
layout_mode = 2
text = "Save Game"
[node name="BtnLoad" type="Button" parent="UI/MainLayout/Sidebar/Controls"]
layout_mode = 2
text = "Load Game"