diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..8ad74f7 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Normalize EOL for all files that Git considers text files. +* text=auto eol=lf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0af181c --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +# Godot 4+ specific ignores +.godot/ +/android/ diff --git a/Main_menu/BacBF78.tmp b/Main_menu/BacBF78.tmp new file mode 100644 index 0000000..a932294 Binary files /dev/null and b/Main_menu/BacBF78.tmp differ diff --git a/Main_menu/KnightWarrior-w16n8.otf b/Main_menu/KnightWarrior-w16n8.otf new file mode 100644 index 0000000..cc9d9d2 Binary files /dev/null and b/Main_menu/KnightWarrior-w16n8.otf differ diff --git a/Main_menu/KnightWarrior-w16n8.otf.import b/Main_menu/KnightWarrior-w16n8.otf.import new file mode 100644 index 0000000..2dcbbb8 --- /dev/null +++ b/Main_menu/KnightWarrior-w16n8.otf.import @@ -0,0 +1,34 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://c3jp6yk6l8gei" +path="res://.godot/imported/KnightWarrior-w16n8.otf-13bcad65473f3863e1baa79999627223.fontdata" + +[deps] + +source_file="res://Main_menu/KnightWarrior-w16n8.otf" +dest_files=["res://.godot/imported/KnightWarrior-w16n8.otf-13bcad65473f3863e1baa79999627223.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +hinting=1 +subpixel_positioning=1 +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/Main_menu/background.jpg b/Main_menu/background.jpg new file mode 100644 index 0000000..6f72c08 Binary files /dev/null and b/Main_menu/background.jpg differ diff --git a/Main_menu/background.jpg.import b/Main_menu/background.jpg.import new file mode 100644 index 0000000..f542d76 --- /dev/null +++ b/Main_menu/background.jpg.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cpykl56e4h7q1" +path="res://.godot/imported/background.jpg-6f2601b00e697036c2151a89c5238c6f.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Main_menu/background.jpg" +dest_files=["res://.godot/imported/background.jpg-6f2601b00e697036c2151a89c5238c6f.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Main_menu/main_menu.gd b/Main_menu/main_menu.gd new file mode 100644 index 0000000..021aa67 --- /dev/null +++ b/Main_menu/main_menu.gd @@ -0,0 +1,23 @@ +class_name MainMenu +extends Control + + +@onready var start_button: Button = $MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Button +@onready var settings_button: Button = $MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Button2 +@onready var exit_button: Button = $MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Button3 +@onready var start_level = preload("res://Main_menu/main_menu.tscn") as PackedScene + +func _ready(): + start_button.button_down.connect(on_start_pressed) + settings_button.button_down.connect(on_settings_pressed) + exit_button.button_down.connect(on_exit_pressed) + +func on_start_pressed()-> void: + print("scene changed!") + get_tree().change_scene_to_packed(start_level) + +func on_settings_pressed()->void: + pass + +func on_exit_pressed() ->void: + get_tree().quit() diff --git a/Main_menu/main_menu.tscn b/Main_menu/main_menu.tscn new file mode 100644 index 0000000..2515b69 --- /dev/null +++ b/Main_menu/main_menu.tscn @@ -0,0 +1,96 @@ +[gd_scene load_steps=6 format=3 uid="uid://s4dt2nklh1ef"] + +[ext_resource type="Texture2D" uid="uid://cpykl56e4h7q1" path="res://Main_menu/background.jpg" id="1_3skw3"] +[ext_resource type="Script" path="res://Main_menu/main_menu.gd" id="1_mhyy3"] +[ext_resource type="FontFile" uid="uid://c3jp6yk6l8gei" path="res://Main_menu/KnightWarrior-w16n8.otf" id="2_7dnc6"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ii5ra"] +bg_color = Color(0.6, 0.6, 0.6, 0) +shadow_color = Color(0, 0, 0, 1) + +[sub_resource type="SystemFont" id="SystemFont_e8c4f"] +font_names = PackedStringArray("Impact") + +[node name="Main_menu" type="Control"] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +script = ExtResource("1_mhyy3") + +[node name="TextureRect" type="TextureRect" parent="."] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("1_3skw3") +expand_mode = 2 + +[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 = 12 +theme_override_constants/margin_top = 12 +theme_override_constants/margin_right = 12 +theme_override_constants/margin_bottom = 12 + +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"] +layout_mode = 2 +theme_override_constants/separation = 60 + +[node name="Control-separator" type="Control" parent="MarginContainer/VBoxContainer"] +layout_mode = 2 + +[node name="Label-title" type="Label" parent="MarginContainer/VBoxContainer"] +layout_mode = 2 +theme_override_constants/line_spacing = 15 +theme_override_constants/shadow_offset_x = 15 +theme_override_constants/shadow_offset_y = 20 +theme_override_constants/outline_size = 24 +theme_override_fonts/font = ExtResource("2_7dnc6") +theme_override_font_sizes/font_size = 64 +theme_override_styles/normal = SubResource("StyleBoxFlat_ii5ra") +text = "Game Title" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer"] +layout_mode = 2 +theme_override_constants/separation = 20 +alignment = 1 + +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer"] +layout_mode = 2 +theme_override_constants/separation = 60 +alignment = 1 + +[node name="Nodeseparator" type="Node" parent="MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"] + +[node name="Button" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"] +custom_minimum_size = Vector2(120, 30) +layout_mode = 2 +theme_override_fonts/font = SubResource("SystemFont_e8c4f") +theme_override_font_sizes/font_size = 24 +text = "Start Game" + +[node name="Button2" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"] +custom_minimum_size = Vector2(120, 30) +layout_mode = 2 +theme_override_fonts/font = SubResource("SystemFont_e8c4f") +theme_override_font_sizes/font_size = 24 +text = "Settings" + +[node name="Button3" type="Button" parent="MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"] +custom_minimum_size = Vector2(120, 30) +layout_mode = 2 +theme_override_fonts/font = SubResource("SystemFont_e8c4f") +theme_override_font_sizes/font_size = 24 +text = "Exit" diff --git a/icon.svg b/icon.svg new file mode 100644 index 0000000..9d8b7fa --- /dev/null +++ b/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icon.svg.import b/icon.svg.import new file mode 100644 index 0000000..3344f10 --- /dev/null +++ b/icon.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cco7xnf1o0ml" +path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.svg" +dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..a889abf --- /dev/null +++ b/project.godot @@ -0,0 +1,20 @@ +; Engine configuration file. +; It's best edited using the editor UI and not directly, +; since the parameters that go here are not all obvious. +; +; Format: +; [section] ; section goes between [] +; param=value ; assign values to parameters + +config_version=5 + +[application] + +config/name="Menu" +run/main_scene="res://Main_menu/main_menu.tscn" +config/features=PackedStringArray("4.3", "Mobile") +config/icon="res://icon.svg" + +[rendering] + +renderer/rendering_method="mobile"