commit 5f9db2d250e955d345487958f62fef262c56bc60 Author: Lexi Quinn Date: Tue Apr 2 23:33:30 2024 +1100 initial commit 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..4709183 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# Godot 4+ specific ignores +.godot/ diff --git a/Assets/EnterButton/enter.png b/Assets/EnterButton/enter.png new file mode 100644 index 0000000..a3673aa Binary files /dev/null and b/Assets/EnterButton/enter.png differ diff --git a/Assets/EnterButton/enter.png.import b/Assets/EnterButton/enter.png.import new file mode 100644 index 0000000..ff6da0c --- /dev/null +++ b/Assets/EnterButton/enter.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://clfbenn5fu1la" +path="res://.godot/imported/enter.png-63a41b869e37aa0338ce769248d5c55d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/EnterButton/enter.png" +dest_files=["res://.godot/imported/enter.png-63a41b869e37aa0338ce769248d5c55d.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/Assets/EnterButton/enter_hover.png b/Assets/EnterButton/enter_hover.png new file mode 100644 index 0000000..7f2de5b Binary files /dev/null and b/Assets/EnterButton/enter_hover.png differ diff --git a/Assets/EnterButton/enter_hover.png.import b/Assets/EnterButton/enter_hover.png.import new file mode 100644 index 0000000..22e420e --- /dev/null +++ b/Assets/EnterButton/enter_hover.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://tlq6dn0rco4g" +path="res://.godot/imported/enter_hover.png-920538307aaf97c3064a3feadaf7f8ad.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/EnterButton/enter_hover.png" +dest_files=["res://.godot/imported/enter_hover.png-920538307aaf97c3064a3feadaf7f8ad.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/Assets/EnterButton/enter_pushed.png b/Assets/EnterButton/enter_pushed.png new file mode 100644 index 0000000..a627c2b Binary files /dev/null and b/Assets/EnterButton/enter_pushed.png differ diff --git a/Assets/EnterButton/enter_pushed.png.import b/Assets/EnterButton/enter_pushed.png.import new file mode 100644 index 0000000..9154d77 --- /dev/null +++ b/Assets/EnterButton/enter_pushed.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bpq6b6sctivo5" +path="res://.godot/imported/enter_pushed.png-a956f5a34aa96ecb89620bf38a31fc06.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/EnterButton/enter_pushed.png" +dest_files=["res://.godot/imported/enter_pushed.png-a956f5a34aa96ecb89620bf38a31fc06.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/Assets/OffButton/off_button.png b/Assets/OffButton/off_button.png new file mode 100644 index 0000000..fac0dda Binary files /dev/null and b/Assets/OffButton/off_button.png differ diff --git a/Assets/OffButton/off_button.png.import b/Assets/OffButton/off_button.png.import new file mode 100644 index 0000000..598a9f3 --- /dev/null +++ b/Assets/OffButton/off_button.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c80yh0lidbpn0" +path="res://.godot/imported/off_button.png-94a55ca3e04bf848ea25fe35f3296147.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/OffButton/off_button.png" +dest_files=["res://.godot/imported/off_button.png-94a55ca3e04bf848ea25fe35f3296147.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/Assets/OffButton/off_button_hover.png b/Assets/OffButton/off_button_hover.png new file mode 100644 index 0000000..88e843b Binary files /dev/null and b/Assets/OffButton/off_button_hover.png differ diff --git a/Assets/OffButton/off_button_hover.png.import b/Assets/OffButton/off_button_hover.png.import new file mode 100644 index 0000000..baabbbb --- /dev/null +++ b/Assets/OffButton/off_button_hover.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d324adwo1gdj2" +path="res://.godot/imported/off_button_hover.png-19b33ad7e64a91e76959c9f8b580603e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/OffButton/off_button_hover.png" +dest_files=["res://.godot/imported/off_button_hover.png-19b33ad7e64a91e76959c9f8b580603e.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/Assets/OffButton/off_button_pushed.png b/Assets/OffButton/off_button_pushed.png new file mode 100644 index 0000000..cabb279 Binary files /dev/null and b/Assets/OffButton/off_button_pushed.png differ diff --git a/Assets/OffButton/off_button_pushed.png.import b/Assets/OffButton/off_button_pushed.png.import new file mode 100644 index 0000000..f17ac3b --- /dev/null +++ b/Assets/OffButton/off_button_pushed.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c26qgf2pbob32" +path="res://.godot/imported/off_button_pushed.png-ff0a3a75700431c7535dfb2e4698f9f2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/OffButton/off_button_pushed.png" +dest_files=["res://.godot/imported/off_button_pushed.png-ff0a3a75700431c7535dfb2e4698f9f2.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/Assets/StartButton/start_button.png b/Assets/StartButton/start_button.png new file mode 100644 index 0000000..7821641 Binary files /dev/null and b/Assets/StartButton/start_button.png differ diff --git a/Assets/StartButton/start_button.png.import b/Assets/StartButton/start_button.png.import new file mode 100644 index 0000000..7199f78 --- /dev/null +++ b/Assets/StartButton/start_button.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://3ryvswnvtgpr" +path="res://.godot/imported/start_button.png-db5ce6e36dbd60093245cdc54d856fd2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/StartButton/start_button.png" +dest_files=["res://.godot/imported/start_button.png-db5ce6e36dbd60093245cdc54d856fd2.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/Assets/StartButton/start_button_hovered.png b/Assets/StartButton/start_button_hovered.png new file mode 100644 index 0000000..a65617b Binary files /dev/null and b/Assets/StartButton/start_button_hovered.png differ diff --git a/Assets/StartButton/start_button_hovered.png.import b/Assets/StartButton/start_button_hovered.png.import new file mode 100644 index 0000000..a675549 --- /dev/null +++ b/Assets/StartButton/start_button_hovered.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bhvbeyk2kv2lm" +path="res://.godot/imported/start_button_hovered.png-64a50b4b932a435a711c395a10356136.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/StartButton/start_button_hovered.png" +dest_files=["res://.godot/imported/start_button_hovered.png-64a50b4b932a435a711c395a10356136.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/Assets/StartButton/start_button_pushed.png b/Assets/StartButton/start_button_pushed.png new file mode 100644 index 0000000..f4c9787 Binary files /dev/null and b/Assets/StartButton/start_button_pushed.png differ diff --git a/Assets/StartButton/start_button_pushed.png.import b/Assets/StartButton/start_button_pushed.png.import new file mode 100644 index 0000000..1d72438 --- /dev/null +++ b/Assets/StartButton/start_button_pushed.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dp5oddddyocwu" +path="res://.godot/imported/start_button_pushed.png-5ef5c81121dcbe8fd97d720206a37fd1.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/StartButton/start_button_pushed.png" +dest_files=["res://.godot/imported/start_button_pushed.png-5ef5c81121dcbe8fd97d720206a37fd1.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/Assets/catfish.png b/Assets/catfish.png new file mode 100644 index 0000000..f42b397 Binary files /dev/null and b/Assets/catfish.png differ diff --git a/Assets/catfish.png.import b/Assets/catfish.png.import new file mode 100644 index 0000000..24d2dc8 --- /dev/null +++ b/Assets/catfish.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://co5knl5f3lui3" +path="res://.godot/imported/catfish.png-630e26aad7cf79d765ef77388f2e5a04.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/catfish.png" +dest_files=["res://.godot/imported/catfish.png-630e26aad7cf79d765ef77388f2e5a04.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/Assets/darkpanel.tres b/Assets/darkpanel.tres new file mode 100644 index 0000000..229db35 --- /dev/null +++ b/Assets/darkpanel.tres @@ -0,0 +1,4 @@ +[gd_resource type="StyleBoxFlat" format=3 uid="uid://bhwii0745mi6s"] + +[resource] +bg_color = Color(0.611765, 0.392157, 0.321569, 1) diff --git a/Assets/fish_icon.png b/Assets/fish_icon.png new file mode 100644 index 0000000..d198278 Binary files /dev/null and b/Assets/fish_icon.png differ diff --git a/Assets/fish_icon.png.import b/Assets/fish_icon.png.import new file mode 100644 index 0000000..ed15e52 --- /dev/null +++ b/Assets/fish_icon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://csowwaiokaooa" +path="res://.godot/imported/fish_icon.png-7d04d3eb3320ef123a025887caf95e0e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/fish_icon.png" +dest_files=["res://.godot/imported/fish_icon.png-7d04d3eb3320ef123a025887caf95e0e.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/Assets/fish_icon_invert.png b/Assets/fish_icon_invert.png new file mode 100644 index 0000000..424782e Binary files /dev/null and b/Assets/fish_icon_invert.png differ diff --git a/Assets/fish_icon_invert.png.import b/Assets/fish_icon_invert.png.import new file mode 100644 index 0000000..0449d21 --- /dev/null +++ b/Assets/fish_icon_invert.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cs3lmgnyy4xm5" +path="res://.godot/imported/fish_icon_invert.png-8df30a39bdf7a3e0d06a391e6f887907.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/fish_icon_invert.png" +dest_files=["res://.godot/imported/fish_icon_invert.png-8df30a39bdf7a3e0d06a391e6f887907.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/Assets/line.png b/Assets/line.png new file mode 100644 index 0000000..dee7816 Binary files /dev/null and b/Assets/line.png differ diff --git a/Assets/line.png.import b/Assets/line.png.import new file mode 100644 index 0000000..c3ce572 --- /dev/null +++ b/Assets/line.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://tui0tcoga17s" +path="res://.godot/imported/line.png-e9fa65ec9af2abbc666fb369dc0e9791.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/line.png" +dest_files=["res://.godot/imported/line.png-e9fa65ec9af2abbc666fb369dc0e9791.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/Assets/logo.png b/Assets/logo.png new file mode 100644 index 0000000..44ea97b Binary files /dev/null and b/Assets/logo.png differ diff --git a/Assets/logo.png.import b/Assets/logo.png.import new file mode 100644 index 0000000..bc6e730 --- /dev/null +++ b/Assets/logo.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://8m458cpunhg6" +path="res://.godot/imported/logo.png-d03fba62c7db4186a5557663390ad40b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/logo.png" +dest_files=["res://.godot/imported/logo.png-d03fba62c7db4186a5557663390ad40b.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/Assets/logo_small.png b/Assets/logo_small.png new file mode 100644 index 0000000..e68b728 Binary files /dev/null and b/Assets/logo_small.png differ diff --git a/Assets/logo_small.png.import b/Assets/logo_small.png.import new file mode 100644 index 0000000..8c114cf --- /dev/null +++ b/Assets/logo_small.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cx2rsejlktmvo" +path="res://.godot/imported/logo_small.png-cf3bffad9c1a3c7d760ecb2fc72d5b08.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/logo_small.png" +dest_files=["res://.godot/imported/logo_small.png-cf3bffad9c1a3c7d760ecb2fc72d5b08.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/Assets/message_icon.png b/Assets/message_icon.png new file mode 100644 index 0000000..ad05d77 Binary files /dev/null and b/Assets/message_icon.png differ diff --git a/Assets/message_icon.png.import b/Assets/message_icon.png.import new file mode 100644 index 0000000..a4c08ce --- /dev/null +++ b/Assets/message_icon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cm3wtlnnd1msu" +path="res://.godot/imported/message_icon.png-7c1534c8c2c44b06ab9c75fd5086bd9b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/message_icon.png" +dest_files=["res://.godot/imported/message_icon.png-7c1534c8c2c44b06ab9c75fd5086bd9b.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/Assets/message_icon_invert.png b/Assets/message_icon_invert.png new file mode 100644 index 0000000..02fc62d Binary files /dev/null and b/Assets/message_icon_invert.png differ diff --git a/Assets/message_icon_invert.png.import b/Assets/message_icon_invert.png.import new file mode 100644 index 0000000..719874a --- /dev/null +++ b/Assets/message_icon_invert.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://40ri77fo6brh" +path="res://.godot/imported/message_icon_invert.png-a23264943fcfeb1ac4a26d966884a237.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/message_icon_invert.png" +dest_files=["res://.godot/imported/message_icon_invert.png-a23264943fcfeb1ac4a26d966884a237.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/Assets/no.png b/Assets/no.png new file mode 100644 index 0000000..b3a40c6 Binary files /dev/null and b/Assets/no.png differ diff --git a/Assets/no.png.import b/Assets/no.png.import new file mode 100644 index 0000000..017318e --- /dev/null +++ b/Assets/no.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cxw2anmc6julg" +path="res://.godot/imported/no.png-8c6adf0d613d839201988dd7aca9ede3.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/no.png" +dest_files=["res://.godot/imported/no.png-8c6adf0d613d839201988dd7aca9ede3.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/Assets/no_invert.png b/Assets/no_invert.png new file mode 100644 index 0000000..263d748 Binary files /dev/null and b/Assets/no_invert.png differ diff --git a/Assets/no_invert.png.import b/Assets/no_invert.png.import new file mode 100644 index 0000000..1e5af44 --- /dev/null +++ b/Assets/no_invert.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cd4gpc06w68od" +path="res://.godot/imported/no_invert.png-2247e938012710b07e292e9c1cde8773.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/no_invert.png" +dest_files=["res://.godot/imported/no_invert.png-2247e938012710b07e292e9c1cde8773.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/Assets/ocean_bg.png b/Assets/ocean_bg.png new file mode 100644 index 0000000..050301b Binary files /dev/null and b/Assets/ocean_bg.png differ diff --git a/Assets/ocean_bg.png.import b/Assets/ocean_bg.png.import new file mode 100644 index 0000000..9812414 --- /dev/null +++ b/Assets/ocean_bg.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://06lxb843ndgp" +path="res://.godot/imported/ocean_bg.png-221771bf5d3837ac4b445fe5f9285c33.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/ocean_bg.png" +dest_files=["res://.godot/imported/ocean_bg.png-221771bf5d3837ac4b445fe5f9285c33.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/Assets/plentifulfish.png b/Assets/plentifulfish.png new file mode 100644 index 0000000..2993a1a Binary files /dev/null and b/Assets/plentifulfish.png differ diff --git a/Assets/plentifulfish.png.import b/Assets/plentifulfish.png.import new file mode 100644 index 0000000..ea39887 --- /dev/null +++ b/Assets/plentifulfish.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://6y2jj10wkmu8" +path="res://.godot/imported/plentifulfish.png-8e31378789baa3f09632296e2d9dee25.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/plentifulfish.png" +dest_files=["res://.godot/imported/plentifulfish.png-8e31378789baa3f09632296e2d9dee25.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/Assets/profile_icon.png b/Assets/profile_icon.png new file mode 100644 index 0000000..7cf40fc Binary files /dev/null and b/Assets/profile_icon.png differ diff --git a/Assets/profile_icon.png.import b/Assets/profile_icon.png.import new file mode 100644 index 0000000..51824b1 --- /dev/null +++ b/Assets/profile_icon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://con12semgp0f5" +path="res://.godot/imported/profile_icon.png-f4453371d788649294d83631614a2638.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/profile_icon.png" +dest_files=["res://.godot/imported/profile_icon.png-f4453371d788649294d83631614a2638.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/Assets/profile_icon_invert.png b/Assets/profile_icon_invert.png new file mode 100644 index 0000000..35c8a68 Binary files /dev/null and b/Assets/profile_icon_invert.png differ diff --git a/Assets/profile_icon_invert.png.import b/Assets/profile_icon_invert.png.import new file mode 100644 index 0000000..d94b883 --- /dev/null +++ b/Assets/profile_icon_invert.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c8sfk17x7ahgw" +path="res://.godot/imported/profile_icon_invert.png-f2291ccc6f7177533839a80b2d431a91.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/profile_icon_invert.png" +dest_files=["res://.godot/imported/profile_icon_invert.png-f2291ccc6f7177533839a80b2d431a91.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/Assets/yes.png b/Assets/yes.png new file mode 100644 index 0000000..93a1375 Binary files /dev/null and b/Assets/yes.png differ diff --git a/Assets/yes.png.import b/Assets/yes.png.import new file mode 100644 index 0000000..cb69ff5 --- /dev/null +++ b/Assets/yes.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://4id2ggp6enln" +path="res://.godot/imported/yes.png-bce5da0d1c4725112182c5973cf10624.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/yes.png" +dest_files=["res://.godot/imported/yes.png-bce5da0d1c4725112182c5973cf10624.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/Assets/yes_invert.png b/Assets/yes_invert.png new file mode 100644 index 0000000..dfadc48 Binary files /dev/null and b/Assets/yes_invert.png differ diff --git a/Assets/yes_invert.png.import b/Assets/yes_invert.png.import new file mode 100644 index 0000000..7177717 --- /dev/null +++ b/Assets/yes_invert.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://diwd4au18e2r1" +path="res://.godot/imported/yes_invert.png-51169ed428877d9cabbc520398ec9767.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Assets/yes_invert.png" +dest_files=["res://.godot/imported/yes_invert.png-51169ed428877d9cabbc520398ec9767.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/Fish/Fishball/fishball.png b/Fish/Fishball/fishball.png new file mode 100644 index 0000000..e16f452 Binary files /dev/null and b/Fish/Fishball/fishball.png differ diff --git a/Fish/Fishball/fishball.png.import b/Fish/Fishball/fishball.png.import new file mode 100644 index 0000000..b233054 --- /dev/null +++ b/Fish/Fishball/fishball.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cco8s51lcjs2s" +path="res://.godot/imported/fishball.png-5d39606e8cba7f7b3f4e5ea9b28b5875.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Fish/Fishball/fishball.png" +dest_files=["res://.godot/imported/fishball.png-5d39606e8cba7f7b3f4e5ea9b28b5875.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/Fish/Fishball/fishball.tres b/Fish/Fishball/fishball.tres new file mode 100644 index 0000000..8346a86 --- /dev/null +++ b/Fish/Fishball/fishball.tres @@ -0,0 +1,9 @@ +[gd_resource type="Resource" script_class="FishProfile" load_steps=3 format=3 uid="uid://dun2uls53mmbq"] + +[ext_resource type="Texture2D" uid="uid://cco8s51lcjs2s" path="res://Fish/Fishball/fishball.png" id="1_5j47e"] +[ext_resource type="Script" path="res://Resources/fish_profile.gd" id="1_v5n31"] + +[resource] +script = ExtResource("1_v5n31") +fish_name = "Mr. Ball" +picture = ExtResource("1_5j47e") diff --git a/Fish/Goldfish/goldfish.png b/Fish/Goldfish/goldfish.png new file mode 100644 index 0000000..fede26f Binary files /dev/null and b/Fish/Goldfish/goldfish.png differ diff --git a/Fish/Goldfish/goldfish.png.import b/Fish/Goldfish/goldfish.png.import new file mode 100644 index 0000000..b4cb21b --- /dev/null +++ b/Fish/Goldfish/goldfish.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ct3mqh62m2c36" +path="res://.godot/imported/goldfish.png-d905059af1e77e951c36d4d50146dbb3.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Fish/Goldfish/goldfish.png" +dest_files=["res://.godot/imported/goldfish.png-d905059af1e77e951c36d4d50146dbb3.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/Fish/Goldfish/goldfish.tres b/Fish/Goldfish/goldfish.tres new file mode 100644 index 0000000..0fb1a1d --- /dev/null +++ b/Fish/Goldfish/goldfish.tres @@ -0,0 +1,9 @@ +[gd_resource type="Resource" script_class="FishProfile" load_steps=3 format=3 uid="uid://co03mjgi5q1xh"] + +[ext_resource type="Texture2D" uid="uid://ct3mqh62m2c36" path="res://Fish/Goldfish/goldfish.png" id="1_i4yvj"] +[ext_resource type="Script" path="res://Resources/fish_profile.gd" id="1_wk3hw"] + +[resource] +script = ExtResource("1_wk3hw") +fish_name = "Goldy" +picture = ExtResource("1_i4yvj") diff --git a/Fish/LeafySeaDragon/leafy_seadragon.png b/Fish/LeafySeaDragon/leafy_seadragon.png new file mode 100644 index 0000000..139c519 Binary files /dev/null and b/Fish/LeafySeaDragon/leafy_seadragon.png differ diff --git a/Fish/LeafySeaDragon/leafy_seadragon.png.import b/Fish/LeafySeaDragon/leafy_seadragon.png.import new file mode 100644 index 0000000..87b9558 --- /dev/null +++ b/Fish/LeafySeaDragon/leafy_seadragon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cgpihcsrl4ejg" +path="res://.godot/imported/leafy_seadragon.png-4c87e8e10f6c399e8de4fc873c05ece5.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Fish/LeafySeaDragon/leafy_seadragon.png" +dest_files=["res://.godot/imported/leafy_seadragon.png-4c87e8e10f6c399e8de4fc873c05ece5.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/Fish/LeafySeaDragon/leafy_seadragon.tres b/Fish/LeafySeaDragon/leafy_seadragon.tres new file mode 100644 index 0000000..1cb052d --- /dev/null +++ b/Fish/LeafySeaDragon/leafy_seadragon.tres @@ -0,0 +1,9 @@ +[gd_resource type="Resource" script_class="FishProfile" load_steps=3 format=3 uid="uid://b7cyooj5na7ur"] + +[ext_resource type="Texture2D" uid="uid://cgpihcsrl4ejg" path="res://Fish/LeafySeaDragon/leafy_seadragon.png" id="1_b7aoq"] +[ext_resource type="Script" path="res://Resources/fish_profile.gd" id="1_vx7qb"] + +[resource] +script = ExtResource("1_vx7qb") +fish_name = "Leafie" +picture = ExtResource("1_b7aoq") diff --git a/Menus/MainMenu/main_menu.gd b/Menus/MainMenu/main_menu.gd new file mode 100644 index 0000000..77c35b5 --- /dev/null +++ b/Menus/MainMenu/main_menu.gd @@ -0,0 +1,39 @@ +extends PanelContainer + +@export var profile_name: LineEdit +@export var enter_button: TextureButton + +var save: SaveFile + + +func _ready() -> void: + save = SaveFile.load_profile_from_disk() + if save.catfish_name: + profile_name.text = save.catfish_name + enter_button.visible = true + + +func _on_texture_button_pressed() -> void: + get_tree().quit() + + +func load_game() -> void: + if profile_name.text.length() > 0: + save.catfish_name = profile_name.text + save.save_to_disk() + get_tree().change_scene_to_file("res://Quinnsoft94/desktop.tscn") + + +func _on_line_edit_text_submitted(new_text: String) -> void: + load_game() + + +func _on_line_edit_text_changed(new_text: String) -> void: + if new_text.length() > 0: + enter_button.visible = true + else: + enter_button.visible = false + + +func _on_enter_button_pressed() -> void: + load_game() diff --git a/Menus/MainMenu/main_menu.tscn b/Menus/MainMenu/main_menu.tscn new file mode 100644 index 0000000..42fcf0b --- /dev/null +++ b/Menus/MainMenu/main_menu.tscn @@ -0,0 +1,176 @@ +[gd_scene load_steps=16 format=3 uid="uid://ig66qdnq62p0"] + +[ext_resource type="Texture2D" uid="uid://c80yh0lidbpn0" path="res://Assets/OffButton/off_button.png" id="1_s7hhf"] +[ext_resource type="Script" path="res://Menus/MainMenu/main_menu.gd" id="1_xav2y"] +[ext_resource type="Texture2D" uid="uid://c26qgf2pbob32" path="res://Assets/OffButton/off_button_pushed.png" id="2_5troo"] +[ext_resource type="Texture2D" uid="uid://8m458cpunhg6" path="res://Assets/logo.png" id="2_ks1kr"] +[ext_resource type="Texture2D" uid="uid://d324adwo1gdj2" path="res://Assets/OffButton/off_button_hover.png" id="3_78wfw"] +[ext_resource type="Texture2D" uid="uid://tui0tcoga17s" path="res://Assets/line.png" id="3_fyi56"] +[ext_resource type="Texture2D" uid="uid://06lxb843ndgp" path="res://Assets/ocean_bg.png" id="4_fob30"] +[ext_resource type="Texture2D" uid="uid://co5knl5f3lui3" path="res://Assets/catfish.png" id="5_lh7pm"] +[ext_resource type="Texture2D" uid="uid://clfbenn5fu1la" path="res://Assets/EnterButton/enter.png" id="6_0i1jn"] +[ext_resource type="Texture2D" uid="uid://bpq6b6sctivo5" path="res://Assets/EnterButton/enter_pushed.png" id="7_ggmnc"] +[ext_resource type="Texture2D" uid="uid://tlq6dn0rco4g" path="res://Assets/EnterButton/enter_hover.png" id="8_6a0ri"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_rxxt7"] +bg_color = Color(0.129412, 0.196078, 0.65098, 1) + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_143si"] +bg_color = Color(0.352941, 0.494118, 0.862745, 1) + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_5sn22"] +bg_color = Color(0.180392, 0.337255, 0.721569, 1) + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_ha25n"] + +[node name="MainMenu" type="PanelContainer" node_paths=PackedStringArray("profile_name", "enter_button")] +texture_filter = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_rxxt7") +script = ExtResource("1_xav2y") +profile_name = NodePath("VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer/HBoxContainer/LineEdit") +enter_button = NodePath("VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer/HBoxContainer/TextureButton") + +[node name="VBoxContainer" type="VBoxContainer" parent="."] +layout_mode = 2 + +[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 3 +size_flags_stretch_ratio = 4.66 +theme_override_constants/margin_top = 110 + +[node name="Content" type="PanelContainer" parent="VBoxContainer/MarginContainer"] +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_143si") + +[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/MarginContainer/Content"] +layout_mode = 2 + +[node name="MarginContainer2" type="MarginContainer" parent="VBoxContainer/MarginContainer/Content/HBoxContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +theme_override_constants/margin_right = 32 + +[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer2"] +layout_mode = 2 +size_flags_horizontal = 3 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer2/VBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(256, 256) +layout_mode = 2 +size_flags_horizontal = 8 +texture = ExtResource("2_ks1kr") +stretch_mode = 5 + +[node name="Label" type="Label" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer2/VBoxContainer"] +layout_mode = 2 +theme_override_font_sizes/font_size = 32 +text = "To begin, type your username" +horizontal_alignment = 2 + +[node name="TextureRect" type="TextureRect" parent="VBoxContainer/MarginContainer/Content/HBoxContainer"] +texture_filter = 1 +layout_mode = 2 +texture = ExtResource("3_fyi56") + +[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/MarginContainer/Content/HBoxContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +theme_override_constants/margin_left = 32 + +[node name="PanelContainer" type="PanelContainer" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer"] +layout_mode = 2 +size_flags_horizontal = 2 +size_flags_vertical = 4 +theme_override_styles/panel = SubResource("StyleBoxFlat_5sn22") + +[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer"] +layout_mode = 2 +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="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer"] +layout_mode = 2 + +[node name="TextureRect" type="TextureRect" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer/HBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture = ExtResource("4_fob30") +stretch_mode = 5 + +[node name="TextureRect" type="TextureRect" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer/HBoxContainer/TextureRect"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("5_lh7pm") + +[node name="LineEdit" type="LineEdit" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer/HBoxContainer"] +layout_mode = 2 +theme_override_font_sizes/font_size = 32 +expand_to_text_length = true + +[node name="TextureButton" type="TextureButton" parent="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer/HBoxContainer"] +visible = false +texture_filter = 1 +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture_normal = ExtResource("6_0i1jn") +texture_pressed = ExtResource("7_ggmnc") +texture_hover = ExtResource("8_6a0ri") +stretch_mode = 5 + +[node name="Footer" type="PanelContainer" parent="VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 3 +theme_override_styles/panel = SubResource("StyleBoxEmpty_ha25n") + +[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/Footer"] +layout_mode = 2 +size_flags_vertical = 0 +theme_override_constants/margin_top = 16 + +[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/Footer/MarginContainer"] +layout_mode = 2 +theme_override_constants/separation = 430 +alignment = 1 + +[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/Footer/MarginContainer/HBoxContainer"] +layout_mode = 2 + +[node name="TextureButton" type="TextureButton" parent="VBoxContainer/Footer/MarginContainer/HBoxContainer/HBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture_normal = ExtResource("1_s7hhf") +texture_pressed = ExtResource("2_5troo") +texture_hover = ExtResource("3_78wfw") +stretch_mode = 5 + +[node name="Label" type="Label" parent="VBoxContainer/Footer/MarginContainer/HBoxContainer/HBoxContainer"] +layout_mode = 2 +theme_override_font_sizes/font_size = 32 +text = " Turn off computer" + +[node name="Label" type="Label" parent="VBoxContainer/Footer/MarginContainer/HBoxContainer"] +layout_mode = 2 +theme_override_font_sizes/font_size = 18 +text = "After you log on, you cannot add or change accounts. +Just go play something else because I didn't put effort into this" + +[connection signal="text_changed" from="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer/HBoxContainer/LineEdit" to="." method="_on_line_edit_text_changed"] +[connection signal="text_submitted" from="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer/HBoxContainer/LineEdit" to="." method="_on_line_edit_text_submitted"] +[connection signal="pressed" from="VBoxContainer/MarginContainer/Content/HBoxContainer/MarginContainer/PanelContainer/MarginContainer/HBoxContainer/TextureButton" to="." method="_on_enter_button_pressed"] +[connection signal="pressed" from="VBoxContainer/Footer/MarginContainer/HBoxContainer/HBoxContainer/TextureButton" to="." method="_on_texture_button_pressed"] diff --git a/Menus/Messages/message_preview.gd b/Menus/Messages/message_preview.gd new file mode 100644 index 0000000..69691fa --- /dev/null +++ b/Menus/Messages/message_preview.gd @@ -0,0 +1,17 @@ +class_name MessagePreview extends MarginContainer + +signal open_message() + +@export var pfp: TextureRect +@export var fish_name_label: Label +@export var message_label: Label + + +func setup(profile: FishProfile, message: String): + pfp.texture = profile.picture + fish_name_label.text = profile.fish_name + message_label.text = message + + +func _on_button_pressed() -> void: + open_message.emit() diff --git a/Menus/Messages/message_preview.tscn b/Menus/Messages/message_preview.tscn new file mode 100644 index 0000000..af0587b --- /dev/null +++ b/Menus/Messages/message_preview.tscn @@ -0,0 +1,87 @@ +[gd_scene load_steps=5 format=3 uid="uid://co43b1v8r5md5"] + +[ext_resource type="Script" path="res://Menus/Messages/message_preview.gd" id="1_7tq4e"] +[ext_resource type="StyleBox" uid="uid://bhwii0745mi6s" path="res://Assets/darkpanel.tres" id="2_ig7jg"] +[ext_resource type="Texture2D" uid="uid://06lxb843ndgp" path="res://Assets/ocean_bg.png" id="3_2mx8o"] +[ext_resource type="Texture2D" uid="uid://ct3mqh62m2c36" path="res://Fish/Goldfish/goldfish.png" id="4_7xgia"] + +[node name="MarginContainer" type="MarginContainer" node_paths=PackedStringArray("pfp", "fish_name_label", "message_label")] +anchors_preset = 10 +anchor_right = 1.0 +offset_bottom = 96.0 +grow_horizontal = 2 +theme_override_constants/margin_left = 8 +theme_override_constants/margin_top = 8 +theme_override_constants/margin_right = 8 +theme_override_constants/margin_bottom = 8 +script = ExtResource("1_7tq4e") +pfp = NodePath("Button/PanelContainer/MarginContainer/Control/TextureRect/TextureRect") +fish_name_label = NodePath("Button/PanelContainer/MarginContainer/Control/MarginContainer/VBoxContainer/Name") +message_label = NodePath("Button/PanelContainer/MarginContainer/Control/MarginContainer/VBoxContainer/Message") + +[node name="Button" type="Button" parent="."] +custom_minimum_size = Vector2(0, 84) +layout_mode = 2 +flat = true + +[node name="PanelContainer" type="PanelContainer" parent="Button"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 +theme_override_styles/panel = ExtResource("2_ig7jg") + +[node name="MarginContainer" type="MarginContainer" parent="Button/PanelContainer"] +layout_mode = 2 +theme_override_constants/margin_left = 8 +theme_override_constants/margin_top = 8 +theme_override_constants/margin_right = 8 +theme_override_constants/margin_bottom = 8 + +[node name="Control" type="HBoxContainer" parent="Button/PanelContainer/MarginContainer"] +layout_mode = 2 + +[node name="TextureRect" type="TextureRect" parent="Button/PanelContainer/MarginContainer/Control"] +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture = ExtResource("3_2mx8o") +expand_mode = 1 +stretch_mode = 5 + +[node name="TextureRect" type="TextureRect" parent="Button/PanelContainer/MarginContainer/Control/TextureRect"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("4_7xgia") +stretch_mode = 5 + +[node name="MarginContainer" type="MarginContainer" parent="Button/PanelContainer/MarginContainer/Control"] +layout_mode = 2 +theme_override_constants/margin_left = 8 +theme_override_constants/margin_top = 4 +theme_override_constants/margin_right = 8 +theme_override_constants/margin_bottom = 4 + +[node name="VBoxContainer" type="VBoxContainer" parent="Button/PanelContainer/MarginContainer/Control/MarginContainer"] +layout_mode = 2 + +[node name="Name" type="Label" parent="Button/PanelContainer/MarginContainer/Control/MarginContainer/VBoxContainer"] +layout_mode = 2 +theme_override_colors/font_color = Color(1, 1, 1, 1) +theme_override_colors/font_outline_color = Color(0, 0, 0, 1) +theme_override_constants/outline_size = 2 +theme_override_font_sizes/font_size = 24 +text = "GOLDY" + +[node name="Message" type="Label" parent="Button/PanelContainer/MarginContainer/Control/MarginContainer/VBoxContainer"] +layout_mode = 2 +theme_override_font_sizes/font_size = 16 +text = "message preview" + +[connection signal="pressed" from="Button" to="." method="_on_button_pressed"] diff --git a/Menus/Messages/messages_menu.gd b/Menus/Messages/messages_menu.gd new file mode 100644 index 0000000..b54063e --- /dev/null +++ b/Menus/Messages/messages_menu.gd @@ -0,0 +1,10 @@ +class_name MessageMenu extends ScrollContainer + +@export var message_preview_scene: PackedScene +@export var vbox: VBoxContainer +var save: SaveFile + + +func _ready() -> void: + var message = message_preview_scene.instantiate() as MessagePreview + vbox.add_child(message) diff --git a/Menus/Messages/messages_menu.tscn b/Menus/Messages/messages_menu.tscn new file mode 100644 index 0000000..78e443c --- /dev/null +++ b/Menus/Messages/messages_menu.tscn @@ -0,0 +1,20 @@ +[gd_scene load_steps=3 format=3 uid="uid://db0bwtrlmfxbj"] + +[ext_resource type="Script" path="res://Menus/Messages/messages_menu.gd" id="1_x4naa"] +[ext_resource type="PackedScene" uid="uid://co43b1v8r5md5" path="res://Menus/Messages/message_preview.tscn" id="2_ja6w2"] + +[node name="Control" type="ScrollContainer" node_paths=PackedStringArray("vbox")] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +horizontal_scroll_mode = 0 +script = ExtResource("1_x4naa") +message_preview_scene = ExtResource("2_ja6w2") +vbox = NodePath("VBoxContainer") + +[node name="VBoxContainer" type="VBoxContainer" parent="."] +layout_mode = 2 +size_flags_horizontal = 3 +size_flags_vertical = 3 diff --git a/Menus/PlentifulFish/PoF.tscn b/Menus/PlentifulFish/PoF.tscn new file mode 100644 index 0000000..8de1680 --- /dev/null +++ b/Menus/PlentifulFish/PoF.tscn @@ -0,0 +1,124 @@ +[gd_scene load_steps=19 format=3 uid="uid://wa62w2wb4pmr"] + +[ext_resource type="Script" path="res://Menus/PlentifulFish/application.gd" id="1_yl22y"] +[ext_resource type="PackedScene" uid="uid://dge7ymn0yd7ry" path="res://Menus/Swipe/fish_card.tscn" id="2_uajjj"] +[ext_resource type="PackedScene" uid="uid://db0bwtrlmfxbj" path="res://Menus/Messages/messages_menu.tscn" id="3_42fn6"] +[ext_resource type="Resource" uid="uid://b7cyooj5na7ur" path="res://Fish/LeafySeaDragon/leafy_seadragon.tres" id="4_tkrdy"] +[ext_resource type="Resource" uid="uid://co03mjgi5q1xh" path="res://Fish/Goldfish/goldfish.tres" id="5_g7gvi"] +[ext_resource type="Resource" uid="uid://dun2uls53mmbq" path="res://Fish/Fishball/fishball.tres" id="6_6w8p5"] +[ext_resource type="Texture2D" uid="uid://06lxb843ndgp" path="res://Assets/ocean_bg.png" id="7_o2jv7"] +[ext_resource type="Texture2D" uid="uid://co5knl5f3lui3" path="res://Assets/catfish.png" id="8_7dnbn"] +[ext_resource type="StyleBox" uid="uid://bhwii0745mi6s" path="res://Assets/darkpanel.tres" id="9_d6aw3"] +[ext_resource type="Texture2D" uid="uid://csowwaiokaooa" path="res://Assets/fish_icon.png" id="10_jb5xi"] +[ext_resource type="Texture2D" uid="uid://cs3lmgnyy4xm5" path="res://Assets/fish_icon_invert.png" id="11_b8gwu"] +[ext_resource type="Texture2D" uid="uid://cm3wtlnnd1msu" path="res://Assets/message_icon.png" id="12_yhvua"] +[ext_resource type="Texture2D" uid="uid://40ri77fo6brh" path="res://Assets/message_icon_invert.png" id="13_yi281"] +[ext_resource type="Texture2D" uid="uid://con12semgp0f5" path="res://Assets/profile_icon.png" id="14_s36ga"] +[ext_resource type="Texture2D" uid="uid://c8sfk17x7ahgw" path="res://Assets/profile_icon_invert.png" id="15_t23q2"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_th770"] +bg_color = Color(0.768627, 0.533333, 0.458824, 1) + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_a7vhj"] +bg_color = Color(0.611765, 0.392157, 0.321569, 1) + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_hehe3"] + +[node name="PoF" type="PanelContainer" node_paths=PackedStringArray("player_name_text", "contents_page")] +custom_minimum_size = Vector2(600, 680) +anchors_preset = 5 +anchor_left = 0.5 +anchor_right = 0.5 +offset_left = -300.0 +offset_right = 300.0 +offset_bottom = 400.0 +grow_horizontal = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_th770") +script = ExtResource("1_yl22y") +player_name_text = NodePath("VBoxContainer/Header/HBoxContainer/PlayerName") +fish_card_scene = ExtResource("2_uajjj") +messages_scene = ExtResource("3_42fn6") +fish_profiles = Array[Resource("res://Resources/fish_profile.gd")]([ExtResource("4_tkrdy"), ExtResource("5_g7gvi"), ExtResource("6_6w8p5")]) +contents_page = NodePath("VBoxContainer/Content") + +[node name="VBoxContainer" type="VBoxContainer" parent="."] +layout_mode = 2 + +[node name="Header" type="PanelContainer" parent="VBoxContainer"] +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_a7vhj") + +[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/Header"] +layout_mode = 2 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="VBoxContainer/Header/HBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture = ExtResource("7_o2jv7") + +[node name="TextureRect" type="TextureRect" parent="VBoxContainer/Header/HBoxContainer/TextureRect"] +texture_filter = 1 +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("8_7dnbn") + +[node name="PlayerName" type="Label" parent="VBoxContainer/Header/HBoxContainer"] +layout_mode = 2 +theme_override_font_sizes/font_size = 36 +text = "cool name" +vertical_alignment = 1 + +[node name="Content" type="PanelContainer" parent="VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 3 +theme_override_styles/panel = SubResource("StyleBoxEmpty_hehe3") + +[node name="Footer" type="PanelContainer" parent="VBoxContainer"] +layout_mode = 2 +theme_override_styles/panel = ExtResource("9_d6aw3") + +[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/Footer"] +layout_mode = 2 +alignment = 1 + +[node name="Fish" type="TextureButton" parent="VBoxContainer/Footer/HBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture_normal = ExtResource("10_jb5xi") +texture_pressed = ExtResource("10_jb5xi") +texture_hover = ExtResource("11_b8gwu") +stretch_mode = 5 + +[node name="Messages" type="TextureButton" parent="VBoxContainer/Footer/HBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture_normal = ExtResource("12_yhvua") +texture_pressed = ExtResource("12_yhvua") +texture_hover = ExtResource("13_yi281") +stretch_mode = 5 + +[node name="Profile" type="TextureButton" parent="VBoxContainer/Footer/HBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture_normal = ExtResource("14_s36ga") +texture_pressed = ExtResource("14_s36ga") +texture_hover = ExtResource("15_t23q2") +stretch_mode = 5 + +[node name="Timer" type="Timer" parent="."] +wait_time = 15.0 +one_shot = true + +[connection signal="pressed" from="VBoxContainer/Footer/HBoxContainer/Fish" to="." method="_on_fish_pressed"] +[connection signal="pressed" from="VBoxContainer/Footer/HBoxContainer/Messages" to="." method="_on_messages_pressed"] +[connection signal="pressed" from="VBoxContainer/Footer/HBoxContainer/Profile" to="." method="_on_profile_pressed"] +[connection signal="timeout" from="Timer" to="." method="recycle_profiles"] diff --git a/Menus/PlentifulFish/application.gd b/Menus/PlentifulFish/application.gd new file mode 100644 index 0000000..d8aa0da --- /dev/null +++ b/Menus/PlentifulFish/application.gd @@ -0,0 +1,69 @@ +class_name Application extends PanelContainer + +@export var application_name: String = "Plentiful Fish" +@export var player_name_text: Label +@export var fish_card_scene: PackedScene +@export var messages_scene: PackedScene +@export var fish_profiles: Array[FishProfile] +@export var discarded_fish_profiles: Array[FishProfile] +@export var contents_page: Control +var has_current_fish: bool = false +var save_file: SaveFile +var current_card: int = 0 +var window: DEWindow + + +func setup_window_integration(): + pass + + +func _ready() -> void: + player_name_text.text = save_file.catfish_name + _on_fish_pressed() + + +func load_profile() -> void: + if has_current_fish or fish_profiles.size() <= current_card: + return + var fish_card = fish_card_scene.instantiate() as FishCard + fish_card.set_display(fish_profiles[current_card]) + fish_card.swiped.connect(process_fish_profile.bind(fish_card)) + contents_page.add_child(fish_card) + has_current_fish = true + + +func process_fish_profile(outcome: bool, card: FishCard): + current_card += 1 + has_current_fish = false + if outcome: + save_file.accepted_fish.append(card.profile) + else: + discarded_fish_profiles.append(card.profile) + if discarded_fish_profiles.size() > 0 and current_card >= fish_profiles.size(): + $Timer.start() + load_profile() + + +func recycle_profiles() -> void: + fish_profiles = discarded_fish_profiles + current_card = 0 + + +func _on_fish_pressed() -> void: + for node: Node in contents_page.get_children(): + node.queue_free() + load_profile() + + +func _on_messages_pressed() -> void: + has_current_fish = false + for node: Node in contents_page.get_children(): + node.queue_free() + var messages: MessageMenu = messages_scene.instantiate() as MessageMenu + contents_page.add_child(messages) + + +func _on_profile_pressed() -> void: + has_current_fish = false + for node: Node in contents_page.get_children(): + node.queue_free() diff --git a/Menus/Swipe/fish_card.gd b/Menus/Swipe/fish_card.gd new file mode 100644 index 0000000..b9bc1f0 --- /dev/null +++ b/Menus/Swipe/fish_card.gd @@ -0,0 +1,33 @@ +class_name FishCard extends PanelContainer + +signal swiped(outcome: bool) + +var profile: FishProfile +@export var pfp_display: TextureRect +@export var fish_label: Label + + +func set_display(new_profile: FishProfile): + profile = new_profile + pfp_display.texture = profile.picture + fish_label.text = profile.fish_name + + +func _on_no_pressed() -> void: + var tween = create_tween() + tween.set_ease(Tween.EASE_OUT) + tween.set_trans(Tween.TRANS_CUBIC) + var dest: Vector2 = position + Vector2(-600, 0) + tween.tween_property(self, "position", dest, 0.6) + tween.tween_callback(func(): swiped.emit(false)) + tween.tween_callback(queue_free) + + +func _on_yes_pressed() -> void: + var tween = create_tween() + tween.set_ease(Tween.EASE_OUT) + tween.set_trans(Tween.TRANS_CUBIC) + var dest: Vector2 = position + Vector2(600, 0) + tween.tween_property(self, "position", dest, 0.6) + tween.tween_callback(func(): swiped.emit(true)) + tween.tween_callback(queue_free) diff --git a/Menus/Swipe/fish_card.tscn b/Menus/Swipe/fish_card.tscn new file mode 100644 index 0000000..4d13197 --- /dev/null +++ b/Menus/Swipe/fish_card.tscn @@ -0,0 +1,86 @@ +[gd_scene load_steps=9 format=3 uid="uid://dge7ymn0yd7ry"] + +[ext_resource type="StyleBox" uid="uid://bhwii0745mi6s" path="res://Assets/darkpanel.tres" id="1_bo5ug"] +[ext_resource type="Script" path="res://Menus/Swipe/fish_card.gd" id="1_icnll"] +[ext_resource type="Texture2D" uid="uid://06lxb843ndgp" path="res://Assets/ocean_bg.png" id="1_up35p"] +[ext_resource type="Texture2D" uid="uid://cgpihcsrl4ejg" path="res://Fish/LeafySeaDragon/leafy_seadragon.png" id="2_coegx"] +[ext_resource type="Texture2D" uid="uid://cxw2anmc6julg" path="res://Assets/no.png" id="3_8ybbb"] +[ext_resource type="Texture2D" uid="uid://4id2ggp6enln" path="res://Assets/yes.png" id="4_uby25"] +[ext_resource type="Texture2D" uid="uid://cd4gpc06w68od" path="res://Assets/no_invert.png" id="5_5hf51"] +[ext_resource type="Texture2D" uid="uid://diwd4au18e2r1" path="res://Assets/yes_invert.png" id="7_v6le4"] + +[node name="FishCard" type="PanelContainer" node_paths=PackedStringArray("pfp_display", "fish_label")] +anchors_preset = 5 +anchor_left = 0.5 +anchor_right = 0.5 +offset_left = -128.0 +offset_right = 128.0 +offset_bottom = 539.0 +grow_horizontal = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +theme_override_styles/panel = ExtResource("1_bo5ug") +script = ExtResource("1_icnll") +pfp_display = NodePath("Control/VBoxContainer/TextureRect/TextureRect") +fish_label = NodePath("Control/VBoxContainer/Label") + +[node name="Control" type="MarginContainer" parent="."] +layout_mode = 2 +theme_override_constants/margin_left = 32 +theme_override_constants/margin_top = 16 +theme_override_constants/margin_right = 32 +theme_override_constants/margin_bottom = 16 + +[node name="VBoxContainer" type="VBoxContainer" parent="Control"] +layout_mode = 2 +alignment = 1 + +[node name="Label" type="Label" parent="Control/VBoxContainer"] +layout_mode = 2 +theme_override_font_sizes/font_size = 48 +text = "FISH NAME" +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="Control/VBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(0, 300) +layout_mode = 2 +texture = ExtResource("1_up35p") +stretch_mode = 5 + +[node name="TextureRect" type="TextureRect" parent="Control/VBoxContainer/TextureRect"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("2_coegx") +stretch_mode = 5 + +[node name="HBoxContainer" type="HBoxContainer" parent="Control/VBoxContainer"] +layout_mode = 2 +theme_override_constants/separation = 32 +alignment = 1 + +[node name="NO" type="TextureButton" parent="Control/VBoxContainer/HBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture_normal = ExtResource("3_8ybbb") +texture_pressed = ExtResource("3_8ybbb") +texture_hover = ExtResource("5_5hf51") +stretch_mode = 5 + +[node name="YES" type="TextureButton" parent="Control/VBoxContainer/HBoxContainer"] +texture_filter = 1 +custom_minimum_size = Vector2(64, 64) +layout_mode = 2 +texture_normal = ExtResource("4_uby25") +texture_pressed = ExtResource("4_uby25") +texture_hover = ExtResource("7_v6le4") +stretch_mode = 5 + +[connection signal="pressed" from="Control/VBoxContainer/HBoxContainer/NO" to="." method="_on_no_pressed"] +[connection signal="pressed" from="Control/VBoxContainer/HBoxContainer/YES" to="." method="_on_yes_pressed"] diff --git a/Quinnsoft94/clock.gd b/Quinnsoft94/clock.gd new file mode 100644 index 0000000..ef994ba --- /dev/null +++ b/Quinnsoft94/clock.gd @@ -0,0 +1,11 @@ +class_name ClockLabel extends Label + + +func _process(_delta: float) -> void: + var time = Time.get_time_dict_from_system() + var suffix = "am" + if time.hour >= 12: + suffix = "pm" + if time.hour != 12: + time.hour -= 12 + text = "%02d:%02d%s" % [time.hour, time.minute, suffix] diff --git a/Quinnsoft94/close.png b/Quinnsoft94/close.png new file mode 100644 index 0000000..8677704 Binary files /dev/null and b/Quinnsoft94/close.png differ diff --git a/Quinnsoft94/close.png.import b/Quinnsoft94/close.png.import new file mode 100644 index 0000000..8578f51 --- /dev/null +++ b/Quinnsoft94/close.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://csbjb0e2ks7fw" +path="res://.godot/imported/close.png-a9d0a2e01defd701cf6f50b275ecd636.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Quinnsoft94/close.png" +dest_files=["res://.godot/imported/close.png-a9d0a2e01defd701cf6f50b275ecd636.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/Quinnsoft94/close_pressed.png b/Quinnsoft94/close_pressed.png new file mode 100644 index 0000000..8a3629e Binary files /dev/null and b/Quinnsoft94/close_pressed.png differ diff --git a/Quinnsoft94/close_pressed.png.import b/Quinnsoft94/close_pressed.png.import new file mode 100644 index 0000000..85a053b --- /dev/null +++ b/Quinnsoft94/close_pressed.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bua3dj3bodr67" +path="res://.godot/imported/close_pressed.png-7f213f5bc717e90de8bb6d0838005c47.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Quinnsoft94/close_pressed.png" +dest_files=["res://.godot/imported/close_pressed.png-7f213f5bc717e90de8bb6d0838005c47.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/Quinnsoft94/desktop.gd b/Quinnsoft94/desktop.gd new file mode 100644 index 0000000..5c44bf7 --- /dev/null +++ b/Quinnsoft94/desktop.gd @@ -0,0 +1,46 @@ +class_name Desktop extends ColorRect + +@export var window_holder: Control +@export var taskbar: HBoxContainer +@export var desktop_icon_container: VBoxContainer + +@export var pof_icon: Texture +@export var pof_scene: PackedScene + +var window_scene = preload("res://Quinnsoft94/program_window.tscn") + + +func add_desktop_icon(icon: Texture, title: String, function: Callable): + var button = Button.new() + button.flat = true + button.icon = icon + button.text = title + button.size_flags_vertical = Control.SIZE_SHRINK_BEGIN + button.icon_alignment = HORIZONTAL_ALIGNMENT_CENTER + button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP + button.expand_icon = true + button.texture_filter = CanvasItem.TEXTURE_FILTER_NEAREST + button.custom_minimum_size = Vector2(96, 96) + button.pressed.connect(function) + desktop_icon_container.add_child(button) + + +func spawn_program(program_scene, icon): + var window = window_scene.instantiate() as DEWindow + window_holder.add_child(window) + var program = program_scene.instantiate() as Application + program.save_file = SaveFile.load_profile_from_disk() + add_child(program) + window.set_program(program) + var button = Button.new() + button.text = program.application_name + button.icon = icon + button.pressed.connect(window.set_visible.bind(true)) + taskbar.add_child(button) + window.closed.connect(button.queue_free) + + +func _ready() -> void: + add_desktop_icon(pof_icon, "Plentiful Fish", spawn_program.bind(pof_scene, pof_icon)) + #add_desktop_icon(uno_icon, "Uno", spawn_program.bind(uno_scene, uno_icon)) + #add_desktop_icon(snakes_and_ladders_icon, "Snakes and Ladders", spawn_program.bind(snakes_and_ladders_scene, snakes_and_ladders_icon)) diff --git a/Quinnsoft94/desktop.tscn b/Quinnsoft94/desktop.tscn new file mode 100644 index 0000000..c59f71c --- /dev/null +++ b/Quinnsoft94/desktop.tscn @@ -0,0 +1,93 @@ +[gd_scene load_steps=9 format=3 uid="uid://ddtcomingnoto"] + +[ext_resource type="Script" path="res://Quinnsoft94/desktop.gd" id="1_7gagq"] +[ext_resource type="Theme" uid="uid://cfsgvdm1la7nr" path="res://Quinnsoft94/quinnsoft94.tres" id="1_ipi37"] +[ext_resource type="Script" path="res://Quinnsoft94/clock.gd" id="1_vlwj3"] +[ext_resource type="Texture2D" uid="uid://6y2jj10wkmu8" path="res://Assets/plentifulfish.png" id="3_acswl"] +[ext_resource type="PackedScene" uid="uid://wa62w2wb4pmr" path="res://Menus/PlentifulFish/PoF.tscn" id="4_o0r25"] +[ext_resource type="Texture2D" uid="uid://3ryvswnvtgpr" path="res://Assets/StartButton/start_button.png" id="5_0n3qh"] +[ext_resource type="Texture2D" uid="uid://dp5oddddyocwu" path="res://Assets/StartButton/start_button_pushed.png" id="6_7cebq"] +[ext_resource type="Texture2D" uid="uid://bhvbeyk2kv2lm" path="res://Assets/StartButton/start_button_hovered.png" id="7_uy8qo"] + +[node name="PanelContainer" type="ColorRect" node_paths=PackedStringArray("window_holder", "taskbar", "desktop_icon_container")] +texture_filter = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 +theme = ExtResource("1_ipi37") +color = Color(0, 0.501961, 0.498039, 1) +script = ExtResource("1_7gagq") +window_holder = NodePath("Windows") +taskbar = NodePath("PanelContainer/HBoxContainer/HBoxContainer") +desktop_icon_container = NodePath("VBoxContainer") +pof_icon = ExtResource("3_acswl") +pof_scene = ExtResource("4_o0r25") + +[node name="VBoxContainer" type="VBoxContainer" parent="."] +layout_mode = 2 +offset_left = 40.0 +offset_top = 45.0 +offset_right = 136.0 +offset_bottom = 239.0 +mouse_filter = 2 + +[node name="Windows" type="Control" parent="."] +layout_mode = 1 +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 + +[node name="PanelContainer" type="PanelContainer" parent="."] +layout_mode = 1 +anchors_preset = -1 +anchor_top = 1.0 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_top = -40.0 +grow_horizontal = 2 +grow_vertical = 0 + +[node name="HBoxContainer" type="HBoxContainer" parent="PanelContainer"] +layout_mode = 2 + +[node name="MarginContainer" type="MarginContainer" parent="PanelContainer/HBoxContainer"] +layout_mode = 2 +theme_override_constants/margin_left = 8 +theme_override_constants/margin_top = 0 +theme_override_constants/margin_right = 8 +theme_override_constants/margin_bottom = 0 + +[node name="TextureButton" type="TextureButton" parent="PanelContainer/HBoxContainer/MarginContainer"] +custom_minimum_size = Vector2(96, 0) +layout_mode = 2 +texture_normal = ExtResource("5_0n3qh") +texture_pressed = ExtResource("6_7cebq") +texture_hover = ExtResource("7_uy8qo") +ignore_texture_size = true +stretch_mode = 5 + +[node name="HBoxContainer" type="HBoxContainer" parent="PanelContainer/HBoxContainer"] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="MarginContainer2" type="MarginContainer" parent="PanelContainer/HBoxContainer"] +layout_mode = 2 +theme_override_constants/margin_left = 0 +theme_override_constants/margin_top = 0 +theme_override_constants/margin_right = 16 +theme_override_constants/margin_bottom = 0 + +[node name="Clock" type="Label" parent="PanelContainer/HBoxContainer/MarginContainer2"] +layout_mode = 2 +text = "10:47pm" +horizontal_alignment = 2 +vertical_alignment = 1 +script = ExtResource("1_vlwj3") diff --git a/Quinnsoft94/minimize.png b/Quinnsoft94/minimize.png new file mode 100644 index 0000000..c3439ac Binary files /dev/null and b/Quinnsoft94/minimize.png differ diff --git a/Quinnsoft94/minimize.png.import b/Quinnsoft94/minimize.png.import new file mode 100644 index 0000000..2620e4f --- /dev/null +++ b/Quinnsoft94/minimize.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cpefkjqivf224" +path="res://.godot/imported/minimize.png-fb198f1a1795174389206d2e94adb556.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Quinnsoft94/minimize.png" +dest_files=["res://.godot/imported/minimize.png-fb198f1a1795174389206d2e94adb556.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/Quinnsoft94/minimized_pressed.png b/Quinnsoft94/minimized_pressed.png new file mode 100644 index 0000000..213f3fd Binary files /dev/null and b/Quinnsoft94/minimized_pressed.png differ diff --git a/Quinnsoft94/minimized_pressed.png.import b/Quinnsoft94/minimized_pressed.png.import new file mode 100644 index 0000000..bfde8f1 --- /dev/null +++ b/Quinnsoft94/minimized_pressed.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ly4hkn1lcwmu" +path="res://.godot/imported/minimized_pressed.png-3a9a8d2206328cdfdd9d68aabece80fc.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Quinnsoft94/minimized_pressed.png" +dest_files=["res://.godot/imported/minimized_pressed.png-3a9a8d2206328cdfdd9d68aabece80fc.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/Quinnsoft94/ninepatchborder.png b/Quinnsoft94/ninepatchborder.png new file mode 100644 index 0000000..316d811 Binary files /dev/null and b/Quinnsoft94/ninepatchborder.png differ diff --git a/Quinnsoft94/ninepatchborder.png.import b/Quinnsoft94/ninepatchborder.png.import new file mode 100644 index 0000000..9e2a142 --- /dev/null +++ b/Quinnsoft94/ninepatchborder.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cl8axsoyifirp" +path="res://.godot/imported/ninepatchborder.png-4c7e3fd9f7c16b4aa704f65b877f2613.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Quinnsoft94/ninepatchborder.png" +dest_files=["res://.godot/imported/ninepatchborder.png-4c7e3fd9f7c16b4aa704f65b877f2613.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/Quinnsoft94/program_window.gd b/Quinnsoft94/program_window.gd new file mode 100644 index 0000000..60c87a6 --- /dev/null +++ b/Quinnsoft94/program_window.gd @@ -0,0 +1,70 @@ +class_name DEWindow extends PanelContainer + +signal closed() +signal minimized() + +@export var title_label: Label +@export var game_holder: PanelContainer +@export var context_buttons: HBoxContainer +@export var sub_menu_parent: Control +var sub_menu_scene = preload("res://Quinnsoft94/window_sub_menu.tscn") +var application: Application +var dragging = false +var drag_offset +var sub_menus = {} + + +func set_program(program) -> void: + application = program + application.reparent(game_holder) + application.window = self + title_label.text = application.application_name + application.setup_window_integration() + + +func create_sub_menu(menu_name: String): + var menu = sub_menu_scene.instantiate() + menu.visible = false + sub_menus[menu_name] = menu + sub_menu_parent.add_child(menu) + var button = Button.new() + button.text = menu_name + context_buttons.add_child(button) + button.pressed.connect(menu.set_visible.bind(true)) + context_buttons.get_parent().visible = true + + +func register_sub_menu_action(menu_name: String, button_text: String, function: Callable): + var button = Button.new() + button.text = button_text + button.pressed.connect(func(): + function.call() + sub_menus[menu_name].visible = false + ) + sub_menus[menu_name].buttons.add_child(button) + + +func minimize(): + minimized.emit() + visible = false + + +func close(): + closed.emit() + queue_free() + + +func _process(_delta: float) -> void: + if dragging: + global_position = get_global_mouse_position() + drag_offset + + +func _on_margin_container_gui_input(event: InputEvent) -> void: + if event is InputEventMouseButton: + if event.button_index == MOUSE_BUTTON_LEFT and event.pressed: + dragging = true + move_to_front() + drag_offset = global_position - get_global_mouse_position() + if event.button_index == MOUSE_BUTTON_LEFT and !event.pressed: + dragging = false + diff --git a/Quinnsoft94/program_window.tscn b/Quinnsoft94/program_window.tscn new file mode 100644 index 0000000..445f1e8 --- /dev/null +++ b/Quinnsoft94/program_window.tscn @@ -0,0 +1,127 @@ +[gd_scene load_steps=9 format=3 uid="uid://b1radkfqcc3hp"] + +[ext_resource type="Theme" uid="uid://cfsgvdm1la7nr" path="res://Quinnsoft94/quinnsoft94.tres" id="1_l6flf"] +[ext_resource type="Script" path="res://Quinnsoft94/program_window.gd" id="2_8a3lw"] +[ext_resource type="Texture2D" uid="uid://cl8axsoyifirp" path="res://Quinnsoft94/ninepatchborder.png" id="3_6xpkt"] +[ext_resource type="Texture2D" uid="uid://cpefkjqivf224" path="res://Quinnsoft94/minimize.png" id="4_4awaw"] +[ext_resource type="Texture2D" uid="uid://ly4hkn1lcwmu" path="res://Quinnsoft94/minimized_pressed.png" id="5_cl3ca"] +[ext_resource type="Texture2D" uid="uid://csbjb0e2ks7fw" path="res://Quinnsoft94/close.png" id="6_vu4h5"] +[ext_resource type="Texture2D" uid="uid://bua3dj3bodr67" path="res://Quinnsoft94/close_pressed.png" id="7_0pdks"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_06e6f"] +bg_color = Color(0.141176, 0.568627, 0.235294, 1) + +[node name="PanelContainer" type="PanelContainer" node_paths=PackedStringArray("title_label", "game_holder", "context_buttons", "sub_menu_parent")] +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -69.5 +offset_top = -36.0 +offset_right = 69.5 +offset_bottom = 36.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 +theme = ExtResource("1_l6flf") +script = ExtResource("2_8a3lw") +title_label = NodePath("MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer/WindowBar/MarginContainer/WindowName") +game_holder = NodePath("MarginContainer/Binwoahs/VBoxContainer/MarginContainer/ProgramHolder") +context_buttons = NodePath("MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer2/ContextButtons") +sub_menu_parent = NodePath("MarginContainer/Binwoahs/VBoxContainer/MarginContainer") + +[node name="NinePatchRect" type="NinePatchRect" parent="."] +texture_filter = 1 +layout_mode = 2 +texture = ExtResource("3_6xpkt") +patch_margin_left = 5 +patch_margin_top = 5 +patch_margin_right = 5 +patch_margin_bottom = 5 + +[node name="MarginContainer" type="MarginContainer" parent="."] +layout_mode = 2 +mouse_filter = 2 + +[node name="Binwoahs" type="AspectRatioContainer" parent="MarginContainer"] +layout_mode = 2 +mouse_filter = 2 + +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/Binwoahs"] +layout_mode = 2 +mouse_filter = 2 + +[node name="WindowDeco" type="VBoxContainer" parent="MarginContainer/Binwoahs/VBoxContainer"] +layout_mode = 2 +mouse_filter = 2 + +[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco"] +layout_mode = 2 +theme_type_variation = &"InnerMargin" + +[node name="PanelContainer" type="PanelContainer" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer"] +layout_mode = 2 +theme_type_variation = &"WindowBarPanel" + +[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer"] +layout_mode = 2 +theme_type_variation = &"InnerMargin" + +[node name="WindowBar" type="HBoxContainer" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer"] +layout_mode = 2 + +[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer/WindowBar"] +layout_mode = 2 +size_flags_horizontal = 3 +theme_override_constants/margin_left = 5 +theme_override_constants/margin_top = 0 +theme_override_constants/margin_right = 0 +theme_override_constants/margin_bottom = 0 + +[node name="WindowName" type="Label" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer/WindowBar/MarginContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Window Title" +vertical_alignment = 1 + +[node name="WindowButtons" type="HBoxContainer" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer/WindowBar"] +layout_mode = 2 + +[node name="Minimize" type="TextureButton" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer/WindowBar/WindowButtons"] +texture_filter = 1 +layout_mode = 2 +texture_normal = ExtResource("4_4awaw") +texture_pressed = ExtResource("5_cl3ca") + +[node name="Close" type="TextureButton" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer/WindowBar/WindowButtons"] +texture_filter = 1 +layout_mode = 2 +texture_normal = ExtResource("6_vu4h5") +texture_pressed = ExtResource("7_0pdks") + +[node name="MarginContainer2" type="MarginContainer" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco"] +visible = false +layout_mode = 2 +theme_override_constants/margin_left = 8 +theme_override_constants/margin_top = 0 +theme_override_constants/margin_right = 0 +theme_override_constants/margin_bottom = 0 + +[node name="ContextButtons" type="HBoxContainer" parent="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer2"] +layout_mode = 2 + +[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/Binwoahs/VBoxContainer"] +layout_mode = 2 +mouse_filter = 2 +theme_type_variation = &"InnerMargin" + +[node name="ProgramHolder" type="PanelContainer" parent="MarginContainer/Binwoahs/VBoxContainer/MarginContainer"] +clip_contents = true +layout_mode = 2 +mouse_filter = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_06e6f") + +[connection signal="gui_input" from="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer/WindowBar/MarginContainer" to="." method="_on_margin_container_gui_input"] +[connection signal="button_up" from="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer/WindowBar/WindowButtons/Minimize" to="." method="minimize"] +[connection signal="button_up" from="MarginContainer/Binwoahs/VBoxContainer/WindowDeco/MarginContainer/PanelContainer/MarginContainer/WindowBar/WindowButtons/Close" to="." method="close"] diff --git a/Quinnsoft94/quinnsoft94.tres b/Quinnsoft94/quinnsoft94.tres new file mode 100644 index 0000000..41a49ec --- /dev/null +++ b/Quinnsoft94/quinnsoft94.tres @@ -0,0 +1,41 @@ +[gd_resource type="Theme" load_steps=8 format=3 uid="uid://cfsgvdm1la7nr"] + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_wv3wi"] + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_xf03t"] + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_0y4fm"] + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_1gvl1"] + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_att5v"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_puiss"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_mwvng"] +bg_color = Color(0, 0.380392, 0.611765, 1) + +[resource] +Button/colors/font_color = Color(0, 0, 0, 1) +Button/styles/disabled = SubResource("StyleBoxEmpty_wv3wi") +Button/styles/focus = SubResource("StyleBoxEmpty_xf03t") +Button/styles/hover = SubResource("StyleBoxEmpty_0y4fm") +Button/styles/normal = SubResource("StyleBoxEmpty_1gvl1") +Button/styles/pressed = SubResource("StyleBoxEmpty_att5v") +HBoxContainer/constants/separation = 3 +InnerMargin/base_type = &"MarginContainer" +InnerMargin/constants/margin_bottom = 2 +InnerMargin/constants/margin_left = 2 +InnerMargin/constants/margin_right = 2 +InnerMargin/constants/margin_top = 2 +Label/colors/font_color = Color(1, 1, 1, 1) +Label/colors/font_outline_color = Color(0, 0, 0, 1) +Label/constants/outline_size = 3 +MarginContainer/constants/margin_bottom = 5 +MarginContainer/constants/margin_left = 5 +MarginContainer/constants/margin_right = 5 +MarginContainer/constants/margin_top = 5 +PanelContainer/styles/panel = SubResource("StyleBoxFlat_puiss") +VBoxContainer/constants/separation = 2 +WindowBarPanel/base_type = &"PanelContainer" +WindowBarPanel/styles/panel = SubResource("StyleBoxFlat_mwvng") diff --git a/Quinnsoft94/window_sub_menu.gd b/Quinnsoft94/window_sub_menu.gd new file mode 100644 index 0000000..47bf7af --- /dev/null +++ b/Quinnsoft94/window_sub_menu.gd @@ -0,0 +1,3 @@ +class_name WindowSubMenu extends PanelContainer + +@onready var buttons: VBoxContainer = $MarginContainer/VBoxContainer diff --git a/Quinnsoft94/window_sub_menu.tscn b/Quinnsoft94/window_sub_menu.tscn new file mode 100644 index 0000000..7326af5 --- /dev/null +++ b/Quinnsoft94/window_sub_menu.tscn @@ -0,0 +1,15 @@ +[gd_scene load_steps=2 format=3 uid="uid://qfh7gv5v5bjm"] + +[ext_resource type="Script" path="res://Quinnsoft94/window_sub_menu.gd" id="1_x6ooa"] + +[node name="PanelContainer" type="PanelContainer"] +custom_minimum_size = Vector2(150, 100) +size_flags_horizontal = 0 +size_flags_vertical = 0 +script = ExtResource("1_x6ooa") + +[node name="MarginContainer" type="MarginContainer" parent="."] +layout_mode = 2 + +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"] +layout_mode = 2 diff --git a/Resources/fish_profile.gd b/Resources/fish_profile.gd new file mode 100644 index 0000000..bdf6066 --- /dev/null +++ b/Resources/fish_profile.gd @@ -0,0 +1,4 @@ +class_name FishProfile extends Resource + +@export var fish_name: String = "name" +@export var picture: Texture diff --git a/Resources/save_file.gd b/Resources/save_file.gd new file mode 100644 index 0000000..eab6e8b --- /dev/null +++ b/Resources/save_file.gd @@ -0,0 +1,14 @@ +class_name SaveFile extends Resource + +const SAVE_PATH: String = "user://save.tres" + +@export var catfish_name: String +@export var accepted_fish: Array[FishProfile] + + +func save_to_disk() -> void: + ResourceSaver.save(self, SAVE_PATH) +static func load_profile_from_disk() -> SaveFile: + if ResourceLoader.exists(SAVE_PATH): + return ResourceLoader.load(SAVE_PATH) + return SaveFile.new() diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..74a1970 --- /dev/null +++ b/project.godot @@ -0,0 +1,40 @@ +; 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="Fishjam" +run/main_scene="res://Menus/MainMenu/main_menu.tscn" +config/features=PackedStringArray("4.2", "GL Compatibility") + +[debug] + +gdscript/warnings/inferred_declaration=2 + +[display] + +window/size/viewport_width=1920 +window/size/viewport_height=1080 +window/stretch/mode="viewport" + +[file_customization] + +folder_colors={ +"res://Assets/": "purple", +"res://Fish/": "blue", +"res://Menus/": "red", +"res://Quinnsoft94/": "green", +"res://Resources/": "pink" +} + +[rendering] + +renderer/rendering_method="gl_compatibility" +renderer/rendering_method.mobile="gl_compatibility"