diff --git a/.godot/editor/boss.tscn-editstate-7649a76be24b0454ff92379a9b1bf3ce.cfg b/.godot/editor/boss.tscn-editstate-7649a76be24b0454ff92379a9b1bf3ce.cfg index b5cbc17..35187ed 100644 --- a/.godot/editor/boss.tscn-editstate-7649a76be24b0454ff92379a9b1bf3ce.cfg +++ b/.godot/editor/boss.tscn-editstate-7649a76be24b0454ff92379a9b1bf3ce.cfg @@ -189,4 +189,4 @@ Game={ "hide_selection": false, "select_mode": 0 } -selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Gun/CollisionShape2D")]) +selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Game")]) diff --git a/.godot/editor/editor_layout.cfg b/.godot/editor/editor_layout.cfg index b490cf5..12a2cab 100644 --- a/.godot/editor/editor_layout.cfg +++ b/.godot/editor/editor_layout.cfg @@ -26,9 +26,9 @@ dock_5="Inspector,Node,History" [EditorNode] open_scenes=PackedStringArray("res://scenes/game.tscn", "res://scenes/player.tscn", "res://scenes/gun.tscn", "res://scenes/boss.tscn", "res://scenes/tree.tscn") -current_scene="res://scenes/gun.tscn" +current_scene="res://scenes/game.tscn" center_split_offset=-317 -selected_default_debugger_tab_idx=1 +selected_default_debugger_tab_idx=0 selected_main_editor_idx=2 selected_bottom_panel_item=1 @@ -40,7 +40,7 @@ position=Vector2i(2560, 28) [ScriptEditor] -open_scripts=["res://scripts/audio_controller.gd", "res://scripts/bullet.gd", "res://scripts/game.gd", "res://scripts/gun.gd", "res://scripts/player.gd", "res://scripts/ui.gd"] +open_scripts=["res://scripts/audio_controller.gd", "res://scripts/bullet.gd", "res://scripts/game.gd", "res://scripts/gun.gd", "res://scripts/mob.gd", "res://scripts/player.gd", "res://scripts/ui.gd"] selected_script="res://scripts/game.gd" open_help=[] script_split_offset=200 diff --git a/.godot/editor/filesystem_cache8 b/.godot/editor/filesystem_cache8 index dcb5941..766f569 100644 --- a/.godot/editor/filesystem_cache8 +++ b/.godot/editor/filesystem_cache8 @@ -1,5 +1,5 @@ ea4bc82a6ad023ab7ee23ee620429895 -::res://::1735917118.0 +::res://::1736071641.0 default_bus_layout.tres::AudioBusLayout::6564268947468103023::1695668179::0::1::::<><><><>:: export_presets.cfg::TextFile::-1::1735660301::0::1::::<><><><>:: ::res://addons/::1695668179.0 @@ -43,21 +43,22 @@ impact.tscn::PackedScene::706737085132625066::1695668179::0::1::::<><><><>::res: muzzle_flash.gd::GDScript::334725949817774431::1695668179::0::1::::<>Node2D<><><>:: muzzle_flash.png::CompressedTexture2D::3592944556550980239::1695668179::1735656379::1::::<><><>28453999893b9aac4db20fa2c44b723d<>res://.godot/imported/muzzle_flash.png-752b19c1a1a60c24eac6f205d487f2ea.ctex:: muzzle_flash.tscn::PackedScene::6601472980654318439::1695668179::0::1::::<><><><>::res://pistol/muzzle_flash/muzzle_flash.gd<>uid://brgpjilf7s2ul::::res://pistol/muzzle_flash/muzzle_flash.png -::res://scenes/::1735917055.0 +::res://scenes/::1735918743.0 +boss.tscn::PackedScene::4261532313203997860::1735918715::0::1::::<><><><>::uid://cl70cv3aivpdo::::res://scripts/mob.gd<>uid://b7rhtttevhxtj::::res://characters/ground_shadow.png<>uid://dvgfmy6vtvjji::::res://characters/slime/slime_body.png<>uid://btbxea1f3vwot::::res://characters/slime/slime_body_hurt.png<>uid://c078jrp2yvc4s::::res://characters/slime/slime_face.png<>uid://biwlk8nb058xm::::res://sounds/Explosion6.ogg<>uid://cai2ijnbypqtr::::res://characters/slime/slime_hurt_eyes.png bullet.tscn::PackedScene::8191971518315905232::1735913479::0::1::::<><><><>::uid://dftkbqwsfd68r::::res://pistol/projectile.png<>uid://cl4my4vxn5bbs::::res://scripts/bullet.gd -game.tscn::PackedScene::4744708941802329828::1735917055::0::1::::<><><><>::uid://dauqd5gexcbgf::::res://scenes/player.tscn<>uid://d4esu7gq460l7::::res://scripts/game.gd<>uid://dir26d82i0yer::::res://images/grass_template2.jpg<>uid://dj0m4h5r2c2xg::::res://sounds/Laser_Shoot17.ogg<>uid://bi0ibca1qokap::::res://scripts/audio_controller.gd<>uid://bavkjk7nthbj5::::res://sounds/760562__noisyredfox__hitsound1.ogg<>uid://b27pkgw38f0p6::::res://sounds/745184__mrechobot__death2.wav<>uid://sjcesmi0xjef::::res://sounds/697867__nfsmaster821__player_death_ui_show.wav<>uid://beebg84wvxii::::res://sounds/415804__sunsai__mushroom-background-music.wav<>uid://dvwfjjf35py4i::::res://scripts/ui.gd -gun.tscn::PackedScene::3590388595030148716::1735917012::0::1::::<><><><>::uid://gcqdkullomv7::::res://scripts/gun.gd<>uid://cswb5do8rrj7q::::res://pistol/pistol.png<>uid://doyitruir4guy::::res://scenes/bullet.tscn -mob.tscn::PackedScene::6846162453976111634::1735916749::0::1::::<><><><>::uid://cl70cv3aivpdo::::res://scripts/mob.gd<>uid://b7rhtttevhxtj::::res://characters/ground_shadow.png<>uid://dvgfmy6vtvjji::::res://characters/slime/slime_body.png<>uid://btbxea1f3vwot::::res://characters/slime/slime_body_hurt.png<>uid://c078jrp2yvc4s::::res://characters/slime/slime_face.png<>uid://biwlk8nb058xm::::res://sounds/Explosion6.ogg<>uid://cai2ijnbypqtr::::res://characters/slime/slime_hurt_eyes.png -player.tscn::PackedScene::7201528020608365013::1735916749::0::1::::<><><><>::uid://pbmyh1qru7p::::res://characters/happy_boo/happy_boo.tscn<>uid://drnl7altlij7f::::res://scripts/player.gd<>uid://brfhf78xw4dwm::::res://scenes/gun.tscn -tree.tscn::PackedScene::2476256724891748910::1735916749::0::1::::<><><><>::uid://b7rhtttevhxtj::::res://characters/ground_shadow.png<>uid://caqfk2xng5v5u::::res://trees/pine_tree.png -::res://scripts/::1735917055.0 +game.tscn::PackedScene::4744708941802329828::1735918714::0::1::::<><><><>::uid://dauqd5gexcbgf::::res://scenes/player.tscn<>uid://d4esu7gq460l7::::res://scripts/game.gd<>uid://dir26d82i0yer::::res://images/grass_template2.jpg<>uid://dj0m4h5r2c2xg::::res://sounds/Laser_Shoot17.ogg<>uid://bi0ibca1qokap::::res://scripts/audio_controller.gd<>uid://bavkjk7nthbj5::::res://sounds/760562__noisyredfox__hitsound1.ogg<>uid://b27pkgw38f0p6::::res://sounds/745184__mrechobot__death2.wav<>uid://sjcesmi0xjef::::res://sounds/697867__nfsmaster821__player_death_ui_show.wav<>uid://beebg84wvxii::::res://sounds/415804__sunsai__mushroom-background-music.wav<>uid://dvwfjjf35py4i::::res://scripts/ui.gd +gun.tscn::PackedScene::3590388595030148716::1735918743::0::1::::<><><><>::uid://gcqdkullomv7::::res://scripts/gun.gd<>uid://cswb5do8rrj7q::::res://pistol/pistol.png<>uid://doyitruir4guy::::res://scenes/bullet.tscn +mob.tscn::PackedScene::6846162453976111634::1735917583::0::1::::<><><><>::uid://cl70cv3aivpdo::::res://scripts/mob.gd<>uid://b7rhtttevhxtj::::res://characters/ground_shadow.png<>uid://dvgfmy6vtvjji::::res://characters/slime/slime_body.png<>uid://btbxea1f3vwot::::res://characters/slime/slime_body_hurt.png<>uid://c078jrp2yvc4s::::res://characters/slime/slime_face.png<>uid://biwlk8nb058xm::::res://sounds/Explosion6.ogg<>uid://cai2ijnbypqtr::::res://characters/slime/slime_hurt_eyes.png +player.tscn::PackedScene::7201528020608365013::1735918714::0::1::::<><><><>::uid://pbmyh1qru7p::::res://characters/happy_boo/happy_boo.tscn<>uid://drnl7altlij7f::::res://scripts/player.gd<>uid://brfhf78xw4dwm::::res://scenes/gun.tscn +tree.tscn::PackedScene::2476256724891748910::1735918715::0::1::::<><><><>::uid://b7rhtttevhxtj::::res://characters/ground_shadow.png<>uid://caqfk2xng5v5u::::res://trees/pine_tree.png +::res://scripts/::1735918714.0 audio_controller.gd::GDScript::3000028504634855655::1735913494::0::1::::<>Node2D<><><>:: bullet.gd::GDScript::5605558621920821272::1735913494::0::1::::<>Area2D<><><>:: -game.gd::GDScript::9204126340129375042::1735916934::0::1::::<>Node2D<><><>:: -gun.gd::GDScript::426239203246935962::1735913494::0::1::::<>Area2D<><><>:: -mob.gd::GDScript::5612501378197852760::1735915507::0::1::::<>CharacterBody2D<><><>:: -player.gd::GDScript::8380034353925165817::1735917055::0::1::::<>CharacterBody2D<><><>:: -ui.gd::GDScript::8678964216923348314::1735916747::0::1::::<>CanvasLayer<><><>:: +game.gd::GDScript::9204126340129375042::1735918714::0::1::::<>Node2D<><><>:: +gun.gd::GDScript::426239203246935962::1735918564::0::1::::<>Area2D<><><>:: +mob.gd::GDScript::5612501378197852760::1735917543::0::1::::<>CharacterBody2D<><><>:: +player.gd::GDScript::8380034353925165817::1735917241::0::1::::<>CharacterBody2D<><><>:: +ui.gd::GDScript::8678964216923348314::1735918362::0::1::::<>CanvasLayer<><><>:: ::res://smoke_explosion/::1735913494.0 circle_32.png::CompressedTexture2D::6271663262871881894::1695668179::1735656379::1::::<><><>c453c076bdbc64f9e2d4065be3748769<>res://.godot/imported/circle_32.png-ff53eadac5c62484a55afe7e47d5145f.ctex:: smoke_explosion.gd::GDScript::4359819258301131328::1735913494::0::1::::<>Node2D<><><>:: diff --git a/.godot/editor/filesystem_update4 b/.godot/editor/filesystem_update4 index 066d1b0..bed2a69 100644 --- a/.godot/editor/filesystem_update4 +++ b/.godot/editor/filesystem_update4 @@ -1,11 +1,6 @@ -res://scripts/player.gd res://scenes/game.tscn -res://scripts/gun.gd -res://scenes/gun.tscn res://scripts/game.gd res://scenes/player.tscn -res://scenes/mob.tscn -res://scenes/tree.tscn -res://scripts/mob.gd +res://scenes/gun.tscn res://scenes/boss.tscn -res://scripts/ui.gd +res://scenes/tree.tscn diff --git a/.godot/editor/game.tscn-editstate-c2a7af834e91ff64325daddf58e45dc0.cfg b/.godot/editor/game.tscn-editstate-c2a7af834e91ff64325daddf58e45dc0.cfg index 7bee258..d9e96e4 100644 --- a/.godot/editor/game.tscn-editstate-c2a7af834e91ff64325daddf58e45dc0.cfg +++ b/.godot/editor/game.tscn-editstate-c2a7af834e91ff64325daddf58e45dc0.cfg @@ -189,4 +189,4 @@ Game={ "hide_selection": false, "select_mode": 0 } -selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Gun/CollisionShape2D")]) +selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Game")]) diff --git a/.godot/editor/gun.tscn-editstate-e8b70ebe6a89c3504564097573c2ce26.cfg b/.godot/editor/gun.tscn-editstate-e8b70ebe6a89c3504564097573c2ce26.cfg index 0d8c2b8..410e616 100644 --- a/.godot/editor/gun.tscn-editstate-e8b70ebe6a89c3504564097573c2ce26.cfg +++ b/.godot/editor/gun.tscn-editstate-e8b70ebe6a89c3504564097573c2ce26.cfg @@ -189,4 +189,4 @@ Game={ "hide_selection": false, "select_mode": 0 } -selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Gun/CollisionShape2D")]) +selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Game")]) diff --git a/.godot/editor/player.tscn-editstate-234fb6894ec6226e856ab7f825500d3d.cfg b/.godot/editor/player.tscn-editstate-234fb6894ec6226e856ab7f825500d3d.cfg index 1c75fc5..c535a09 100644 --- a/.godot/editor/player.tscn-editstate-234fb6894ec6226e856ab7f825500d3d.cfg +++ b/.godot/editor/player.tscn-editstate-234fb6894ec6226e856ab7f825500d3d.cfg @@ -189,4 +189,4 @@ Game={ "hide_selection": false, "select_mode": 0 } -selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Gun/CollisionShape2D")]) +selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Game")]) diff --git a/.godot/editor/project_metadata.cfg b/.godot/editor/project_metadata.cfg index a765481..7623970 100644 --- a/.godot/editor/project_metadata.cfg +++ b/.godot/editor/project_metadata.cfg @@ -20,7 +20,7 @@ search_help=Rect2(3200, 360, 1280, 720) [recent_files] scenes=["res://scenes/boss.tscn", "res://scenes/game.tscn", "res://scenes/player.tscn", "res://scenes/gun.tscn", "res://player.tscn", "res://mob.tscn", "res://gun.tscn", "res://game.tscn", "res://tree.tscn", "res://characters/happy_boo/happy_boo.tscn"] -scripts=["res://scripts/game.gd", "res://scripts/ui.gd", "Color", "CanvasItem", "res://scripts/mob.gd", "res://scripts/gun.gd", "res://scripts/bullet.gd", "res://scripts/audio_controller.gd", "res://scripts/player.gd", "ColorRect"] +scripts=["res://scripts/mob.gd", "res://scripts/gun.gd", "res://scripts/game.gd", "res://scripts/ui.gd", "Color", "CanvasItem", "res://scripts/bullet.gd", "res://scripts/audio_controller.gd", "res://scripts/player.gd", "ColorRect"] [script_setup] diff --git a/.godot/editor/script_editor_cache.cfg b/.godot/editor/script_editor_cache.cfg index f1ef850..d0666b5 100644 --- a/.godot/editor/script_editor_cache.cfg +++ b/.godot/editor/script_editor_cache.cfg @@ -73,11 +73,11 @@ state={ state={ "bookmarks": PackedInt32Array(), "breakpoints": PackedInt32Array(), -"column": 18, +"column": 0, "folded_lines": Array[int]([]), "h_scroll_position": 0, -"row": 66, -"scroll_position": 43.0, +"row": 57, +"scroll_position": 37.0, "selection": false, "syntax_highlighter": "GDScript" } @@ -104,8 +104,8 @@ state={ "column": 0, "folded_lines": Array[int]([]), "h_scroll_position": 0, -"row": 23, -"scroll_position": 1.0, +"row": 32, +"scroll_position": 0.0, "selection": false, "syntax_highlighter": "GDScript" } @@ -129,10 +129,10 @@ state={ state={ "bookmarks": PackedInt32Array(), "breakpoints": PackedInt32Array(), -"column": 0, +"column": 38, "folded_lines": Array[int]([]), "h_scroll_position": 0, -"row": 12, +"row": 7, "scroll_position": 0.0, "selection": false, "syntax_highlighter": "GDScript" diff --git a/.godot/editor/tree.tscn-editstate-a9120a52d578fc4f9832f17b0458a97d.cfg b/.godot/editor/tree.tscn-editstate-a9120a52d578fc4f9832f17b0458a97d.cfg index da22732..9083bcc 100644 --- a/.godot/editor/tree.tscn-editstate-a9120a52d578fc4f9832f17b0458a97d.cfg +++ b/.godot/editor/tree.tscn-editstate-a9120a52d578fc4f9832f17b0458a97d.cfg @@ -189,4 +189,4 @@ Game={ "hide_selection": false, "select_mode": 0 } -selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Gun/CollisionShape2D")]) +selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@18607/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@EditorMainScreen@98/MainScreen/@CanvasItemEditor@10371/@VSplitContainer@10195/@HSplitContainer@10197/@HSplitContainer@10199/@Control@10200/@SubViewportContainer@10201/@SubViewport@10202/Game")]) diff --git a/.godot/shader_cache/CanvasShaderGLES3/cf34b16c988d161a3d6d24e8fe16e1cddadc1851c14fe24c801fb43cd6e215d6/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache b/.godot/shader_cache/CanvasShaderGLES3/cf34b16c988d161a3d6d24e8fe16e1cddadc1851c14fe24c801fb43cd6e215d6/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache new file mode 100644 index 0000000..4b99f91 Binary files /dev/null and b/.godot/shader_cache/CanvasShaderGLES3/cf34b16c988d161a3d6d24e8fe16e1cddadc1851c14fe24c801fb43cd6e215d6/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache differ diff --git a/.godot/shader_cache/CopyShaderGLES3/9dd4401e8e1828242614b882dd9075cdebdb972a0eb7454777be2cf6e02a165a/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache b/.godot/shader_cache/CopyShaderGLES3/9dd4401e8e1828242614b882dd9075cdebdb972a0eb7454777be2cf6e02a165a/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache new file mode 100644 index 0000000..4ba9102 Binary files /dev/null and b/.godot/shader_cache/CopyShaderGLES3/9dd4401e8e1828242614b882dd9075cdebdb972a0eb7454777be2cf6e02a165a/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache differ diff --git a/.godot/shader_cache/CubemapFilterShaderGLES3/b5e1f5ec8de67110739e3c12e1971189ddd1040ebb2fc833c1090cb586b5847f/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache b/.godot/shader_cache/CubemapFilterShaderGLES3/b5e1f5ec8de67110739e3c12e1971189ddd1040ebb2fc833c1090cb586b5847f/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache new file mode 100644 index 0000000..137b3fd Binary files /dev/null and b/.godot/shader_cache/CubemapFilterShaderGLES3/b5e1f5ec8de67110739e3c12e1971189ddd1040ebb2fc833c1090cb586b5847f/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache differ diff --git a/.godot/shader_cache/FeedShaderGLES3/8045347eb3041bc16a8f33bb147b05110b01cc3925909b5f9d93c00a83c137ed/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache b/.godot/shader_cache/FeedShaderGLES3/8045347eb3041bc16a8f33bb147b05110b01cc3925909b5f9d93c00a83c137ed/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache new file mode 100644 index 0000000..50703af Binary files /dev/null and b/.godot/shader_cache/FeedShaderGLES3/8045347eb3041bc16a8f33bb147b05110b01cc3925909b5f9d93c00a83c137ed/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache differ diff --git a/.godot/shader_cache/PostShaderGLES3/f6db2e536657238b231d696d20e83141a92bb886cad10efd831ff8adef6b94db/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache b/.godot/shader_cache/PostShaderGLES3/f6db2e536657238b231d696d20e83141a92bb886cad10efd831ff8adef6b94db/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache new file mode 100644 index 0000000..5876b74 Binary files /dev/null and b/.godot/shader_cache/PostShaderGLES3/f6db2e536657238b231d696d20e83141a92bb886cad10efd831ff8adef6b94db/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache differ diff --git a/.godot/shader_cache/SceneShaderGLES3/daac4cb6a31a1a755765a0e2ff2edf7d927324c320f8cb81a47a099e47d82bd9/0c9689a7dae2d011729a1e2cf29c71ecb4a7e8bb.cache b/.godot/shader_cache/SceneShaderGLES3/daac4cb6a31a1a755765a0e2ff2edf7d927324c320f8cb81a47a099e47d82bd9/0c9689a7dae2d011729a1e2cf29c71ecb4a7e8bb.cache new file mode 100644 index 0000000..6408572 Binary files /dev/null and b/.godot/shader_cache/SceneShaderGLES3/daac4cb6a31a1a755765a0e2ff2edf7d927324c320f8cb81a47a099e47d82bd9/0c9689a7dae2d011729a1e2cf29c71ecb4a7e8bb.cache differ diff --git a/.godot/shader_cache/SceneShaderGLES3/daac4cb6a31a1a755765a0e2ff2edf7d927324c320f8cb81a47a099e47d82bd9/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache b/.godot/shader_cache/SceneShaderGLES3/daac4cb6a31a1a755765a0e2ff2edf7d927324c320f8cb81a47a099e47d82bd9/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache new file mode 100644 index 0000000..c50fc91 Binary files /dev/null and b/.godot/shader_cache/SceneShaderGLES3/daac4cb6a31a1a755765a0e2ff2edf7d927324c320f8cb81a47a099e47d82bd9/6bb7c9a2fd1c4a8fa77cb96555b9b4a720209981.cache differ diff --git a/.godot/shader_cache/SceneShaderGLES3/daac4cb6a31a1a755765a0e2ff2edf7d927324c320f8cb81a47a099e47d82bd9/e4803059b59d245bee29da2f87c302ecb830c09e.cache b/.godot/shader_cache/SceneShaderGLES3/daac4cb6a31a1a755765a0e2ff2edf7d927324c320f8cb81a47a099e47d82bd9/e4803059b59d245bee29da2f87c302ecb830c09e.cache new file mode 100644 index 0000000..61373d6 Binary files /dev/null and b/.godot/shader_cache/SceneShaderGLES3/daac4cb6a31a1a755765a0e2ff2edf7d927324c320f8cb81a47a099e47d82bd9/e4803059b59d245bee29da2f87c302ecb830c09e.cache differ diff --git a/.godot/shader_cache/SkyShaderGLES3/0b56af8bccfcc05824ade7a618b314a130530be5682b926bf0bbfcae9b0858df/851ad615ab5772632d2dd49f5447ff21ea10b2fe.cache b/.godot/shader_cache/SkyShaderGLES3/0b56af8bccfcc05824ade7a618b314a130530be5682b926bf0bbfcae9b0858df/851ad615ab5772632d2dd49f5447ff21ea10b2fe.cache new file mode 100644 index 0000000..6cc5b62 Binary files /dev/null and b/.godot/shader_cache/SkyShaderGLES3/0b56af8bccfcc05824ade7a618b314a130530be5682b926bf0bbfcae9b0858df/851ad615ab5772632d2dd49f5447ff21ea10b2fe.cache differ diff --git a/.godot/uid_cache.bin b/.godot/uid_cache.bin index 760bcb2..f6c033e 100644 Binary files a/.godot/uid_cache.bin and b/.godot/uid_cache.bin differ diff --git a/.vscode/settings.json b/.vscode/settings.json index 348f1b4..a70c06d 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,3 +1,3 @@ { - "godotTools.editorPath.godot4": "c:\\Program Files\\Godot\\Godot_v4.4-dev7_win64.exe" + "godotTools.editorPath.godot4": "/home/sascha/Godot/Godot_v4.4-dev7_linux.x86_64" } \ No newline at end of file diff --git a/scripts/game.gd b/scripts/game.gd index 1e6b623..60ec9bd 100644 --- a/scripts/game.gd +++ b/scripts/game.gd @@ -3,7 +3,7 @@ extends Node2D signal game_over signal level_up() signal boss -signal update_ui(xp: int, xp_next_level: int, level: int, boss_level: int) +signal update_ui(game_data: Dictionary) const MOB = preload("res://scenes/mob.tscn") const TREE = preload("res://scenes/tree.tscn") @@ -18,17 +18,19 @@ const BOSS = preload("res://scenes/boss.tscn") @export var map_size := Vector2(8000, 8000) @export var tree_density := 100000 -var xp: int -var xp_next_level: int = 3 -var level: int = 1 -var boss_level: int = 3 -var kill_count: int +var game_data := { + "xp": 0, + "xp_next_level": 3, + "level": 1, + "boss_level": 3, + "kill_count": 0 +} func _ready() -> void: background_color.size = map_size background_color.position = Vector2(-map_size.x / 2, -map_size.y / 2) randomly_spawn_trees(int(map_size.x * map_size.y / tree_density)) - update_ui.emit(xp, xp_next_level, level, boss_level, kill_count) + update_ui.emit(game_data) func spawn_mob() -> void: var new_mob = MOB.instantiate() @@ -52,20 +54,20 @@ func randomly_spawn_trees(tree_count: int) -> void: add_child(new_tree) func _on_mob_died(mob_xp: int) -> void: - kill_count += 1 - xp += mob_xp - print("XP: " + str(xp) + "/" + str(xp_next_level)) - if xp >= xp_next_level: - xp = xp - xp_next_level - xp_next_level *= 1.5 - level +=1 + game_data.kill_count += 1 + game_data.xp += mob_xp + print("XP: " + str(game_data.xp) + "/" + str(game_data.xp_next_level)) + if game_data.xp >= game_data.xp_next_level: + game_data.xp = game_data.xp - game_data.xp_next_level + game_data.xp_next_level *= 1.5 + game_data.level +=1 level_up.emit() - print("Level up to " + str(level)) - if level >= boss_level: + print("Level up to " + str(game_data.level)) + if game_data.level >= game_data.boss_level: boss.emit() - level = level - boss_level - boss_level *= 2 - update_ui.emit(xp, xp_next_level, level, boss_level, kill_count) + game_data.level = game_data.level - game_data.boss_level + game_data.boss_level *= 2 + update_ui.emit(game_data) func spawn_boss() -> void: print("Spawn Boss") @@ -76,5 +78,5 @@ func spawn_boss() -> void: add_child(new_boss) func _on_level_up() -> void: - spawn_mob_timer.wait_time = 1 - (level * 0.1) - level_up.emit(level) + spawn_mob_timer.wait_time = 1 - (game_data.level * 0.1) + level_up.emit(game_data.level) diff --git a/scripts/ui.gd b/scripts/ui.gd index 2fa1c81..4008535 100644 --- a/scripts/ui.gd +++ b/scripts/ui.gd @@ -4,9 +4,9 @@ extends CanvasLayer @onready var level_bar: ProgressBar = %LevelBar @onready var kills: Label = %Kills -func _on_update_ui(xp: int, xp_next_level: int, level: int, boss_level: int, kill_count: int) -> void: - xp_bar.max_value = xp_next_level - xp_bar.value = xp - level_bar.max_value = boss_level - level_bar.value = level - kills.text = "Mobs killed: " + str(kill_count) +func _on_update_ui(game_data: Dictionary) -> void: + xp_bar.max_value = game_data.xp_next_level + xp_bar.value = game_data.xp + level_bar.max_value = game_data.boss_level + level_bar.value = game_data.level + kills.text = "Mobs killed: " + str(game_data.kill_count)