diff --git a/assets/Clouds/Clouds1/1.png b/assets/Clouds/Clouds1/1.png new file mode 100644 index 0000000..9ede45f Binary files /dev/null and b/assets/Clouds/Clouds1/1.png differ diff --git a/assets/Clouds/Clouds1/2.png b/assets/Clouds/Clouds1/2.png new file mode 100644 index 0000000..b58be96 Binary files /dev/null and b/assets/Clouds/Clouds1/2.png differ diff --git a/assets/Clouds/Clouds1/3.png b/assets/Clouds/Clouds1/3.png new file mode 100644 index 0000000..a5818cc Binary files /dev/null and b/assets/Clouds/Clouds1/3.png differ diff --git a/assets/Clouds/Clouds1/4.png b/assets/Clouds/Clouds1/4.png new file mode 100644 index 0000000..c2741c7 Binary files /dev/null and b/assets/Clouds/Clouds1/4.png differ diff --git a/assets/Clouds/Clouds2/1.png b/assets/Clouds/Clouds2/1.png new file mode 100644 index 0000000..bf39b1e Binary files /dev/null and b/assets/Clouds/Clouds2/1.png differ diff --git a/assets/Clouds/Clouds2/2.png b/assets/Clouds/Clouds2/2.png new file mode 100644 index 0000000..e37d51f Binary files /dev/null and b/assets/Clouds/Clouds2/2.png differ diff --git a/assets/Clouds/Clouds2/3.png b/assets/Clouds/Clouds2/3.png new file mode 100644 index 0000000..ad3bcba Binary files /dev/null and b/assets/Clouds/Clouds2/3.png differ diff --git a/assets/Clouds/Clouds2/4.png b/assets/Clouds/Clouds2/4.png new file mode 100644 index 0000000..b9d70f1 Binary files /dev/null and b/assets/Clouds/Clouds2/4.png differ diff --git a/assets/Clouds/Clouds3/1.png b/assets/Clouds/Clouds3/1.png new file mode 100644 index 0000000..273a5a2 Binary files /dev/null and b/assets/Clouds/Clouds3/1.png differ diff --git a/assets/Clouds/Clouds3/2.png b/assets/Clouds/Clouds3/2.png new file mode 100644 index 0000000..a523b4d Binary files /dev/null and b/assets/Clouds/Clouds3/2.png differ diff --git a/assets/Clouds/Clouds3/3.png b/assets/Clouds/Clouds3/3.png new file mode 100644 index 0000000..7a9c555 Binary files /dev/null and b/assets/Clouds/Clouds3/3.png differ diff --git a/assets/Clouds/Clouds3/4.png b/assets/Clouds/Clouds3/4.png new file mode 100644 index 0000000..ca59ca6 Binary files /dev/null and b/assets/Clouds/Clouds3/4.png differ diff --git a/assets/Clouds/Clouds4/1.png b/assets/Clouds/Clouds4/1.png new file mode 100644 index 0000000..5958dc0 Binary files /dev/null and b/assets/Clouds/Clouds4/1.png differ diff --git a/assets/Clouds/Clouds4/2.png b/assets/Clouds/Clouds4/2.png new file mode 100644 index 0000000..bc17a9a Binary files /dev/null and b/assets/Clouds/Clouds4/2.png differ diff --git a/assets/Clouds/Clouds4/3.png b/assets/Clouds/Clouds4/3.png new file mode 100644 index 0000000..7b0b945 Binary files /dev/null and b/assets/Clouds/Clouds4/3.png differ diff --git a/assets/Clouds/Clouds4/4.png b/assets/Clouds/Clouds4/4.png new file mode 100644 index 0000000..f247fe2 Binary files /dev/null and b/assets/Clouds/Clouds4/4.png differ diff --git a/assets/Clouds/Clouds5/1.png b/assets/Clouds/Clouds5/1.png new file mode 100644 index 0000000..8dd4390 Binary files /dev/null and b/assets/Clouds/Clouds5/1.png differ diff --git a/assets/Clouds/Clouds5/2.png b/assets/Clouds/Clouds5/2.png new file mode 100644 index 0000000..b395da8 Binary files /dev/null and b/assets/Clouds/Clouds5/2.png differ diff --git a/assets/Clouds/Clouds5/3.png b/assets/Clouds/Clouds5/3.png new file mode 100644 index 0000000..fd8af88 Binary files /dev/null and b/assets/Clouds/Clouds5/3.png differ diff --git a/assets/Clouds/Clouds5/4.png b/assets/Clouds/Clouds5/4.png new file mode 100644 index 0000000..5b3b5ef Binary files /dev/null and b/assets/Clouds/Clouds5/4.png differ diff --git a/assets/Clouds/Clouds5/5.png b/assets/Clouds/Clouds5/5.png new file mode 100644 index 0000000..6519e85 Binary files /dev/null and b/assets/Clouds/Clouds5/5.png differ diff --git a/assets/Clouds/Clouds6/1.png b/assets/Clouds/Clouds6/1.png new file mode 100644 index 0000000..6061e45 Binary files /dev/null and b/assets/Clouds/Clouds6/1.png differ diff --git a/assets/Clouds/Clouds6/2.png b/assets/Clouds/Clouds6/2.png new file mode 100644 index 0000000..9ccc01b Binary files /dev/null and b/assets/Clouds/Clouds6/2.png differ diff --git a/assets/Clouds/Clouds6/3.png b/assets/Clouds/Clouds6/3.png new file mode 100644 index 0000000..58c2942 Binary files /dev/null and b/assets/Clouds/Clouds6/3.png differ diff --git a/assets/Clouds/Clouds6/4.png b/assets/Clouds/Clouds6/4.png new file mode 100644 index 0000000..8d30b26 Binary files /dev/null and b/assets/Clouds/Clouds6/4.png differ diff --git a/assets/Clouds/Clouds6/5.png b/assets/Clouds/Clouds6/5.png new file mode 100644 index 0000000..f7f13d0 Binary files /dev/null and b/assets/Clouds/Clouds6/5.png differ diff --git a/assets/Clouds/Clouds6/6.png b/assets/Clouds/Clouds6/6.png new file mode 100644 index 0000000..436bda0 Binary files /dev/null and b/assets/Clouds/Clouds6/6.png differ diff --git a/assets/Clouds/Clouds7/1.png b/assets/Clouds/Clouds7/1.png new file mode 100644 index 0000000..be878dc Binary files /dev/null and b/assets/Clouds/Clouds7/1.png differ diff --git a/assets/Clouds/Clouds7/2.png b/assets/Clouds/Clouds7/2.png new file mode 100644 index 0000000..b86ad59 Binary files /dev/null and b/assets/Clouds/Clouds7/2.png differ diff --git a/assets/Clouds/Clouds7/3.png b/assets/Clouds/Clouds7/3.png new file mode 100644 index 0000000..1f3df64 Binary files /dev/null and b/assets/Clouds/Clouds7/3.png differ diff --git a/assets/Clouds/Clouds7/4.png b/assets/Clouds/Clouds7/4.png new file mode 100644 index 0000000..59d9254 Binary files /dev/null and b/assets/Clouds/Clouds7/4.png differ diff --git a/assets/Clouds/Clouds8/1.png b/assets/Clouds/Clouds8/1.png new file mode 100644 index 0000000..fb04977 Binary files /dev/null and b/assets/Clouds/Clouds8/1.png differ diff --git a/assets/Clouds/Clouds8/2.png b/assets/Clouds/Clouds8/2.png new file mode 100644 index 0000000..0708297 Binary files /dev/null and b/assets/Clouds/Clouds8/2.png differ diff --git a/assets/Clouds/Clouds8/3.png b/assets/Clouds/Clouds8/3.png new file mode 100644 index 0000000..693ca85 Binary files /dev/null and b/assets/Clouds/Clouds8/3.png differ diff --git a/assets/Clouds/Clouds8/4.png b/assets/Clouds/Clouds8/4.png new file mode 100644 index 0000000..3e474a1 Binary files /dev/null and b/assets/Clouds/Clouds8/4.png differ diff --git a/assets/Clouds/Clouds8/5.png b/assets/Clouds/Clouds8/5.png new file mode 100644 index 0000000..a93171f Binary files /dev/null and b/assets/Clouds/Clouds8/5.png differ diff --git a/assets/Clouds/Clouds8/6.png b/assets/Clouds/Clouds8/6.png new file mode 100644 index 0000000..e39d0ba Binary files /dev/null and b/assets/Clouds/Clouds8/6.png differ diff --git a/assets/SproutLandsBasic/Characters/BasicCharakterActions.png b/assets/SproutLandsBasic/Characters/BasicCharakterActions.png new file mode 100644 index 0000000..4c2c182 Binary files /dev/null and b/assets/SproutLandsBasic/Characters/BasicCharakterActions.png differ diff --git a/assets/SproutLandsBasic/Characters/BasicCharakterSpritesheet.png b/assets/SproutLandsBasic/Characters/BasicCharakterSpritesheet.png new file mode 100644 index 0000000..4776cb4 Binary files /dev/null and b/assets/SproutLandsBasic/Characters/BasicCharakterSpritesheet.png differ diff --git a/assets/SproutLandsBasic/Characters/Egg_And_Nest.png b/assets/SproutLandsBasic/Characters/Egg_And_Nest.png new file mode 100644 index 0000000..cd99655 Binary files /dev/null and b/assets/SproutLandsBasic/Characters/Egg_And_Nest.png differ diff --git a/assets/SproutLandsBasic/Characters/Free Chicken Sprites.png b/assets/SproutLandsBasic/Characters/Free Chicken Sprites.png new file mode 100644 index 0000000..21b3c28 Binary files /dev/null and b/assets/SproutLandsBasic/Characters/Free Chicken Sprites.png differ diff --git a/assets/SproutLandsBasic/Characters/Free Cow Sprites.png b/assets/SproutLandsBasic/Characters/Free Cow Sprites.png new file mode 100644 index 0000000..de23d8a Binary files /dev/null and b/assets/SproutLandsBasic/Characters/Free Cow Sprites.png differ diff --git a/assets/SproutLandsBasic/Characters/Tools.png b/assets/SproutLandsBasic/Characters/Tools.png new file mode 100644 index 0000000..a52def2 Binary files /dev/null and b/assets/SproutLandsBasic/Characters/Tools.png differ diff --git a/assets/SproutLandsBasic/Characters/character.aseprite b/assets/SproutLandsBasic/Characters/character.aseprite new file mode 100644 index 0000000..2ffff29 Binary files /dev/null and b/assets/SproutLandsBasic/Characters/character.aseprite differ diff --git a/assets/SproutLandsBasic/Characters/character.png b/assets/SproutLandsBasic/Characters/character.png new file mode 100644 index 0000000..7b710c1 Binary files /dev/null and b/assets/SproutLandsBasic/Characters/character.png differ diff --git a/assets/SproutLandsBasic/Characters/characterActions.aseprite b/assets/SproutLandsBasic/Characters/characterActions.aseprite new file mode 100644 index 0000000..9b801ef Binary files /dev/null and b/assets/SproutLandsBasic/Characters/characterActions.aseprite differ diff --git a/assets/SproutLandsBasic/Characters/characterActions.png b/assets/SproutLandsBasic/Characters/characterActions.png new file mode 100644 index 0000000..fcd7789 Binary files /dev/null and b/assets/SproutLandsBasic/Characters/characterActions.png differ diff --git a/assets/SproutLandsBasic/Characters/characterIdleWalking.aseprite b/assets/SproutLandsBasic/Characters/characterIdleWalking.aseprite new file mode 100644 index 0000000..58b0d0b Binary files /dev/null and b/assets/SproutLandsBasic/Characters/characterIdleWalking.aseprite differ diff --git a/assets/SproutLandsBasic/Characters/characterIdleWalking.png b/assets/SproutLandsBasic/Characters/characterIdleWalking.png new file mode 100644 index 0000000..60eabe0 Binary files /dev/null and b/assets/SproutLandsBasic/Characters/characterIdleWalking.png differ diff --git a/assets/SproutLandsBasic/Objects/Basic_Furniture.png b/assets/SproutLandsBasic/Objects/Basic_Furniture.png new file mode 100644 index 0000000..389a30b Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Basic_Furniture.png differ diff --git a/assets/SproutLandsBasic/Objects/Basic_Grass_Biom_things.png b/assets/SproutLandsBasic/Objects/Basic_Grass_Biom_things.png new file mode 100644 index 0000000..86375eb Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Basic_Grass_Biom_things.png differ diff --git a/assets/SproutLandsBasic/Objects/Basic_Plants.png b/assets/SproutLandsBasic/Objects/Basic_Plants.png new file mode 100644 index 0000000..ae0bb83 Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Basic_Plants.png differ diff --git a/assets/SproutLandsBasic/Objects/Basic_tools_and_meterials.png b/assets/SproutLandsBasic/Objects/Basic_tools_and_meterials.png new file mode 100644 index 0000000..d5acf85 Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Basic_tools_and_meterials.png differ diff --git a/assets/SproutLandsBasic/Objects/Chest.png b/assets/SproutLandsBasic/Objects/Chest.png new file mode 100644 index 0000000..fe107bf Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Chest.png differ diff --git a/assets/SproutLandsBasic/Objects/Egg_item.png b/assets/SproutLandsBasic/Objects/Egg_item.png new file mode 100644 index 0000000..71aa0b8 Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Egg_item.png differ diff --git a/assets/SproutLandsBasic/Objects/Free_Chicken_House.png b/assets/SproutLandsBasic/Objects/Free_Chicken_House.png new file mode 100644 index 0000000..bc558a0 Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Free_Chicken_House.png differ diff --git a/assets/SproutLandsBasic/Objects/Paths.png b/assets/SproutLandsBasic/Objects/Paths.png new file mode 100644 index 0000000..67533ec Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Paths.png differ diff --git a/assets/SproutLandsBasic/Objects/Simple_Milk_and_grass_item.png b/assets/SproutLandsBasic/Objects/Simple_Milk_and_grass_item.png new file mode 100644 index 0000000..d58ffa1 Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Simple_Milk_and_grass_item.png differ diff --git a/assets/SproutLandsBasic/Objects/Wood_Bridge.png b/assets/SproutLandsBasic/Objects/Wood_Bridge.png new file mode 100644 index 0000000..453e80d Binary files /dev/null and b/assets/SproutLandsBasic/Objects/Wood_Bridge.png differ diff --git a/assets/SproutLandsBasic/Objects/tools.aseprite b/assets/SproutLandsBasic/Objects/tools.aseprite new file mode 100644 index 0000000..d031a6f Binary files /dev/null and b/assets/SproutLandsBasic/Objects/tools.aseprite differ diff --git a/assets/SproutLandsBasic/Objects/tools.png b/assets/SproutLandsBasic/Objects/tools.png new file mode 100644 index 0000000..5609147 Binary files /dev/null and b/assets/SproutLandsBasic/Objects/tools.png differ diff --git a/assets/SproutLandsBasic/Sprout Lands color pallet/Sprout Lands defautlt palette snip.PNG b/assets/SproutLandsBasic/Sprout Lands color pallet/Sprout Lands defautlt palette snip.PNG new file mode 100644 index 0000000..0f293da Binary files /dev/null and b/assets/SproutLandsBasic/Sprout Lands color pallet/Sprout Lands defautlt palette snip.PNG differ diff --git a/assets/SproutLandsBasic/Sprout Lands color pallet/Sprout Lands defautlt palette.aseprite b/assets/SproutLandsBasic/Sprout Lands color pallet/Sprout Lands defautlt palette.aseprite new file mode 100644 index 0000000..da40574 Binary files /dev/null and b/assets/SproutLandsBasic/Sprout Lands color pallet/Sprout Lands defautlt palette.aseprite differ diff --git a/assets/SproutLandsBasic/Sprout Lands color pallet/Sprout Lands defautlt palette.png b/assets/SproutLandsBasic/Sprout Lands color pallet/Sprout Lands defautlt palette.png new file mode 100644 index 0000000..8434287 Binary files /dev/null and b/assets/SproutLandsBasic/Sprout Lands color pallet/Sprout Lands defautlt palette.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Bitmask references 1.png b/assets/SproutLandsBasic/Tilesets/Bitmask references 1.png new file mode 100644 index 0000000..79cb51b Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Bitmask references 1.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Bitmask references 2.png b/assets/SproutLandsBasic/Tilesets/Bitmask references 2.png new file mode 100644 index 0000000..5adeb64 Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Bitmask references 2.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Bitmask references gif.gif b/assets/SproutLandsBasic/Tilesets/Bitmask references gif.gif new file mode 100644 index 0000000..13bcfaf Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Bitmask references gif.gif differ diff --git a/assets/SproutLandsBasic/Tilesets/Doors.png b/assets/SproutLandsBasic/Tilesets/Doors.png new file mode 100644 index 0000000..8342d98 Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Doors.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Fences.png b/assets/SproutLandsBasic/Tilesets/Fences.png new file mode 100644 index 0000000..0b2825b Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Fences.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Grass.png b/assets/SproutLandsBasic/Tilesets/Grass.png new file mode 100644 index 0000000..baea0eb Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Grass.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Hills.png b/assets/SproutLandsBasic/Tilesets/Hills.png new file mode 100644 index 0000000..3818f93 Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Hills.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Tilled_Dirt.png b/assets/SproutLandsBasic/Tilesets/Tilled_Dirt.png new file mode 100644 index 0000000..0b42083 Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Tilled_Dirt.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Tilled_Dirt_Wide.png b/assets/SproutLandsBasic/Tilesets/Tilled_Dirt_Wide.png new file mode 100644 index 0000000..f125497 Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Tilled_Dirt_Wide.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Tilled_Dirt_Wide_v2.png b/assets/SproutLandsBasic/Tilesets/Tilled_Dirt_Wide_v2.png new file mode 100644 index 0000000..138c7da Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Tilled_Dirt_Wide_v2.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Tilled_Dirt_v2.png b/assets/SproutLandsBasic/Tilesets/Tilled_Dirt_v2.png new file mode 100644 index 0000000..f58a14a Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Tilled_Dirt_v2.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Water.png b/assets/SproutLandsBasic/Tilesets/Water.png new file mode 100644 index 0000000..7969ff3 Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Water.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Wooden_House_Roof_Tilset.png b/assets/SproutLandsBasic/Tilesets/Wooden_House_Roof_Tilset.png new file mode 100644 index 0000000..7a8c956 Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Wooden_House_Roof_Tilset.png differ diff --git a/assets/SproutLandsBasic/Tilesets/Wooden_House_Walls_Tilset.png b/assets/SproutLandsBasic/Tilesets/Wooden_House_Walls_Tilset.png new file mode 100644 index 0000000..7af606f Binary files /dev/null and b/assets/SproutLandsBasic/Tilesets/Wooden_House_Walls_Tilset.png differ diff --git a/assets/SproutLandsBasic/read_me.txt b/assets/SproutLandsBasic/read_me.txt new file mode 100644 index 0000000..c5ec82d --- /dev/null +++ b/assets/SproutLandsBasic/read_me.txt @@ -0,0 +1,70 @@ + + Heyo! Thanks for downloading the Sprout Lands Basic pack !!! + - Made by: Cup Nooble + + This asset pack is the start of a series of different asset packs, + so let me know if there are any specific sprites you'd like to be added in future packs. + +------------------------------------------------------------------------------------------------------------- + + >>> License - Basic Pack + + ---------- + + - You can modify the assets. + + [ Feel free to get creative and make your own sprites in this style or use them as reference for your own ] + [ Making additional sprites in the same style or using them as reference for your own project is also allowed ] + + ---------- + + - You can use these assets in any kind of non-commercial projects. + + [ Except anything to do with NFTs or AI training is not allowed ] + + ---------- + + - You can not redistribute the asset pack itself or resell it on other platforms, even if it is slightly modified. + + [ Of course, you can redistribute your own projects made with these assets like games, software, or other ] + [ Making your project opensource is also allowed ] + [ For open source projects include a note that says some or all assets are made by Cup Nooble together with the licensing terms ] + + ---------- + + - Credit is required : (Cup Nooble) + + [ Credit example : Assets -From : Sprout Lands -By : Cup Nooble ] + [ If you share your game on itch.io a link to the Asset Packs page would be very appreciated ] + [ But feel free to credit in whatever way fits your project best ] + [ Thanks a lot for reading ^^ ] + + ---------- + + ~ And most importantly hope you have fun with your project !!! + + ? And if you have questions or need/want different licensing terms please reach out to me and I can work with you on a license that suits your needs. + My Discord : cup_nooble + +------------------------------------------------------------------------------------------------------------- + + >>> See updates here : + + - Discord server : + Join The Sprout Lands Discord for any hotfixes and updates or for any questions + Link - https://discord.gg/PyDwcnPY + + - Twitter : + Link - https://twitter.com/Sprout_Lands + +------------------------------------------------------------------------------------------------------------- + + >>> Support + + If you enjoy this asset pack consider leaving a rating and a comment. + It really helps to support the future of this project ^u^! + + ---------- + + Want to find more from Cup Nooble ? + check out their link tree - cupnooble.carrd.co diff --git a/assets/SproutLandsUI/Spritesheets/Dialouge UI/Emotes/Teemo Basic emote animations sprite sheet.png b/assets/SproutLandsUI/Spritesheets/Dialouge UI/Emotes/Teemo Basic emote animations sprite sheet.png new file mode 100644 index 0000000..69d14f6 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Dialouge UI/Emotes/Teemo Basic emote animations sprite sheet.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Dialouge UI/Premade dialog box big.png b/assets/SproutLandsUI/Spritesheets/Dialouge UI/Premade dialog box big.png new file mode 100644 index 0000000..3b98e34 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Dialouge UI/Premade dialog box big.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Dialouge UI/Premade dialog box medium.png b/assets/SproutLandsUI/Spritesheets/Dialouge UI/Premade dialog box medium.png new file mode 100644 index 0000000..0073c56 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Dialouge UI/Premade dialog box medium.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Dialouge UI/Premade dialog box small.png b/assets/SproutLandsUI/Spritesheets/Dialouge UI/Premade dialog box small.png new file mode 100644 index 0000000..85e56ca Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Dialouge UI/Premade dialog box small.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box big.png b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box big.png new file mode 100644 index 0000000..9e701ce Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box big.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box character finished talking click to continue indicator - spritesheet .png b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box character finished talking click to continue indicator - spritesheet .png new file mode 100644 index 0000000..ee21d97 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box character finished talking click to continue indicator - spritesheet .png differ diff --git a/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box medium.png b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box medium.png new file mode 100644 index 0000000..d2a650e Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box medium.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box small.png b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box small.png new file mode 100644 index 0000000..0698a19 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box small.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box.png b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box.png new file mode 100644 index 0000000..dc15b7f Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Dialouge UI/dialog box.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Icons/All Icons.png b/assets/SproutLandsUI/Spritesheets/Icons/All Icons.png new file mode 100644 index 0000000..8fa177a Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Icons/All Icons.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Icons/special icons/Small Happines-Sadness icons.png b/assets/SproutLandsUI/Spritesheets/Icons/special icons/Small Happines-Sadness icons.png new file mode 100644 index 0000000..fd2a8df Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Icons/special icons/Small Happines-Sadness icons.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Icons/special icons/Special Icons.png b/assets/SproutLandsUI/Spritesheets/Icons/special icons/Special Icons.png new file mode 100644 index 0000000..94df0d7 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Icons/special icons/Special Icons.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Icons/white icons.png b/assets/SproutLandsUI/Spritesheets/Icons/white icons.png new file mode 100644 index 0000000..270dc8c Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Icons/white icons.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Mouse sprites/Catpaw Mouse icon.png b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Catpaw Mouse icon.png new file mode 100644 index 0000000..9c998b3 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Catpaw Mouse icon.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Mouse sprites/Catpaw holding Mouse icon.png b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Catpaw holding Mouse icon.png new file mode 100644 index 0000000..408c708 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Catpaw holding Mouse icon.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Mouse sprites/Catpaw pointing Mouse icon.png b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Catpaw pointing Mouse icon.png new file mode 100644 index 0000000..4268805 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Catpaw pointing Mouse icon.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Mouse sprites/Triangle Mouse icon 2.png b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Triangle Mouse icon 2.png new file mode 100644 index 0000000..b182f38 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Triangle Mouse icon 2.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Mouse sprites/Triangle Mouse icon 3.png b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Triangle Mouse icon 3.png new file mode 100644 index 0000000..55c285b Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Mouse sprites/Triangle Mouse icon 3.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Mouse sprites/TriangleMouseicon1.png b/assets/SproutLandsUI/Spritesheets/Mouse sprites/TriangleMouseicon1.png new file mode 100644 index 0000000..671792c Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Mouse sprites/TriangleMouseicon1.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Settingmenu.png b/assets/SproutLandsUI/Spritesheets/Settingmenu.png new file mode 100644 index 0000000..73bf1a5 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Settingmenu.png differ diff --git a/assets/SproutLandsUI/Spritesheets/Sprite sheet for Basic Pack.png b/assets/SproutLandsUI/Spritesheets/Sprite sheet for Basic Pack.png new file mode 100644 index 0000000..db4de3e Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/Sprite sheet for Basic Pack.png differ diff --git a/assets/SproutLandsUI/Spritesheets/UI Settings Buttons.png b/assets/SproutLandsUI/Spritesheets/UI Settings Buttons.png new file mode 100644 index 0000000..fcfdcfa Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/UI Settings Buttons.png differ diff --git a/assets/SproutLandsUI/Spritesheets/UIBigPlayButton.png b/assets/SproutLandsUI/Spritesheets/UIBigPlayButton.png new file mode 100644 index 0000000..1510d26 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/UIBigPlayButton.png differ diff --git a/assets/SproutLandsUI/Spritesheets/UIBigPlayButtonHover.aseprite b/assets/SproutLandsUI/Spritesheets/UIBigPlayButtonHover.aseprite new file mode 100644 index 0000000..fef2bac Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/UIBigPlayButtonHover.aseprite differ diff --git a/assets/SproutLandsUI/Spritesheets/UIBigPlayButtonHover.png b/assets/SproutLandsUI/Spritesheets/UIBigPlayButtonHover.png new file mode 100644 index 0000000..ccb3341 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/UIBigPlayButtonHover.png differ diff --git a/assets/SproutLandsUI/Spritesheets/buttons/Small Square Buttons.png b/assets/SproutLandsUI/Spritesheets/buttons/Small Square Buttons.png new file mode 100644 index 0000000..b1240b4 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/buttons/Small Square Buttons.png differ diff --git a/assets/SproutLandsUI/Spritesheets/buttons/Square Buttons 19x26.png b/assets/SproutLandsUI/Spritesheets/buttons/Square Buttons 19x26.png new file mode 100644 index 0000000..0559704 Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/buttons/Square Buttons 19x26.png differ diff --git a/assets/SproutLandsUI/Spritesheets/buttons/Square Buttons 26x19.png b/assets/SproutLandsUI/Spritesheets/buttons/Square Buttons 26x19.png new file mode 100644 index 0000000..d51433d Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/buttons/Square Buttons 26x19.png differ diff --git a/assets/SproutLandsUI/Spritesheets/buttons/Square Buttons 26x26.png b/assets/SproutLandsUI/Spritesheets/buttons/Square Buttons 26x26.png new file mode 100644 index 0000000..667b1bf Binary files /dev/null and b/assets/SproutLandsUI/Spritesheets/buttons/Square Buttons 26x26.png differ diff --git a/assets/SproutLandsUI/emojis-free/Emoji_Spritesheet_Free.png b/assets/SproutLandsUI/emojis-free/Emoji_Spritesheet_Free.png new file mode 100644 index 0000000..22d10a5 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/Emoji_Spritesheet_Free.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Blocks_Spritesheet.png b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Blocks_Spritesheet.png new file mode 100644 index 0000000..912484f Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Blocks_Spritesheet.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Herat_Spritesheet.png b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Herat_Spritesheet.png new file mode 100644 index 0000000..ec59983 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Herat_Spritesheet.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Light_Herat_Spritesheet.png b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Light_Herat_Spritesheet.png new file mode 100644 index 0000000..676ed39 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Light_Herat_Spritesheet.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Light_example_with_slots_2.png b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Light_example_with_slots_2.png new file mode 100644 index 0000000..ad0d5cb Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Light_example_with_slots_2.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Spritesheet.png b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Spritesheet.png new file mode 100644 index 0000000..65dba87 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/Inventory_Spritesheet.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_Light_example.png b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_Light_example.png new file mode 100644 index 0000000..ae1445c Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_Light_example.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_Light_example_2.png b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_Light_example_2.png new file mode 100644 index 0000000..3707f42 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_Light_example_2.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_Light_example_with_slots.png b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_Light_example_with_slots.png new file mode 100644 index 0000000..dde728b Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_Light_example_with_slots.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example.png b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example.png new file mode 100644 index 0000000..0b7047b Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example_2.png b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example_2.png new file mode 100644 index 0000000..ac4ca38 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example_2.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example_with_slots.png b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example_with_slots.png new file mode 100644 index 0000000..6aa8963 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example_with_slots.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example_with_slots_2.png b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example_with_slots_2.png new file mode 100644 index 0000000..2920529 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/inventory_example_with_slots_2.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/weather/Weather_Icons_smal_freel.png b/assets/SproutLandsUI/emojis-free/emoji style ui/weather/Weather_Icons_smal_freel.png new file mode 100644 index 0000000..e04bc08 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/weather/Weather_Icons_smal_freel.png differ diff --git a/assets/SproutLandsUI/emojis-free/emoji style ui/weather/Weather_UI_Free.png b/assets/SproutLandsUI/emojis-free/emoji style ui/weather/Weather_UI_Free.png new file mode 100644 index 0000000..56865a2 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/emoji style ui/weather/Weather_UI_Free.png differ diff --git a/assets/SproutLandsUI/emojis-free/speech_bubble_grey.png b/assets/SproutLandsUI/emojis-free/speech_bubble_grey.png new file mode 100644 index 0000000..3329460 Binary files /dev/null and b/assets/SproutLandsUI/emojis-free/speech_bubble_grey.png differ diff --git a/assets/SproutLandsUI/fonts/pixel-letters-7-8x14-preview.png b/assets/SproutLandsUI/fonts/pixel-letters-7-8x14-preview.png new file mode 100644 index 0000000..ab5c320 Binary files /dev/null and b/assets/SproutLandsUI/fonts/pixel-letters-7-8x14-preview.png differ diff --git a/assets/SproutLandsUI/fonts/pixel-letters-7-8x14.png b/assets/SproutLandsUI/fonts/pixel-letters-7-8x14.png new file mode 100644 index 0000000..8541c4f Binary files /dev/null and b/assets/SproutLandsUI/fonts/pixel-letters-7-8x14.png differ diff --git a/assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.fnt b/assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.fnt new file mode 100644 index 0000000..ac01d29 --- /dev/null +++ b/assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.fnt @@ -0,0 +1,95 @@ +info face="pixelFont-7-8x14-sproutLands" size=72 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=1,1,1,1 spacing=1,1 +common lineHeight=72 base=56 scaleW=434 scaleH=434 pages=1 packed=0 +page id=0 file="pixelFont-7-8x14-sproutLands.png" +chars count=91 +char id=32 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=33 x=57 y=55 width=10 height=58 xoffset=11 yoffset=-1 xadvance=28 page=0 chnl=15 +char id=34 x=71 y=413 width=22 height=14 xoffset=-1 yoffset=-1 xadvance=28 page=0 chnl=15 +char id=35 x=0 y=220 width=40 height=51 xoffset=-2 yoffset=17 xadvance=36 page=0 chnl=15 +char id=36 x=0 y=280 width=34 height=62 xoffset=1 yoffset=13 xadvance=36 page=0 chnl=15 +char id=37 x=0 y=165 width=54 height=54 xoffset=3 yoffset=16 xadvance=60 page=0 chnl=15 +char id=38 x=0 y=110 width=55 height=54 xoffset=1 yoffset=16 xadvance=56 page=0 chnl=15 +char id=39 x=57 y=114 width=10 height=14 xoffset=-1 yoffset=-1 xadvance=16 page=0 chnl=15 +char id=40 x=416 y=234 width=14 height=58 xoffset=-1 yoffset=-1 xadvance=20 page=0 chnl=15 +char id=41 x=416 y=293 width=14 height=58 xoffset=-1 yoffset=-1 xadvance=20 page=0 chnl=15 +char id=42 x=0 y=402 width=26 height=26 xoffset=-1 yoffset=15 xadvance=32 page=0 chnl=15 +char id=43 x=351 y=389 width=26 height=26 xoffset=-1 yoffset=15 xadvance=32 page=0 chnl=15 +char id=44 x=106 y=424 width=14 height=10 xoffset=-1 yoffset=47 xadvance=20 page=0 chnl=15 +char id=45 x=106 y=413 width=26 height=10 xoffset=-1 yoffset=23 xadvance=32 page=0 chnl=15 +char id=46 x=57 y=129 width=10 height=10 xoffset=-1 yoffset=47 xadvance=16 page=0 chnl=15 +char id=47 x=386 y=132 width=26 height=58 xoffset=3 yoffset=-1 xadvance=36 page=0 chnl=15 +char id=48 x=0 y=343 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=49 x=71 y=0 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=50 x=71 y=59 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=51 x=71 y=118 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=52 x=71 y=177 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=53 x=71 y=236 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=54 x=71 y=295 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=55 x=71 y=354 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=56 x=106 y=0 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=57 x=106 y=59 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=58 x=416 y=183 width=18 height=50 xoffset=-1 yoffset=3 xadvance=24 page=0 chnl=15 +char id=59 x=416 y=128 width=18 height=54 xoffset=-1 yoffset=3 xadvance=24 page=0 chnl=15 +char id=61 x=386 y=191 width=26 height=22 xoffset=-1 yoffset=19 xadvance=32 page=0 chnl=15 +char id=63 x=351 y=177 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=64 x=0 y=55 width=56 height=54 xoffset=5 yoffset=16 xadvance=67 page=0 chnl=15 +char id=65 x=211 y=354 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=66 x=246 y=0 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=67 x=246 y=59 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=68 x=246 y=118 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=69 x=246 y=177 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=70 x=246 y=236 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=71 x=246 y=295 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=72 x=246 y=354 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=73 x=281 y=0 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=74 x=281 y=59 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=75 x=351 y=330 width=30 height=58 xoffset=-1 yoffset=-1 xadvance=36 page=0 chnl=15 +char id=76 x=281 y=118 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=77 x=281 y=177 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=78 x=281 y=236 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=79 x=281 y=295 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=80 x=281 y=354 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=81 x=316 y=0 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=82 x=316 y=59 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=83 x=316 y=118 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=84 x=316 y=177 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=85 x=316 y=236 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=86 x=316 y=295 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=87 x=316 y=354 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=88 x=351 y=0 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=89 x=351 y=59 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=90 x=351 y=118 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=91 x=416 y=0 width=18 height=63 xoffset=5 yoffset=17 xadvance=24 page=0 chnl=15 +char id=93 x=416 y=64 width=18 height=63 xoffset=1 yoffset=17 xadvance=24 page=0 chnl=15 +char id=94 x=351 y=236 width=32 height=34 xoffset=1 yoffset=16 xadvance=34 page=0 chnl=15 +char id=95 x=0 y=272 width=40 height=7 xoffset=-2 yoffset=70 xadvance=36 page=0 chnl=15 +char id=97 x=106 y=118 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=98 x=106 y=177 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=99 x=106 y=236 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=100 x=106 y=295 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=101 x=106 y=354 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=102 x=141 y=0 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=103 x=141 y=59 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=104 x=141 y=118 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=105 x=141 y=177 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=106 x=141 y=236 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=107 x=351 y=271 width=30 height=58 xoffset=-1 yoffset=-1 xadvance=36 page=0 chnl=15 +char id=108 x=141 y=295 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=109 x=141 y=354 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=110 x=176 y=0 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=111 x=176 y=59 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=112 x=176 y=118 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=113 x=176 y=177 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=114 x=176 y=236 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=115 x=176 y=295 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=116 x=176 y=354 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=117 x=211 y=0 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=118 x=211 y=59 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=119 x=211 y=118 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=120 x=211 y=177 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=121 x=211 y=236 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=122 x=211 y=295 width=34 height=58 xoffset=-1 yoffset=-1 xadvance=40 page=0 chnl=15 +char id=123 x=386 y=0 width=29 height=65 xoffset=3 yoffset=16 xadvance=35 page=0 chnl=15 +char id=124 x=57 y=140 width=8 height=52 xoffset=3 yoffset=16 xadvance=15 page=0 chnl=15 +char id=125 x=386 y=66 width=29 height=65 xoffset=3 yoffset=16 xadvance=35 page=0 chnl=15 +char id=8470 x=0 y=0 width=70 height=54 xoffset=-1 yoffset=16 xadvance=69 page=0 chnl=15 diff --git a/assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.png b/assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.png new file mode 100644 index 0000000..ba97131 Binary files /dev/null and b/assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.png differ diff --git a/assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.ttf b/assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.ttf new file mode 100644 index 0000000..4b2e604 Binary files /dev/null and b/assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.ttf differ diff --git a/assets/SproutLandsUI/read_me.txt b/assets/SproutLandsUI/read_me.txt new file mode 100644 index 0000000..9342d20 --- /dev/null +++ b/assets/SproutLandsUI/read_me.txt @@ -0,0 +1,70 @@ + + Heyo! Thanks for downloading the Sprout Lands Basic UI pack !!! + - Made by: Cup Nooble + + This asset pack is the start of a series of different asset packs, + so let me know if there are any specific sprites you'd like to be added in future packs. + +------------------------------------------------------------------------------------------------------------- + + >>> License - Basic UI Pack + + ---------- + + - You can modify the assets. + + [ Feel free to get creative and make your own sprites in this style or use them as reference for your own ] + [ Making additional sprites in the same style or using them as reference for your own project is also allowed ] + + ---------- + + - You can use these assets in any kind of non-commercial projects. + + [ Except anything to do with NFTs or AI training is not allowed ] + + ---------- + + - You can not redistribute the asset pack itself or resell it on other platforms, even if it is slightly modified. + + [ Of course, you can redistribute your own projects made with these assets like games, software, or other ] + [ Making your project opensource is also allowed ] + [ For open source projects include a note that says some or all assets are made by Cup Nooble together with the licensing terms ] + + ---------- + + - Credit is required : (Cup Nooble) + + [ Credit example : Assets -From : Sprout Lands -By : Cup Nooble ] + [ If you share your game on itch.io a link to the Asset Packs page would be very appreciated ] + [ But feel free to credit in whatever way fits your project best ] + [ Thanks a lot for reading ^^ ] + + ---------- + + ~ And most importantly hope you have fun with your project !!! + + ? And if you have questions or need/want different licensing terms please reach out to me and I can work with you on a license that suits your needs. + My Discord : cup_nooble + +------------------------------------------------------------------------------------------------------------- + + >>> See updates here : + + - Discord server : + Join The Sprout Lands Discord for any hotfixes and updates or for any questions + Link - https://discord.gg/PyDwcnPY + + - Twitter : + Link - https://twitter.com/Sprout_Lands + +------------------------------------------------------------------------------------------------------------- + + >>> Support + + If you enjoy this asset pack consider leaving a rating and a comment. + It really helps to support the future of this project ^u^! + + ---------- + + Want to find more from Cup Nooble ? + check out their link tree - cupnooble.carrd.co diff --git a/assets/audio/MP3/Abstract1.mp3 b/assets/audio/MP3/Abstract1.mp3 new file mode 100644 index 0000000..27d14eb Binary files /dev/null and b/assets/audio/MP3/Abstract1.mp3 differ diff --git a/assets/audio/MP3/Abstract2.mp3 b/assets/audio/MP3/Abstract2.mp3 new file mode 100644 index 0000000..3169588 Binary files /dev/null and b/assets/audio/MP3/Abstract2.mp3 differ diff --git a/assets/audio/MP3/African1.mp3 b/assets/audio/MP3/African1.mp3 new file mode 100644 index 0000000..7f121c6 Binary files /dev/null and b/assets/audio/MP3/African1.mp3 differ diff --git a/assets/audio/MP3/African2.mp3 b/assets/audio/MP3/African2.mp3 new file mode 100644 index 0000000..2faf5a2 Binary files /dev/null and b/assets/audio/MP3/African2.mp3 differ diff --git a/assets/audio/MP3/African3.mp3 b/assets/audio/MP3/African3.mp3 new file mode 100644 index 0000000..396b719 Binary files /dev/null and b/assets/audio/MP3/African3.mp3 differ diff --git a/assets/audio/MP3/African4.mp3 b/assets/audio/MP3/African4.mp3 new file mode 100644 index 0000000..a47b96e Binary files /dev/null and b/assets/audio/MP3/African4.mp3 differ diff --git a/assets/audio/MP3/Coffee1.mp3 b/assets/audio/MP3/Coffee1.mp3 new file mode 100644 index 0000000..4cd1b6e Binary files /dev/null and b/assets/audio/MP3/Coffee1.mp3 differ diff --git a/assets/audio/MP3/Coffee2.mp3 b/assets/audio/MP3/Coffee2.mp3 new file mode 100644 index 0000000..db581eb Binary files /dev/null and b/assets/audio/MP3/Coffee2.mp3 differ diff --git a/assets/audio/MP3/Minimalist1.mp3 b/assets/audio/MP3/Minimalist1.mp3 new file mode 100644 index 0000000..cae71a0 Binary files /dev/null and b/assets/audio/MP3/Minimalist1.mp3 differ diff --git a/assets/audio/MP3/Minimalist10.mp3 b/assets/audio/MP3/Minimalist10.mp3 new file mode 100644 index 0000000..947666c Binary files /dev/null and b/assets/audio/MP3/Minimalist10.mp3 differ diff --git a/assets/audio/MP3/Minimalist11.mp3 b/assets/audio/MP3/Minimalist11.mp3 new file mode 100644 index 0000000..4f18e71 Binary files /dev/null and b/assets/audio/MP3/Minimalist11.mp3 differ diff --git a/assets/audio/MP3/Minimalist12.mp3 b/assets/audio/MP3/Minimalist12.mp3 new file mode 100644 index 0000000..8ef588e Binary files /dev/null and b/assets/audio/MP3/Minimalist12.mp3 differ diff --git a/assets/audio/MP3/Minimalist13.mp3 b/assets/audio/MP3/Minimalist13.mp3 new file mode 100644 index 0000000..1b045da Binary files /dev/null and b/assets/audio/MP3/Minimalist13.mp3 differ diff --git a/assets/audio/MP3/Minimalist2.mp3 b/assets/audio/MP3/Minimalist2.mp3 new file mode 100644 index 0000000..edf3e03 Binary files /dev/null and b/assets/audio/MP3/Minimalist2.mp3 differ diff --git a/assets/audio/MP3/Minimalist3.mp3 b/assets/audio/MP3/Minimalist3.mp3 new file mode 100644 index 0000000..1ce636a Binary files /dev/null and b/assets/audio/MP3/Minimalist3.mp3 differ diff --git a/assets/audio/MP3/Minimalist4.mp3 b/assets/audio/MP3/Minimalist4.mp3 new file mode 100644 index 0000000..ee432d1 Binary files /dev/null and b/assets/audio/MP3/Minimalist4.mp3 differ diff --git a/assets/audio/MP3/Minimalist5.mp3 b/assets/audio/MP3/Minimalist5.mp3 new file mode 100644 index 0000000..f6fc418 Binary files /dev/null and b/assets/audio/MP3/Minimalist5.mp3 differ diff --git a/assets/audio/MP3/Minimalist6.mp3 b/assets/audio/MP3/Minimalist6.mp3 new file mode 100644 index 0000000..2ecca45 Binary files /dev/null and b/assets/audio/MP3/Minimalist6.mp3 differ diff --git a/assets/audio/MP3/Minimalist7.mp3 b/assets/audio/MP3/Minimalist7.mp3 new file mode 100644 index 0000000..b5263e4 Binary files /dev/null and b/assets/audio/MP3/Minimalist7.mp3 differ diff --git a/assets/audio/MP3/Minimalist8.mp3 b/assets/audio/MP3/Minimalist8.mp3 new file mode 100644 index 0000000..c645611 Binary files /dev/null and b/assets/audio/MP3/Minimalist8.mp3 differ diff --git a/assets/audio/MP3/Minimalist9.mp3 b/assets/audio/MP3/Minimalist9.mp3 new file mode 100644 index 0000000..881f11e Binary files /dev/null and b/assets/audio/MP3/Minimalist9.mp3 differ diff --git a/assets/audio/MP3/Modern1.mp3 b/assets/audio/MP3/Modern1.mp3 new file mode 100644 index 0000000..321488b Binary files /dev/null and b/assets/audio/MP3/Modern1.mp3 differ diff --git a/assets/audio/MP3/Modern10.mp3 b/assets/audio/MP3/Modern10.mp3 new file mode 100644 index 0000000..f1fa81a Binary files /dev/null and b/assets/audio/MP3/Modern10.mp3 differ diff --git a/assets/audio/MP3/Modern11.mp3 b/assets/audio/MP3/Modern11.mp3 new file mode 100644 index 0000000..89c632a Binary files /dev/null and b/assets/audio/MP3/Modern11.mp3 differ diff --git a/assets/audio/MP3/Modern12.mp3 b/assets/audio/MP3/Modern12.mp3 new file mode 100644 index 0000000..f5887da Binary files /dev/null and b/assets/audio/MP3/Modern12.mp3 differ diff --git a/assets/audio/MP3/Modern13.mp3 b/assets/audio/MP3/Modern13.mp3 new file mode 100644 index 0000000..7cc99ee Binary files /dev/null and b/assets/audio/MP3/Modern13.mp3 differ diff --git a/assets/audio/MP3/Modern14.mp3 b/assets/audio/MP3/Modern14.mp3 new file mode 100644 index 0000000..ba3ba1a Binary files /dev/null and b/assets/audio/MP3/Modern14.mp3 differ diff --git a/assets/audio/MP3/Modern15.mp3 b/assets/audio/MP3/Modern15.mp3 new file mode 100644 index 0000000..db0126c Binary files /dev/null and b/assets/audio/MP3/Modern15.mp3 differ diff --git a/assets/audio/MP3/Modern16.mp3 b/assets/audio/MP3/Modern16.mp3 new file mode 100644 index 0000000..e323af4 Binary files /dev/null and b/assets/audio/MP3/Modern16.mp3 differ diff --git a/assets/audio/MP3/Modern2.mp3 b/assets/audio/MP3/Modern2.mp3 new file mode 100644 index 0000000..827e67c Binary files /dev/null and b/assets/audio/MP3/Modern2.mp3 differ diff --git a/assets/audio/MP3/Modern3.mp3 b/assets/audio/MP3/Modern3.mp3 new file mode 100644 index 0000000..0a9c126 Binary files /dev/null and b/assets/audio/MP3/Modern3.mp3 differ diff --git a/assets/audio/MP3/Modern4.mp3 b/assets/audio/MP3/Modern4.mp3 new file mode 100644 index 0000000..aaf38ad Binary files /dev/null and b/assets/audio/MP3/Modern4.mp3 differ diff --git a/assets/audio/MP3/Modern5.mp3 b/assets/audio/MP3/Modern5.mp3 new file mode 100644 index 0000000..e76c22c Binary files /dev/null and b/assets/audio/MP3/Modern5.mp3 differ diff --git a/assets/audio/MP3/Modern6.mp3 b/assets/audio/MP3/Modern6.mp3 new file mode 100644 index 0000000..9674a23 Binary files /dev/null and b/assets/audio/MP3/Modern6.mp3 differ diff --git a/assets/audio/MP3/Modern7.mp3 b/assets/audio/MP3/Modern7.mp3 new file mode 100644 index 0000000..c0326d5 Binary files /dev/null and b/assets/audio/MP3/Modern7.mp3 differ diff --git a/assets/audio/MP3/Modern8.mp3 b/assets/audio/MP3/Modern8.mp3 new file mode 100644 index 0000000..c14cbd8 Binary files /dev/null and b/assets/audio/MP3/Modern8.mp3 differ diff --git a/assets/audio/MP3/Modern9.mp3 b/assets/audio/MP3/Modern9.mp3 new file mode 100644 index 0000000..656b82a Binary files /dev/null and b/assets/audio/MP3/Modern9.mp3 differ diff --git a/assets/audio/MP3/Retro1.mp3 b/assets/audio/MP3/Retro1.mp3 new file mode 100644 index 0000000..0db6792 Binary files /dev/null and b/assets/audio/MP3/Retro1.mp3 differ diff --git a/assets/audio/MP3/Retro10.mp3 b/assets/audio/MP3/Retro10.mp3 new file mode 100644 index 0000000..59bb98a Binary files /dev/null and b/assets/audio/MP3/Retro10.mp3 differ diff --git a/assets/audio/MP3/Retro11.mp3 b/assets/audio/MP3/Retro11.mp3 new file mode 100644 index 0000000..0a68574 Binary files /dev/null and b/assets/audio/MP3/Retro11.mp3 differ diff --git a/assets/audio/MP3/Retro12.mp3 b/assets/audio/MP3/Retro12.mp3 new file mode 100644 index 0000000..407d3c0 Binary files /dev/null and b/assets/audio/MP3/Retro12.mp3 differ diff --git a/assets/audio/MP3/Retro2.mp3 b/assets/audio/MP3/Retro2.mp3 new file mode 100644 index 0000000..f03d110 Binary files /dev/null and b/assets/audio/MP3/Retro2.mp3 differ diff --git a/assets/audio/MP3/Retro3.mp3 b/assets/audio/MP3/Retro3.mp3 new file mode 100644 index 0000000..a7d1b45 Binary files /dev/null and b/assets/audio/MP3/Retro3.mp3 differ diff --git a/assets/audio/MP3/Retro4.mp3 b/assets/audio/MP3/Retro4.mp3 new file mode 100644 index 0000000..7c99867 Binary files /dev/null and b/assets/audio/MP3/Retro4.mp3 differ diff --git a/assets/audio/MP3/Retro5.mp3 b/assets/audio/MP3/Retro5.mp3 new file mode 100644 index 0000000..912fc6f Binary files /dev/null and b/assets/audio/MP3/Retro5.mp3 differ diff --git a/assets/audio/MP3/Retro6.mp3 b/assets/audio/MP3/Retro6.mp3 new file mode 100644 index 0000000..a12bb58 Binary files /dev/null and b/assets/audio/MP3/Retro6.mp3 differ diff --git a/assets/audio/MP3/Retro7.mp3 b/assets/audio/MP3/Retro7.mp3 new file mode 100644 index 0000000..5a77759 Binary files /dev/null and b/assets/audio/MP3/Retro7.mp3 differ diff --git a/assets/audio/MP3/Retro8.mp3 b/assets/audio/MP3/Retro8.mp3 new file mode 100644 index 0000000..7cdde94 Binary files /dev/null and b/assets/audio/MP3/Retro8.mp3 differ diff --git a/assets/audio/MP3/Retro9.mp3 b/assets/audio/MP3/Retro9.mp3 new file mode 100644 index 0000000..7b64fc6 Binary files /dev/null and b/assets/audio/MP3/Retro9.mp3 differ diff --git a/assets/audio/MP3/Wood Block1.mp3 b/assets/audio/MP3/Wood Block1.mp3 new file mode 100644 index 0000000..1302628 Binary files /dev/null and b/assets/audio/MP3/Wood Block1.mp3 differ diff --git a/assets/audio/MP3/Wood Block2.mp3 b/assets/audio/MP3/Wood Block2.mp3 new file mode 100644 index 0000000..b1b623a Binary files /dev/null and b/assets/audio/MP3/Wood Block2.mp3 differ diff --git a/assets/audio/MP3/Wood Block3.mp3 b/assets/audio/MP3/Wood Block3.mp3 new file mode 100644 index 0000000..fb51628 Binary files /dev/null and b/assets/audio/MP3/Wood Block3.mp3 differ diff --git a/assets/audio/OGG/Abstract1.ogg b/assets/audio/OGG/Abstract1.ogg new file mode 100644 index 0000000..2aae6e9 Binary files /dev/null and b/assets/audio/OGG/Abstract1.ogg differ diff --git a/assets/audio/OGG/Abstract2.ogg b/assets/audio/OGG/Abstract2.ogg new file mode 100644 index 0000000..6cd261f Binary files /dev/null and b/assets/audio/OGG/Abstract2.ogg differ diff --git a/assets/audio/OGG/African1.ogg b/assets/audio/OGG/African1.ogg new file mode 100644 index 0000000..ae17fcd Binary files /dev/null and b/assets/audio/OGG/African1.ogg differ diff --git a/assets/audio/OGG/African2.ogg b/assets/audio/OGG/African2.ogg new file mode 100644 index 0000000..db4aaf4 Binary files /dev/null and b/assets/audio/OGG/African2.ogg differ diff --git a/assets/audio/OGG/African3.ogg b/assets/audio/OGG/African3.ogg new file mode 100644 index 0000000..66f7584 Binary files /dev/null and b/assets/audio/OGG/African3.ogg differ diff --git a/assets/audio/OGG/African4.ogg b/assets/audio/OGG/African4.ogg new file mode 100644 index 0000000..590c7da Binary files /dev/null and b/assets/audio/OGG/African4.ogg differ diff --git a/assets/audio/OGG/Coffee1.ogg b/assets/audio/OGG/Coffee1.ogg new file mode 100644 index 0000000..783adfc Binary files /dev/null and b/assets/audio/OGG/Coffee1.ogg differ diff --git a/assets/audio/OGG/Coffee2.ogg b/assets/audio/OGG/Coffee2.ogg new file mode 100644 index 0000000..ffe2f89 Binary files /dev/null and b/assets/audio/OGG/Coffee2.ogg differ diff --git a/assets/audio/OGG/Minimalist1.ogg b/assets/audio/OGG/Minimalist1.ogg new file mode 100644 index 0000000..17d414c Binary files /dev/null and b/assets/audio/OGG/Minimalist1.ogg differ diff --git a/assets/audio/OGG/Minimalist10.ogg b/assets/audio/OGG/Minimalist10.ogg new file mode 100644 index 0000000..e8ad222 Binary files /dev/null and b/assets/audio/OGG/Minimalist10.ogg differ diff --git a/assets/audio/OGG/Minimalist11.ogg b/assets/audio/OGG/Minimalist11.ogg new file mode 100644 index 0000000..2b503e4 Binary files /dev/null and b/assets/audio/OGG/Minimalist11.ogg differ diff --git a/assets/audio/OGG/Minimalist12.ogg b/assets/audio/OGG/Minimalist12.ogg new file mode 100644 index 0000000..48c4eac Binary files /dev/null and b/assets/audio/OGG/Minimalist12.ogg differ diff --git a/assets/audio/OGG/Minimalist13.ogg b/assets/audio/OGG/Minimalist13.ogg new file mode 100644 index 0000000..42d4a38 Binary files /dev/null and b/assets/audio/OGG/Minimalist13.ogg differ diff --git a/assets/audio/OGG/Minimalist2.ogg b/assets/audio/OGG/Minimalist2.ogg new file mode 100644 index 0000000..b9aaf43 Binary files /dev/null and b/assets/audio/OGG/Minimalist2.ogg differ diff --git a/assets/audio/OGG/Minimalist3.ogg b/assets/audio/OGG/Minimalist3.ogg new file mode 100644 index 0000000..93b240d Binary files /dev/null and b/assets/audio/OGG/Minimalist3.ogg differ diff --git a/assets/audio/OGG/Minimalist4.ogg b/assets/audio/OGG/Minimalist4.ogg new file mode 100644 index 0000000..01e308d Binary files /dev/null and b/assets/audio/OGG/Minimalist4.ogg differ diff --git a/assets/audio/OGG/Minimalist5.ogg b/assets/audio/OGG/Minimalist5.ogg new file mode 100644 index 0000000..e721494 Binary files /dev/null and b/assets/audio/OGG/Minimalist5.ogg differ diff --git a/assets/audio/OGG/Minimalist6.ogg b/assets/audio/OGG/Minimalist6.ogg new file mode 100644 index 0000000..2db7077 Binary files /dev/null and b/assets/audio/OGG/Minimalist6.ogg differ diff --git a/assets/audio/OGG/Minimalist7.ogg b/assets/audio/OGG/Minimalist7.ogg new file mode 100644 index 0000000..03d945c Binary files /dev/null and b/assets/audio/OGG/Minimalist7.ogg differ diff --git a/assets/audio/OGG/Minimalist8.ogg b/assets/audio/OGG/Minimalist8.ogg new file mode 100644 index 0000000..dfa7fb8 Binary files /dev/null and b/assets/audio/OGG/Minimalist8.ogg differ diff --git a/assets/audio/OGG/Minimalist9.ogg b/assets/audio/OGG/Minimalist9.ogg new file mode 100644 index 0000000..e97150f Binary files /dev/null and b/assets/audio/OGG/Minimalist9.ogg differ diff --git a/assets/audio/OGG/Modern1.ogg b/assets/audio/OGG/Modern1.ogg new file mode 100644 index 0000000..4411f14 Binary files /dev/null and b/assets/audio/OGG/Modern1.ogg differ diff --git a/assets/audio/OGG/Modern10.ogg b/assets/audio/OGG/Modern10.ogg new file mode 100644 index 0000000..3552342 Binary files /dev/null and b/assets/audio/OGG/Modern10.ogg differ diff --git a/assets/audio/OGG/Modern11.ogg b/assets/audio/OGG/Modern11.ogg new file mode 100644 index 0000000..1668645 Binary files /dev/null and b/assets/audio/OGG/Modern11.ogg differ diff --git a/assets/audio/OGG/Modern12.ogg b/assets/audio/OGG/Modern12.ogg new file mode 100644 index 0000000..9a88758 Binary files /dev/null and b/assets/audio/OGG/Modern12.ogg differ diff --git a/assets/audio/OGG/Modern13.ogg b/assets/audio/OGG/Modern13.ogg new file mode 100644 index 0000000..7e27946 Binary files /dev/null and b/assets/audio/OGG/Modern13.ogg differ diff --git a/assets/audio/OGG/Modern14.ogg b/assets/audio/OGG/Modern14.ogg new file mode 100644 index 0000000..461c515 Binary files /dev/null and b/assets/audio/OGG/Modern14.ogg differ diff --git a/assets/audio/OGG/Modern15.ogg b/assets/audio/OGG/Modern15.ogg new file mode 100644 index 0000000..20e7ffc Binary files /dev/null and b/assets/audio/OGG/Modern15.ogg differ diff --git a/assets/audio/OGG/Modern16.ogg b/assets/audio/OGG/Modern16.ogg new file mode 100644 index 0000000..671ac7f Binary files /dev/null and b/assets/audio/OGG/Modern16.ogg differ diff --git a/assets/audio/OGG/Modern2.ogg b/assets/audio/OGG/Modern2.ogg new file mode 100644 index 0000000..b7e30d8 Binary files /dev/null and b/assets/audio/OGG/Modern2.ogg differ diff --git a/assets/audio/OGG/Modern3.ogg b/assets/audio/OGG/Modern3.ogg new file mode 100644 index 0000000..eeef39c Binary files /dev/null and b/assets/audio/OGG/Modern3.ogg differ diff --git a/assets/audio/OGG/Modern4.ogg b/assets/audio/OGG/Modern4.ogg new file mode 100644 index 0000000..9288e95 Binary files /dev/null and b/assets/audio/OGG/Modern4.ogg differ diff --git a/assets/audio/OGG/Modern5.ogg b/assets/audio/OGG/Modern5.ogg new file mode 100644 index 0000000..8c46eaa Binary files /dev/null and b/assets/audio/OGG/Modern5.ogg differ diff --git a/assets/audio/OGG/Modern6.ogg b/assets/audio/OGG/Modern6.ogg new file mode 100644 index 0000000..30ce7fb Binary files /dev/null and b/assets/audio/OGG/Modern6.ogg differ diff --git a/assets/audio/OGG/Modern7.ogg b/assets/audio/OGG/Modern7.ogg new file mode 100644 index 0000000..4ed0f67 Binary files /dev/null and b/assets/audio/OGG/Modern7.ogg differ diff --git a/assets/audio/OGG/Modern8.ogg b/assets/audio/OGG/Modern8.ogg new file mode 100644 index 0000000..a18a442 Binary files /dev/null and b/assets/audio/OGG/Modern8.ogg differ diff --git a/assets/audio/OGG/Modern9.ogg b/assets/audio/OGG/Modern9.ogg new file mode 100644 index 0000000..2d5543b Binary files /dev/null and b/assets/audio/OGG/Modern9.ogg differ diff --git a/assets/audio/OGG/Retro1.ogg b/assets/audio/OGG/Retro1.ogg new file mode 100644 index 0000000..7ed992b Binary files /dev/null and b/assets/audio/OGG/Retro1.ogg differ diff --git a/assets/audio/OGG/Retro10.ogg b/assets/audio/OGG/Retro10.ogg new file mode 100644 index 0000000..8998f1d Binary files /dev/null and b/assets/audio/OGG/Retro10.ogg differ diff --git a/assets/audio/OGG/Retro11.ogg b/assets/audio/OGG/Retro11.ogg new file mode 100644 index 0000000..5795a3d Binary files /dev/null and b/assets/audio/OGG/Retro11.ogg differ diff --git a/assets/audio/OGG/Retro12.ogg b/assets/audio/OGG/Retro12.ogg new file mode 100644 index 0000000..d2d7754 Binary files /dev/null and b/assets/audio/OGG/Retro12.ogg differ diff --git a/assets/audio/OGG/Retro2.ogg b/assets/audio/OGG/Retro2.ogg new file mode 100644 index 0000000..d7b85aa Binary files /dev/null and b/assets/audio/OGG/Retro2.ogg differ diff --git a/assets/audio/OGG/Retro3.ogg b/assets/audio/OGG/Retro3.ogg new file mode 100644 index 0000000..155bf91 Binary files /dev/null and b/assets/audio/OGG/Retro3.ogg differ diff --git a/assets/audio/OGG/Retro4.ogg b/assets/audio/OGG/Retro4.ogg new file mode 100644 index 0000000..338efb0 Binary files /dev/null and b/assets/audio/OGG/Retro4.ogg differ diff --git a/assets/audio/OGG/Retro5.ogg b/assets/audio/OGG/Retro5.ogg new file mode 100644 index 0000000..6ca47b4 Binary files /dev/null and b/assets/audio/OGG/Retro5.ogg differ diff --git a/assets/audio/OGG/Retro6.ogg b/assets/audio/OGG/Retro6.ogg new file mode 100644 index 0000000..b79dd8a Binary files /dev/null and b/assets/audio/OGG/Retro6.ogg differ diff --git a/assets/audio/OGG/Retro7.ogg b/assets/audio/OGG/Retro7.ogg new file mode 100644 index 0000000..169bfa4 Binary files /dev/null and b/assets/audio/OGG/Retro7.ogg differ diff --git a/assets/audio/OGG/Retro8.ogg b/assets/audio/OGG/Retro8.ogg new file mode 100644 index 0000000..3e2bfff Binary files /dev/null and b/assets/audio/OGG/Retro8.ogg differ diff --git a/assets/audio/OGG/Retro9.ogg b/assets/audio/OGG/Retro9.ogg new file mode 100644 index 0000000..e204d21 Binary files /dev/null and b/assets/audio/OGG/Retro9.ogg differ diff --git a/assets/audio/OGG/Wood Block1.ogg b/assets/audio/OGG/Wood Block1.ogg new file mode 100644 index 0000000..f844b1e Binary files /dev/null and b/assets/audio/OGG/Wood Block1.ogg differ diff --git a/assets/audio/OGG/Wood Block2.ogg b/assets/audio/OGG/Wood Block2.ogg new file mode 100644 index 0000000..f0b6c2a Binary files /dev/null and b/assets/audio/OGG/Wood Block2.ogg differ diff --git a/assets/audio/OGG/Wood Block3.ogg b/assets/audio/OGG/Wood Block3.ogg new file mode 100644 index 0000000..81b0eb6 Binary files /dev/null and b/assets/audio/OGG/Wood Block3.ogg differ diff --git a/assets/audio/WAV/Abstract1.wav b/assets/audio/WAV/Abstract1.wav new file mode 100644 index 0000000..55d1961 Binary files /dev/null and b/assets/audio/WAV/Abstract1.wav differ diff --git a/assets/audio/WAV/Abstract2.wav b/assets/audio/WAV/Abstract2.wav new file mode 100644 index 0000000..3bba5a5 Binary files /dev/null and b/assets/audio/WAV/Abstract2.wav differ diff --git a/assets/audio/WAV/African1.wav b/assets/audio/WAV/African1.wav new file mode 100644 index 0000000..416a9f5 Binary files /dev/null and b/assets/audio/WAV/African1.wav differ diff --git a/assets/audio/WAV/African2.wav b/assets/audio/WAV/African2.wav new file mode 100644 index 0000000..075d89e Binary files /dev/null and b/assets/audio/WAV/African2.wav differ diff --git a/assets/audio/WAV/African3.wav b/assets/audio/WAV/African3.wav new file mode 100644 index 0000000..14b54d0 Binary files /dev/null and b/assets/audio/WAV/African3.wav differ diff --git a/assets/audio/WAV/African4.wav b/assets/audio/WAV/African4.wav new file mode 100644 index 0000000..bfbfbf2 Binary files /dev/null and b/assets/audio/WAV/African4.wav differ diff --git a/assets/audio/WAV/Coffee1.wav b/assets/audio/WAV/Coffee1.wav new file mode 100644 index 0000000..cb44c22 Binary files /dev/null and b/assets/audio/WAV/Coffee1.wav differ diff --git a/assets/audio/WAV/Coffee2.wav b/assets/audio/WAV/Coffee2.wav new file mode 100644 index 0000000..05d4073 Binary files /dev/null and b/assets/audio/WAV/Coffee2.wav differ diff --git a/assets/audio/WAV/Minimalist1.wav b/assets/audio/WAV/Minimalist1.wav new file mode 100644 index 0000000..b0e9230 Binary files /dev/null and b/assets/audio/WAV/Minimalist1.wav differ diff --git a/assets/audio/WAV/Minimalist10.wav b/assets/audio/WAV/Minimalist10.wav new file mode 100644 index 0000000..881ba35 Binary files /dev/null and b/assets/audio/WAV/Minimalist10.wav differ diff --git a/assets/audio/WAV/Minimalist11.wav b/assets/audio/WAV/Minimalist11.wav new file mode 100644 index 0000000..f656b4a Binary files /dev/null and b/assets/audio/WAV/Minimalist11.wav differ diff --git a/assets/audio/WAV/Minimalist12.wav b/assets/audio/WAV/Minimalist12.wav new file mode 100644 index 0000000..b391f7c Binary files /dev/null and b/assets/audio/WAV/Minimalist12.wav differ diff --git a/assets/audio/WAV/Minimalist13.wav b/assets/audio/WAV/Minimalist13.wav new file mode 100644 index 0000000..f1e15b6 Binary files /dev/null and b/assets/audio/WAV/Minimalist13.wav differ diff --git a/assets/audio/WAV/Minimalist2.wav b/assets/audio/WAV/Minimalist2.wav new file mode 100644 index 0000000..3694db5 Binary files /dev/null and b/assets/audio/WAV/Minimalist2.wav differ diff --git a/assets/audio/WAV/Minimalist3.wav b/assets/audio/WAV/Minimalist3.wav new file mode 100644 index 0000000..45b28fd Binary files /dev/null and b/assets/audio/WAV/Minimalist3.wav differ diff --git a/assets/audio/WAV/Minimalist4.wav b/assets/audio/WAV/Minimalist4.wav new file mode 100644 index 0000000..2319d7b Binary files /dev/null and b/assets/audio/WAV/Minimalist4.wav differ diff --git a/assets/audio/WAV/Minimalist5.wav b/assets/audio/WAV/Minimalist5.wav new file mode 100644 index 0000000..558f9cc Binary files /dev/null and b/assets/audio/WAV/Minimalist5.wav differ diff --git a/assets/audio/WAV/Minimalist6.wav b/assets/audio/WAV/Minimalist6.wav new file mode 100644 index 0000000..a94fec7 Binary files /dev/null and b/assets/audio/WAV/Minimalist6.wav differ diff --git a/assets/audio/WAV/Minimalist7.wav b/assets/audio/WAV/Minimalist7.wav new file mode 100644 index 0000000..b823852 Binary files /dev/null and b/assets/audio/WAV/Minimalist7.wav differ diff --git a/assets/audio/WAV/Minimalist8.wav b/assets/audio/WAV/Minimalist8.wav new file mode 100644 index 0000000..5240f83 Binary files /dev/null and b/assets/audio/WAV/Minimalist8.wav differ diff --git a/assets/audio/WAV/Minimalist9.wav b/assets/audio/WAV/Minimalist9.wav new file mode 100644 index 0000000..21cb2ed Binary files /dev/null and b/assets/audio/WAV/Minimalist9.wav differ diff --git a/assets/audio/WAV/Modern1.wav b/assets/audio/WAV/Modern1.wav new file mode 100644 index 0000000..120ff7e Binary files /dev/null and b/assets/audio/WAV/Modern1.wav differ diff --git a/assets/audio/WAV/Modern10.wav b/assets/audio/WAV/Modern10.wav new file mode 100644 index 0000000..4ed6bf1 Binary files /dev/null and b/assets/audio/WAV/Modern10.wav differ diff --git a/assets/audio/WAV/Modern11.wav b/assets/audio/WAV/Modern11.wav new file mode 100644 index 0000000..8d3bb16 Binary files /dev/null and b/assets/audio/WAV/Modern11.wav differ diff --git a/assets/audio/WAV/Modern12.wav b/assets/audio/WAV/Modern12.wav new file mode 100644 index 0000000..adcf097 Binary files /dev/null and b/assets/audio/WAV/Modern12.wav differ diff --git a/assets/audio/WAV/Modern13.wav b/assets/audio/WAV/Modern13.wav new file mode 100644 index 0000000..16090c4 Binary files /dev/null and b/assets/audio/WAV/Modern13.wav differ diff --git a/assets/audio/WAV/Modern14.wav b/assets/audio/WAV/Modern14.wav new file mode 100644 index 0000000..cc78257 Binary files /dev/null and b/assets/audio/WAV/Modern14.wav differ diff --git a/assets/audio/WAV/Modern15.wav b/assets/audio/WAV/Modern15.wav new file mode 100644 index 0000000..1184af6 Binary files /dev/null and b/assets/audio/WAV/Modern15.wav differ diff --git a/assets/audio/WAV/Modern16.wav b/assets/audio/WAV/Modern16.wav new file mode 100644 index 0000000..64edae8 Binary files /dev/null and b/assets/audio/WAV/Modern16.wav differ diff --git a/assets/audio/WAV/Modern2.wav b/assets/audio/WAV/Modern2.wav new file mode 100644 index 0000000..43895cd Binary files /dev/null and b/assets/audio/WAV/Modern2.wav differ diff --git a/assets/audio/WAV/Modern3.wav b/assets/audio/WAV/Modern3.wav new file mode 100644 index 0000000..1b901b7 Binary files /dev/null and b/assets/audio/WAV/Modern3.wav differ diff --git a/assets/audio/WAV/Modern4.wav b/assets/audio/WAV/Modern4.wav new file mode 100644 index 0000000..6d89402 Binary files /dev/null and b/assets/audio/WAV/Modern4.wav differ diff --git a/assets/audio/WAV/Modern5.wav b/assets/audio/WAV/Modern5.wav new file mode 100644 index 0000000..95c08ed Binary files /dev/null and b/assets/audio/WAV/Modern5.wav differ diff --git a/assets/audio/WAV/Modern6.wav b/assets/audio/WAV/Modern6.wav new file mode 100644 index 0000000..73b7eb0 Binary files /dev/null and b/assets/audio/WAV/Modern6.wav differ diff --git a/assets/audio/WAV/Modern7.wav b/assets/audio/WAV/Modern7.wav new file mode 100644 index 0000000..362a6ac Binary files /dev/null and b/assets/audio/WAV/Modern7.wav differ diff --git a/assets/audio/WAV/Modern8.wav b/assets/audio/WAV/Modern8.wav new file mode 100644 index 0000000..cc66aaa Binary files /dev/null and b/assets/audio/WAV/Modern8.wav differ diff --git a/assets/audio/WAV/Modern9.wav b/assets/audio/WAV/Modern9.wav new file mode 100644 index 0000000..fa4b0c0 Binary files /dev/null and b/assets/audio/WAV/Modern9.wav differ diff --git a/assets/audio/WAV/Retro1.wav b/assets/audio/WAV/Retro1.wav new file mode 100644 index 0000000..86c4b01 Binary files /dev/null and b/assets/audio/WAV/Retro1.wav differ diff --git a/assets/audio/WAV/Retro10.wav b/assets/audio/WAV/Retro10.wav new file mode 100644 index 0000000..d82990c Binary files /dev/null and b/assets/audio/WAV/Retro10.wav differ diff --git a/assets/audio/WAV/Retro11.wav b/assets/audio/WAV/Retro11.wav new file mode 100644 index 0000000..e2d864b Binary files /dev/null and b/assets/audio/WAV/Retro11.wav differ diff --git a/assets/audio/WAV/Retro12.wav b/assets/audio/WAV/Retro12.wav new file mode 100644 index 0000000..e1df547 Binary files /dev/null and b/assets/audio/WAV/Retro12.wav differ diff --git a/assets/audio/WAV/Retro2.wav b/assets/audio/WAV/Retro2.wav new file mode 100644 index 0000000..986b07a Binary files /dev/null and b/assets/audio/WAV/Retro2.wav differ diff --git a/assets/audio/WAV/Retro3.wav b/assets/audio/WAV/Retro3.wav new file mode 100644 index 0000000..4f22401 Binary files /dev/null and b/assets/audio/WAV/Retro3.wav differ diff --git a/assets/audio/WAV/Retro4.wav b/assets/audio/WAV/Retro4.wav new file mode 100644 index 0000000..9fa0be1 Binary files /dev/null and b/assets/audio/WAV/Retro4.wav differ diff --git a/assets/audio/WAV/Retro5.wav b/assets/audio/WAV/Retro5.wav new file mode 100644 index 0000000..bdb11c6 Binary files /dev/null and b/assets/audio/WAV/Retro5.wav differ diff --git a/assets/audio/WAV/Retro6.wav b/assets/audio/WAV/Retro6.wav new file mode 100644 index 0000000..fc0644e Binary files /dev/null and b/assets/audio/WAV/Retro6.wav differ diff --git a/assets/audio/WAV/Retro7.wav b/assets/audio/WAV/Retro7.wav new file mode 100644 index 0000000..18dd59c Binary files /dev/null and b/assets/audio/WAV/Retro7.wav differ diff --git a/assets/audio/WAV/Retro8.wav b/assets/audio/WAV/Retro8.wav new file mode 100644 index 0000000..0f2d983 Binary files /dev/null and b/assets/audio/WAV/Retro8.wav differ diff --git a/assets/audio/WAV/Retro9.wav b/assets/audio/WAV/Retro9.wav new file mode 100644 index 0000000..4b2fadd Binary files /dev/null and b/assets/audio/WAV/Retro9.wav differ diff --git a/assets/audio/WAV/Wood Block1.wav b/assets/audio/WAV/Wood Block1.wav new file mode 100644 index 0000000..a25e2b2 Binary files /dev/null and b/assets/audio/WAV/Wood Block1.wav differ diff --git a/assets/audio/WAV/Wood Block2.wav b/assets/audio/WAV/Wood Block2.wav new file mode 100644 index 0000000..89544a8 Binary files /dev/null and b/assets/audio/WAV/Wood Block2.wav differ diff --git a/assets/audio/WAV/Wood Block3.wav b/assets/audio/WAV/Wood Block3.wav new file mode 100644 index 0000000..572005b Binary files /dev/null and b/assets/audio/WAV/Wood Block3.wav differ diff --git a/assets/audio/sounds/axe.mp3 b/assets/audio/sounds/axe.mp3 new file mode 100644 index 0000000..11956f2 Binary files /dev/null and b/assets/audio/sounds/axe.mp3 differ diff --git a/assets/audio/sounds/bg.mp3 b/assets/audio/sounds/bg.mp3 new file mode 100644 index 0000000..9ef5ef4 Binary files /dev/null and b/assets/audio/sounds/bg.mp3 differ diff --git a/assets/audio/sounds/coin.wav b/assets/audio/sounds/coin.wav new file mode 100644 index 0000000..0509182 Binary files /dev/null and b/assets/audio/sounds/coin.wav differ diff --git a/assets/audio/sounds/explosion.wav b/assets/audio/sounds/explosion.wav new file mode 100644 index 0000000..8a67b16 Binary files /dev/null and b/assets/audio/sounds/explosion.wav differ diff --git a/assets/audio/sounds/hoe.wav b/assets/audio/sounds/hoe.wav new file mode 100644 index 0000000..f22d74f Binary files /dev/null and b/assets/audio/sounds/hoe.wav differ diff --git a/assets/audio/sounds/hurt.wav b/assets/audio/sounds/hurt.wav new file mode 100644 index 0000000..b46ecd7 Binary files /dev/null and b/assets/audio/sounds/hurt.wav differ diff --git a/assets/audio/sounds/jump.wav b/assets/audio/sounds/jump.wav new file mode 100644 index 0000000..611bddf Binary files /dev/null and b/assets/audio/sounds/jump.wav differ diff --git a/assets/audio/sounds/music.mp3 b/assets/audio/sounds/music.mp3 new file mode 100644 index 0000000..3df0464 Binary files /dev/null and b/assets/audio/sounds/music.mp3 differ diff --git a/assets/audio/sounds/plant.wav b/assets/audio/sounds/plant.wav new file mode 100644 index 0000000..96c2013 Binary files /dev/null and b/assets/audio/sounds/plant.wav differ diff --git a/assets/audio/sounds/power_up.wav b/assets/audio/sounds/power_up.wav new file mode 100644 index 0000000..d807e3f Binary files /dev/null and b/assets/audio/sounds/power_up.wav differ diff --git a/assets/audio/sounds/success.wav b/assets/audio/sounds/success.wav new file mode 100644 index 0000000..7b5805f Binary files /dev/null and b/assets/audio/sounds/success.wav differ diff --git a/assets/audio/sounds/tap.wav b/assets/audio/sounds/tap.wav new file mode 100644 index 0000000..e9dc6ab Binary files /dev/null and b/assets/audio/sounds/tap.wav differ diff --git a/assets/audio/sounds/water.mp3 b/assets/audio/sounds/water.mp3 new file mode 100644 index 0000000..7a2bc33 Binary files /dev/null and b/assets/audio/sounds/water.mp3 differ diff --git a/assets/brackeys_platformer_assets/LICENSE & CREDITS.txt b/assets/brackeys_platformer_assets/LICENSE & CREDITS.txt new file mode 100644 index 0000000..8c53da4 --- /dev/null +++ b/assets/brackeys_platformer_assets/LICENSE & CREDITS.txt @@ -0,0 +1,26 @@ +All assets in the pack have been repackaged and many have been modified by Brackeys. + + +LICENSE for all assets: + +Creative Commons Zero (CC0) + + +CREDIT: + +SPRITES by analogStudios_: +knight (https://analogstudios.itch.io/camelot) +slime (https://analogstudios.itch.io/dungeonsprites) +platforms and coin (https://analogstudios.itch.io/four-seasons-platformer-sprites) + +SPRITES by RottingPixels: +world_tileset and fruit (https://rottingpixels.itch.io/four-seasons-platformer-tileset-16x16free) + + +WORLD TILESET originally + +SOUNDS by Brackeys, Asbjørn Thirslund + +MUSIC by Brackeys, Sofia Thirslund + +FONTS by Jayvee Enaguas - HarvettFox96 - (https://www.dafont.com/pixel-operator.font?l[]=10&l[]=1) \ No newline at end of file diff --git a/assets/brackeys_platformer_assets/fonts/PixelOperator8-Bold.ttf b/assets/brackeys_platformer_assets/fonts/PixelOperator8-Bold.ttf new file mode 100644 index 0000000..10225eb Binary files /dev/null and b/assets/brackeys_platformer_assets/fonts/PixelOperator8-Bold.ttf differ diff --git a/assets/brackeys_platformer_assets/fonts/PixelOperator8.ttf b/assets/brackeys_platformer_assets/fonts/PixelOperator8.ttf new file mode 100644 index 0000000..f9146ac Binary files /dev/null and b/assets/brackeys_platformer_assets/fonts/PixelOperator8.ttf differ diff --git a/assets/brackeys_platformer_assets/music/time_for_adventure.mp3 b/assets/brackeys_platformer_assets/music/time_for_adventure.mp3 new file mode 100644 index 0000000..2ba9940 Binary files /dev/null and b/assets/brackeys_platformer_assets/music/time_for_adventure.mp3 differ diff --git a/assets/brackeys_platformer_assets/sprites/coin.png b/assets/brackeys_platformer_assets/sprites/coin.png new file mode 100644 index 0000000..01ae33d Binary files /dev/null and b/assets/brackeys_platformer_assets/sprites/coin.png differ diff --git a/assets/brackeys_platformer_assets/sprites/fruit.png b/assets/brackeys_platformer_assets/sprites/fruit.png new file mode 100644 index 0000000..b9cc7d6 Binary files /dev/null and b/assets/brackeys_platformer_assets/sprites/fruit.png differ diff --git a/assets/brackeys_platformer_assets/sprites/knight.png b/assets/brackeys_platformer_assets/sprites/knight.png new file mode 100644 index 0000000..5b0eb4f Binary files /dev/null and b/assets/brackeys_platformer_assets/sprites/knight.png differ diff --git a/assets/brackeys_platformer_assets/sprites/platforms.png b/assets/brackeys_platformer_assets/sprites/platforms.png new file mode 100644 index 0000000..9be41db Binary files /dev/null and b/assets/brackeys_platformer_assets/sprites/platforms.png differ diff --git a/assets/brackeys_platformer_assets/sprites/slime_green.png b/assets/brackeys_platformer_assets/sprites/slime_green.png new file mode 100644 index 0000000..a21cb6f Binary files /dev/null and b/assets/brackeys_platformer_assets/sprites/slime_green.png differ diff --git a/assets/brackeys_platformer_assets/sprites/slime_purple.png b/assets/brackeys_platformer_assets/sprites/slime_purple.png new file mode 100644 index 0000000..76f564e Binary files /dev/null and b/assets/brackeys_platformer_assets/sprites/slime_purple.png differ diff --git a/assets/brackeys_platformer_assets/sprites/world_tileset.png b/assets/brackeys_platformer_assets/sprites/world_tileset.png new file mode 100644 index 0000000..36bbf07 Binary files /dev/null and b/assets/brackeys_platformer_assets/sprites/world_tileset.png differ diff --git a/assets/merrygoround.wav b/assets/merrygoround.wav new file mode 100644 index 0000000..20d9eec Binary files /dev/null and b/assets/merrygoround.wav differ diff --git a/IDEAS.md b/docs/IDEAS.md similarity index 100% rename from IDEAS.md rename to docs/IDEAS.md diff --git a/docs/roadmap.md b/docs/roadmap.md new file mode 100644 index 0000000..2465c55 --- /dev/null +++ b/docs/roadmap.md @@ -0,0 +1,11 @@ +- [x] enums for other assets +- [ ] Player animation for tools and switching +- [ ] Timer Class (init, activate, deactivate, update) for the engine and for player animation with tools 53:50 https://www.youtube.com/watch?v=T4IX36sP_0c&t=1924s +- [ ] Change UI textures +- [ ] Change Map texture and change to non procedural map (Tilemap with tiled and tmx) +- [ ] Gameplay UI +- [ ] Init values should be stored in a seperate file and loaded. When clicking new game game should reload all init values +- [ ] Create layers enum and render layers in their order. removes code order rendering. Group same layer (z) height object in one layer +- [ ] Fix asset include rotation temporary fix with 180 +- [x] Custom Font and Title in Menu +- [ ] Cursord logic can be moved from game and menu to main but deactivatet at logo \ No newline at end of file diff --git a/docs/style.md b/docs/style.md new file mode 100644 index 0000000..a1bfcbf --- /dev/null +++ b/docs/style.md @@ -0,0 +1,107 @@ + +# Coding Style Guide + +This document outlines the coding style and conventions to be followed. + +## 1. **File Structure** + +- Header files should be wrapped with include guards to avoid multiple inclusions: + ```c + #ifndef PHYSICS_H + #define PHYSICS_H + ... + #endif // PHYSICS_H + ``` + +## 2. **Naming Conventions** + +- **Functions:** Function names should use `CamelCase` starting with a upercase letter. + - Example: `UpdatePhysicsDirection`, `UpdatePhysicsVelocity` + +- **Structs:** Struct names should use `CamelCase` starting with an uppercase letter. + - Example: `Physics` + +- **Variables:** Use `CamelCase` starting with a lowerase letter for local and parameter variables. + - Example: `vector`, `newSpeed` + +## 3. **Function Design** + +- Functions should be named descriptively, indicating the purpose or action performed. + - Example: `UpdatePhysicsDirection`, `UpdatePhysicsVelocity` + +- Functions should take pointers when modifying variables outside their scope. + - Example: `void UpdatePhysicsDirection(Vector2 *direction, Vector2 vector)` + +- Ensure function parameters have clear names to indicate their role. + - Example: `UpdatePhysicsVelocity(Vector2 *velocity, Vector2 *direction, float *speed)` + +- Functions should be concise and focused on a single task. Avoid functions with multiple responsibilities. + +## 4. **Struct Design** + + - Prefer composition, where structs are composed of other structs or primitive data types. This allows for more flexible and modular designs. + - Example: + ```c + typedef struct { + Vector2 position; + Vector2 direction; + Vector2 velocity; + float speed; + } Physics; + ``` + Here, instead of trying to create a hierarchy of structs, we compose a Physics struct with relevant fields like `position`, `direction`, and `velocity`. + +## 5. **Indentation & Formatting** + +- **Indentation:** Use 1 tab for indentation. Never use spaces. + +- **Spacing:** Place a single space after keywords like `if`, `for`, and `while`, and around operators (`=`, `+`, `-`, etc.) for readability. + - Example: `*velocity = Vector2Scale(*direction, *speed * GetFrameTime());` + +- **Braces:** Use braces `{}` even for single-line blocks for consistency and future-proofing. + ```c + if (condition) { + do_something(); + } + ``` + +## 6. **Pointer Usage** + +- Use pointers when passing large structures or when modifying variables outside the scope of the function. + - Example: `Vector2 *position`, `float *speed` + +- Avoid unnecessary dereferencing and use `*` clearly to indicate pointer dereferencing. + - Example: `*position = Vector2Add(*position, *velocity);` + +## 7. **Consistency in Function Calls** + +- When calling functions, parameters should be passed clearly, and care should be taken to avoid modifying data unintentionally unless needed. + +- Example: + ```c + UpdatePhysicsDirection(&physics->direction, direction); + UpdatePhysicsVelocity(&physics->velocity, &physics->direction, &physics->speed); + UpdatePhysicsPosition(&physics->position, &physics->velocity); + ``` + +## 8. **Comments and Documentation** + +- Strive for clarity through descriptive naming and simple logic. +- Add comments to explain non-obvious logic, design decisions, or complex algorithms. +- Do not state the obvious; let the code speak for itself where possible. + +## 9. **End of File** + +- Always ensure that header files end with the appropriate closing include guard and a new line after the last line of code: + ```c + #endif // PHYSICS_H + + ``` + +## 10. **General Rules** + +- **Modular Design**: Break code into small, focused functions and modules with clear interfaces. +- **Refactoring**: Regularly refactor code to maintain simplicity and performance +- **Don't Repeat Yourself**: Reuse code by creating helper functions to avoid duplication +- **Avoid magic numbers:** Use constants or defines instead of hardcoded values. +- **Code readability:** Prioritize code readability and maintainability over shortness or cleverness. \ No newline at end of file diff --git a/src/engine/animation.h b/src/engine/animation.h index 99c8abf..b2a85a9 100644 --- a/src/engine/animation.h +++ b/src/engine/animation.h @@ -1,7 +1,8 @@ #ifndef ANIMATION_H #define ANIMATION_H -typedef struct { +typedef struct { + int state; int currentFrame; int maxFrame; int framesCounter; diff --git a/src/engine/asset.h b/src/engine/asset.h index af20ad3..697cf75 100644 --- a/src/engine/asset.h +++ b/src/engine/asset.h @@ -8,4 +8,23 @@ typedef struct { float rotation; } TextureAsset; +typedef struct { + const char* path; +} ShaderAsset; + +typedef struct { + const char* path; +} SoundtrackAsset; + +typedef struct { + const char* path; +} SoundAsset; + +typedef struct { + const TextureAsset *textureAssets; + const ShaderAsset *shaderAssets; + const SoundtrackAsset *soundtrackAssets; + const SoundAsset *soundAssets; +} Assets; + #endif // ASSET_H diff --git a/src/engine/gamegui.h b/src/engine/gamegui.h new file mode 100644 index 0000000..492c485 --- /dev/null +++ b/src/engine/gamegui.h @@ -0,0 +1,99 @@ +#ifndef GAMEGUI_H +#define GAMEGUI_H + +#include "sprite.h" +#include + +typedef enum { + NOT_CLICKED, + HOVER, + CLICKED +} ButtonState; + +typedef struct +{ + Sprite sprite; + Vector2 notClicked; + Vector2 hover; + Vector2 clicked; + bool isHovered; + bool isClicked; +} ImageButton; + +typedef struct +{ + Sprite sprite; +} ImageElement; + +ImageButton CreateImageButton(ButtonState state, Texture2D *texture, const TextureAsset *asset, Vector2 *source, Vector2 *clicked, Vector2 *hover, Rectangle *destRec){ + return (ImageButton){ + .sprite = { + .texture = *texture, + .sourceRec = (Rectangle){ source->x, source->y, asset->frameWidth, asset->frameHeight}, + .destRec = *destRec, + .frameSize = (Vector2){asset->frameWidth, asset->frameHeight}, + .origin = (Vector2){0.0f, 0.0f}, + .rotation = 0.0f, + .color = WHITE + }, + .notClicked = (Vector2){source->x, source->y}, + .hover = *hover, + .clicked = *clicked + }; +} + +ImageElement CreateImageElement(Texture2D *texture, const TextureAsset *asset, Vector2 *source, Rectangle *destRec){ + return (ImageElement){ + .sprite = { + .texture = *texture, + .sourceRec = (Rectangle){ source->x, source->y, asset->frameWidth, asset->frameHeight}, + .destRec = *destRec, + .frameSize = (Vector2){asset->frameWidth, asset->frameHeight}, + .origin = (Vector2){0.0f, 0.0f}, + .rotation = 0.0f, + .color = WHITE + } + }; +} + +int isImageButtonClicked(ImageButton *b, Sound soundHover, Sound soundClick){ + if (CheckCollisionPointRec(GetMousePosition(), b->sprite.destRec)) { + + if (!b->isHovered) { + PlaySound(soundHover); + b->isHovered = true; + UpdateSpriteSourceRec(&b->sprite, &b->hover); + } + + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)){ + if (!b->isClicked) { + PlaySound(soundClick); + b->isClicked = true; + UpdateSpriteSourceRec(&b->sprite, &b->clicked); + } + } + if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) + { + b->isClicked = false; + b->isHovered = false; + UpdateSpriteSourceRec(&b->sprite, &b->notClicked); + return true; + } + } else { + UpdateSpriteSourceRec(&b->sprite, &b->notClicked); + b->isClicked = false; + b->isHovered = false; + } + return false; +} + +void renderImageButton(ImageButton *b) { + RenderSprite(&b->sprite); +} + +void renderImageElement(ImageElement *e){ + RenderSprite(&e->sprite); +} + + +#endif // GAMEGUI_H diff --git a/src/engine/input.h b/src/engine/input.h index e76664a..ef27022 100644 --- a/src/engine/input.h +++ b/src/engine/input.h @@ -2,6 +2,7 @@ #define INPUT_H typedef struct { + Vector2 screenPosition; Vector2 worldPosition; float zoomSpeed; float minZoom; @@ -10,22 +11,31 @@ typedef struct { float wheelMove; bool leftButton; bool rightButton; + Texture2D cursorTexture; } Mouse; -Mouse CreateMouse(float zoomSpeed, float minZoom, float maxZoom){ +Mouse CreateMouse(float zoomSpeed, float minZoom, float maxZoom, Texture2D *texture){ + HideCursor(); return (Mouse){ .zoomSpeed = zoomSpeed, .minZoom = minZoom, - .maxZoom = maxZoom + .maxZoom = maxZoom, + .cursorTexture = *texture }; } +void UpdateMouseScreen(Mouse *mouse){ + mouse->screenPosition = GetMousePosition(); + +} + void UpdateMouse(Mouse *mouse, Camera2D *camera) { + + mouse->screenPosition = GetMousePosition(); mouse->worldPosition = GetScreenToWorld2D(GetMousePosition(), *camera); mouse->leftButton = IsMouseButtonDown(MOUSE_LEFT_BUTTON); mouse->rightButton = IsMouseButtonDown(MOUSE_RIGHT_BUTTON); - // Calculate zoom scale factor mouse->wheelMove = GetMouseWheelMove(); if (mouse->wheelMove != 0) { float zoomFactor = 1.0f + (mouse->zoomSpeed * fabsf(mouse->wheelMove)); diff --git a/src/engine/musicmanager.h b/src/engine/musicmanager.h deleted file mode 100644 index 2dc18aa..0000000 --- a/src/engine/musicmanager.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef MUSICMANAGER_H -#define MUSICMANAGER_H - -typedef struct { - Music music; - bool playing; -} MyMusic; - -MyMusic CreateMusic(char* musicPath){ - MyMusic music = { - .music = LoadMusicStream(musicPath), - .playing = 0 - }; - PlayMusicStream(music.music); - return music; -} - -void UpdateMusic(MyMusic* music){ - UpdateMusicStream(music->music); -} - -#endif // MUSICMANAGER_H - diff --git a/src/engine/postfx.h b/src/engine/postfx.h index 11b7861..d10312b 100644 --- a/src/engine/postfx.h +++ b/src/engine/postfx.h @@ -8,7 +8,7 @@ typedef struct { float strength; } PostProcessing; -PostProcessing CreatePostFX(const char* shaderPath, float strength){ +PostProcessing CreatePostFX(const char* shaderPath){ PostProcessing postFX = {0}; postFX.shader = LoadShader(NULL, shaderPath); @@ -17,7 +17,7 @@ PostProcessing CreatePostFX(const char* shaderPath, float strength){ return postFX; } - postFX.strength = strength; + postFX.strength = 0.3f; postFX.resolutionLoc = GetShaderLocation(postFX.shader, "resolution"); postFX.strengthLoc = GetShaderLocation(postFX.shader, "strength"); Vector2 resolution = { (float)GetScreenWidth(), (float)GetScreenHeight() }; diff --git a/src/engine/soundtrack.h b/src/engine/soundtrack.h new file mode 100644 index 0000000..07d010e --- /dev/null +++ b/src/engine/soundtrack.h @@ -0,0 +1,23 @@ +#ifndef SOUNDTRACK_H +#define SOUNDTRACK_H + +typedef struct { + Music music; + bool playing; +} Soundtrack; + +Soundtrack LoadSoundtrack(const char* musicPath){ + Soundtrack soundtrack = { + .music = LoadMusicStream(musicPath), + .playing = 0 + }; + PlayMusicStream(soundtrack.music); + return soundtrack; +} + +void UpdateSoundtrack(Soundtrack *soundtrack){ + UpdateMusicStream(soundtrack->music); +} + +#endif // SOUNDTRACK_H + diff --git a/src/engine/sprite.h b/src/engine/sprite.h index 5fa1682..8fff197 100644 --- a/src/engine/sprite.h +++ b/src/engine/sprite.h @@ -40,4 +40,15 @@ void RenderSprite(const Sprite *sprite){ ); } +void PrintSprite(const Sprite *sprite) { + printf("Sprite:\n"); + printf(" Sprite.texture: id = %d\n", sprite->texture.id); + printf(" Sprite.sourceRec: x = %f, y = %f, width = %f, height = %f\n", sprite->sourceRec.x, sprite->sourceRec.y, sprite->sourceRec.width, sprite->sourceRec.height); + printf(" Sprite.destRec: x = %f, y = %f, width = %f, height = %f\n", sprite->destRec.x, sprite->destRec.y, sprite->destRec.width, sprite->destRec.height); + printf(" Sprite.frameSize: x = %f, y = %f\n", sprite->frameSize.x, sprite->frameSize.y); + printf(" Sprite.origin: x = %f, y = %f\n", sprite->origin.x, sprite->origin.y); + printf(" Sprite.rotation: %f\n", sprite->rotation); + printf(" Sprite.color: r = %d, g = %d, b = %d, a = %d\n", sprite->color.r, sprite->color.g, sprite->color.b, sprite->color.a); +} + #endif // SPRITE_H diff --git a/src/game/background.h b/src/game/background.h new file mode 100644 index 0000000..dceb670 --- /dev/null +++ b/src/game/background.h @@ -0,0 +1,70 @@ +#ifndef BACKGROUND_H +#define BACKGROUND_H +#include "../engine/sprite.h" +#include "raylib.h" + +typedef struct { + Sprite sprite; + float scrolling; + float scale; + float scrollSpeed; + Vector2 pos; +} Background; + +void InitBackground(float scrollSpeed, Background *bg, Texture2D *texture, const TextureAsset *backgroundAsset){ + bg->scrolling = 0.0f; + bg->scrollSpeed = scrollSpeed; + bg->scale = 1.0f; + bg->sprite = (Sprite){ + .texture = *texture, + .sourceRec = (Rectangle){0.0f,0.0f,backgroundAsset->frameWidth, backgroundAsset->frameHeight}, + .destRec = (Rectangle){0.0f,0.0f,(float)GetScreenWidth(),(float)GetScreenHeight()}, + .origin = (Vector2){0.0f,0.0f}, + .rotation = 0.0f, + .color = WHITE + }; +} + +void UpdateBackground(Background *bg){ + bg->scrolling -= bg->scrollSpeed; + + if (bg->scrolling <= -bg->sprite.texture.width * bg->scale) { + bg->scrolling = 0; + } + + bg->pos = (Vector2){ bg->scrolling, 0.0f }; + UpdateSpriteDestRec(&bg->sprite, &bg->pos); +} + +void RenderBackground(Background *bg){ + + Sprite temp0 = bg->sprite; + float newX0 = bg->sprite.destRec.x + bg->sprite.texture.width * bg->scale * 2; + Vector2 newPos0 = {newX0, bg->sprite.destRec.y}; + UpdateSpriteDestRec(&temp0, &newPos0); + RenderSprite(&temp0); + + Sprite temp = bg->sprite; + float newX = bg->sprite.destRec.x + bg->sprite.texture.width * bg->scale; + Vector2 newPos = {newX, bg->sprite.destRec.y}; + UpdateSpriteDestRec(&temp, &newPos); + RenderSprite(&temp); + + RenderSprite(&bg->sprite); + + Sprite temp2 = bg->sprite; + float newX2 = bg->sprite.destRec.x - bg->sprite.texture.width * bg->scale; + Vector2 newPos2 = {newX2, bg->sprite.destRec.y}; + UpdateSpriteDestRec(&temp2, &newPos2); + RenderSprite(&temp2); + + Sprite temp3 = bg->sprite; + float newX3 = bg->sprite.destRec.x - bg->sprite.texture.width * bg->scale * 2; + Vector2 newPos3 = {newX3, bg->sprite.destRec.y}; + UpdateSpriteDestRec(&temp3, &newPos3); + RenderSprite(&temp3); + + +} + +#endif // BACKGROUND_H diff --git a/src/game/bee.h b/src/game/bee.h index 728d9da..e90c0c7 100644 --- a/src/game/bee.h +++ b/src/game/bee.h @@ -5,6 +5,9 @@ #include "../engine/physics.h" #include "../engine/object.h" +typedef enum { + FLYING +} BeeAnimationState; typedef struct { Sprite sprite; @@ -15,7 +18,7 @@ typedef struct { int flowerCount; } Bee; -Bee CreateBee(Texture2D texture, float frameWidth, int maxFrame, int framesSpeed, Vector2 position, float speed, ObjectArray* target, Object* base){ +Bee CreateBee(BeeAnimationState animState, Texture2D texture, float frameWidth, int maxFrame, int framesSpeed, Vector2 position, float speed, ObjectArray* target, Object* base){ return (Bee){ .sprite = { .texture = texture, @@ -27,6 +30,7 @@ Bee CreateBee(Texture2D texture, float frameWidth, int maxFrame, int framesSpeed .color = WHITE }, .animation = { + .state = animState, .currentFrame = 0, .maxFrame = maxFrame, .framesCounter = 0, @@ -66,7 +70,7 @@ void UpdateBee(Bee* bee, ObjectArray* flowers, Object* hive){ UpdateSpriteRotation(&bee->sprite, &bee->physics.direction); UpdateSpriteDestRec(&bee->sprite, &bee->physics.position); UpdateAnimation(&bee->animation, GetFrameTime()); - UpdateSpriteSourceRec(&bee->sprite, &(Vector2){bee->sprite.frameSize.x, bee->sprite.frameSize.x * bee->animation.currentFrame}); + UpdateSpriteSourceRec(&bee->sprite, &(Vector2){bee->sprite.frameSize.x * bee->animation.state, bee->sprite.frameSize.x * bee->animation.currentFrame}); } #endif // BEE_H diff --git a/src/game/button.h b/src/game/button.h new file mode 100644 index 0000000..0d817b4 --- /dev/null +++ b/src/game/button.h @@ -0,0 +1,20 @@ +// initButton(&m->startButton, "Start Game", GetScreenWidth() / 10, GetScreenHeight() / 20, GetScreenWidth() / 2, GetScreenHeight() / 2); +// initButton(&m->quitButton, "Quit Game", GetScreenWidth() / 10, GetScreenHeight() / 20, GetScreenWidth() / 2, +// GetScreenHeight() / 2 + (GetScreenHeight() / 20 * 2)); + +// if (isButtonClicked(&m->startButton)) { +// state->gameStarted = true; +// m->startButton.text = "Continue"; +// state->currentScreen = GAMEPLAY; +// } +// if (isButtonClicked(&m->quitButton) || (WindowShouldClose() && !IsKeyPressed(KEY_ESCAPE))) { +// state->running = false; +// } + +// if (state->gameStarted){ +// if (IsKeyPressed(KEY_ESCAPE)){ +// state->currentScreen = GAMEPLAY; +// } +// } +// renderButton(&m->startButton); +// renderButton(&m->quitButton); \ No newline at end of file diff --git a/src/game/colors.h b/src/game/colors.h new file mode 100644 index 0000000..0e0822e --- /dev/null +++ b/src/game/colors.h @@ -0,0 +1,7 @@ +#ifndef COLORS_H +#define COLORS_H + +#define TEXT_COLOR_DARK (Color){ 182, 137, 98, 255} +#define TEXT_COLOR_LIGHT (Color){ 243, 229, 194, 255} + +#endif // COLORS_H diff --git a/src/game/game.h b/src/game/game.h index b193dbf..057f236 100644 --- a/src/game/game.h +++ b/src/game/game.h @@ -4,29 +4,21 @@ #include "../engine/camera.h" #include "../engine/input.h" #include "../engine/postfx.h" -#include "../engine/musicmanager.h" +#include "../engine/soundtrack.h" #include "../engine/asset.h" #include "../engine/applicationstate.h" +#include "gameassets.h" #include "floor.h" #include "player.h" #include "bee.h" #include "hive.h" #include "flowers.h" -typedef enum { - PLAYER, - FLOWER, - BEE, - GRASS, - HIVE, - TEX_COUNT -} TextureID; - - - typedef struct { - PostProcessing postFX; - MyMusic ambient; + Assets assets; + Texture2D textures[TEX_COUNT]; + PostProcessing postFX[SHADER_COUNT]; + Soundtrack soundtracks[SOUNDTRACK_COUNT]; RenderTexture2D target; Floor floor; Object hive; @@ -36,68 +28,69 @@ typedef struct { Camera2D camera; Mouse mouse; Image image; - TextureAsset textureAssets[TEX_COUNT]; - Texture2D textures[TEX_COUNT]; } GameState; -void InitGame(GameState* g, Display *display){ +void InitGame(GameState* g, Display *display){ - InitAudioDevice(); - - g->postFX = CreatePostFX("shaders/postfx.fs", 0.3f); - - g->ambient = CreateMusic("assets/beez.mp3"); + g->assets = (Assets){ + .textureAssets = texAssets, + .shaderAssets = shaderAssets, + .soundtrackAssets = soundtrackAssets + }; - g->textureAssets[PLAYER] = (TextureAsset){"assets/character/character.png", 64.0f, 64.0f, 180.0f}; - g->textureAssets[FLOWER] = (TextureAsset){"assets/flower.png", 16.0f, 16.0f, 45.0f}; - g->textureAssets[BEE] = (TextureAsset){"assets/character_bee.png", 16.0f, 16.0f, 0.0f}; - g->textureAssets[GRASS] = (TextureAsset){"assets/grass.png", 16.0f, 16.0f, 0.0f}; - g->textureAssets[HIVE] = (TextureAsset){"assets/hive.png", 32.0f, 32.0f, 0.0f}; + for (int i = 0; i < TEX_COUNT; i++){ + g->textures[i] = LoadTexture(g->assets.textureAssets[i].path); + } - g->textures[PLAYER] = LoadTexture(g->textureAssets[PLAYER].path); - g->textures[FLOWER] = LoadTexture(g->textureAssets[FLOWER].path); - g->textures[BEE] = LoadTexture(g->textureAssets[BEE].path); - g->textures[GRASS] = LoadTexture(g->textureAssets[GRASS].path); - g->textures[HIVE] = LoadTexture(g->textureAssets[HIVE].path); + for (int i = 0; i < SHADER_COUNT; i++){ + g->postFX[i] = CreatePostFX(g->assets.shaderAssets[i].path); + } - g->player = CreatePlayer(g->textures[PLAYER], g->textureAssets[PLAYER].frameWidth, 4, 5, g->hive.position, g->textureAssets[PLAYER].rotation, 50.0f); - g->flowers = CreateFlowers(g->textures[FLOWER], g->textureAssets[FLOWER].frameWidth, g->textureAssets[FLOWER].rotation, 50.0f); - g->floor = CreateFloor(g->textures[GRASS], g->textureAssets[GRASS].frameWidth); - g->hive = CreateHive(g->textures[HIVE], g->textureAssets[HIVE].frameWidth); - g->bee1 = CreateBee(g->textures[BEE], g->textureAssets[BEE].frameWidth, 4, 10, g->hive.position, 10.0f, &g->flowers, &g->hive); - - g->camera = CreateCamera(display->width, display->height, g->player.physics.position, 5.0f); - g->mouse = CreateMouse(0.10f, 5.0f, 10.0f); + for (int i = 0; i < SOUNDTRACK_COUNT; i++){ + g->soundtracks[i] = LoadSoundtrack(g->assets.soundtrackAssets[i].path); + } + // Target texture g->target = LoadRenderTexture(display->width, display->height); + + // Static Entities + g->flowers = CreateFlowers(g->textures[FLOWER], g->assets.textureAssets[FLOWER].frameWidth, g->assets.textureAssets[FLOWER].rotation, 50.0f); + g->floor = CreateFloor(g->textures[GRASS], g->assets.textureAssets[GRASS].frameWidth); + g->hive = CreateHive(g->textures[HIVE], g->assets.textureAssets[HIVE].frameWidth); + + // Animated Entities + g->player = CreatePlayer(IDLE_DOWN, HOE, g->textures[PLAYER], g->assets.textureAssets[PLAYER].frameWidth, 4, 2, g->hive.position, g->assets.textureAssets[PLAYER].rotation, 50.0f); + g->bee1 = CreateBee(FLYING, g->textures[BEE], g->assets.textureAssets[BEE].frameWidth, 4, 10, g->hive.position, 10.0f, &g->flowers, &g->hive); + + // I/O + g->camera = CreateCamera(display->width, display->height, g->player.physics.position, 10.0f); + + + g->mouse = CreateMouse(0.10f, 5.0f, 10.0f, &g->textures[CURSOR]); + } void UpdateGame(GameState* g, State *state){ - SetTargetFPS(0); - UpdatePostFX(&g->postFX); - UpdateMusic(&g->ambient); + if (GetFPS() <= 60){ SetTargetFPS(0); } + if (IsKeyPressed(KEY_ESCAPE)){ state->currentScreen = MENU; } + if (WindowShouldClose() && !IsKeyPressed(KEY_ESCAPE)) { state->running = false; } + for (int i = 0; i < SHADER_COUNT; i++){ UpdatePostFX(&g->postFX[i]); } + for (int i = 0; i < SOUNDTRACK_COUNT; i++){ UpdateSoundtrack(&g->soundtracks[i]); } + UpdateMouse(&g->mouse, &g->camera); UpdateCamera2D(&g->camera, &g->player.physics.position, &g->mouse); UpdateFloor(&g->floor, &g->camera); UpdatePlayer(&g->player); UpdateBee(&g->bee1, &g->flowers, &g->hive); - if (IsKeyPressed(KEY_ESCAPE)){ - state->currentScreen = MENU; - } - - if (WindowShouldClose() && !IsKeyPressed(KEY_ESCAPE)) { - state->running = false; - } - } void RenderComponents(GameState* g){ RenderFloor(&g->floor); RenderSprite(&g->hive.sprite); RenderObjectArray(&g->flowers); - RenderSprite(&g->bee1.sprite); RenderSprite(&g->player.sprite); + RenderSprite(&g->bee1.sprite); } void RenderGame(GameState* g){ @@ -106,23 +99,23 @@ void RenderGame(GameState* g){ BeginMode2D(g->camera); RenderComponents(g); EndMode2D(); + DrawTextureRec(g->mouse.cursorTexture, (Rectangle){ 0, 0, g->mouse.cursorTexture.width, -g->mouse.cursorTexture.height }, (Vector2){ g->mouse.screenPosition.x, GetScreenHeight() - g->mouse.screenPosition.y - g->mouse.cursorTexture.height}, WHITE); EndTextureMode(); BeginDrawing(); ClearBackground(BLACK); - RenderPostFX(&g->postFX, &g->target); + for (int i = 0; i < SHADER_COUNT; i++){ + RenderPostFX(&g->postFX[i], &g->target); + } DrawFPS(10, 10); EndDrawing(); } void CleanupGame(GameState* g){ - UnloadPostFX(&g->postFX); + for (int i = 0; i < SHADER_COUNT; i++){ UnloadPostFX(&g->postFX[i]); } + for (int i = 0; i < TEX_COUNT; i++){ if (g->textures[i].id > 0) { UnloadTexture(g->textures[i]); } } + for (int i = 0; i < SOUNDTRACK_COUNT; i++){ UnloadMusicStream(g->soundtracks[i].music); } UnloadRenderTexture(g->target); - for (int i = 0; i < TEX_COUNT; i++){ - if (g->textures[i].id > 0) { UnloadTexture(g->textures[i]); } - } - UnloadMusicStream(g->ambient.music); free(g->flowers.data); - CloseAudioDevice(); } #endif // GAME_H diff --git a/src/game/gameassets.h b/src/game/gameassets.h new file mode 100644 index 0000000..09a695a --- /dev/null +++ b/src/game/gameassets.h @@ -0,0 +1,55 @@ +#ifndef GAMEASSETS_H +#define GAMEASSETS_H +#include "../engine/asset.h" + +//////////////////////////////////////////////////////////////////////////// + +typedef enum { + PLAYER, + PLAYER_ACTIONS, + TOOLS, + FLOWER, + BEE, + GRASS, + HIVE, + CURSOR, + TEX_COUNT +} TextureID; + +const TextureAsset texAssets[TEX_COUNT] = { + {"assets/SproutLandsBasic/Characters/character.png", 48.0f, 48.0f, 180.0f}, + {"assets/SproutLandsBasic/Characters/BasicCharakterActions.png", 48.0f, 48.0f, 180.0f}, + {"assets/SproutLandsBasic/Objects/tools.png", 48.0f, 16.0f, 180.0f}, + {"assets/flower.png", 16.0f, 16.0f, 45.0f}, + {"assets/character_bee.png", 16.0f, 16.0f, 0.0f}, + {"assets/grass.png", 16.0f, 16.0f, 0.0f}, + {"assets/hive.png", 32.0f, 32.0f, 0.0f}, + {"assets/SproutLandsUI/Spritesheets/Mouse sprites/TriangleMouseicon1.png", 16.0f, 16.0f, 0.0f } +}; + +//////////////////////////////////////////////////////////////////////////// + +typedef enum { + POST_FX, + SHADER_COUNT +} ShaderID; + + +const ShaderAsset shaderAssets[SHADER_COUNT] = { + {"shaders/postfx.fs"} +}; + +//////////////////////////////////////////////////////////////////////////// + +typedef enum { + BEE_AMBIENT, + SOUNDTRACK_COUNT +} SoundtrackID; + +const SoundtrackAsset soundtrackAssets[SOUNDTRACK_COUNT] = { + {"assets/beez.mp3"} +}; + +//////////////////////////////////////////////////////////////////////////// + +#endif // GAMEASSETS_H diff --git a/src/game/hive.h b/src/game/hive.h index 0d70ce5..10b61f0 100644 --- a/src/game/hive.h +++ b/src/game/hive.h @@ -10,7 +10,7 @@ Object CreateHive(Texture2D texture, float frameWidth){ .destRec = (Rectangle){0.0f, 0.0f, frameWidth, frameWidth}, .origin = (Vector2){frameWidth / 2, frameWidth / 2}, .rotation = 0.0f, - .color = WHITE, + .color = WHITE }, .position = (Vector2){0.0f, 0.0f} }; diff --git a/src/game/logo.h b/src/game/logo.h index 878beb0..b90725f 100644 --- a/src/game/logo.h +++ b/src/game/logo.h @@ -110,6 +110,8 @@ void RenderLogo(const LogoState *l) { DrawText(TextSubtext("raylib", 0, l->lettersCount), GetScreenWidth() / 2 - 44, GetScreenHeight() / 2 + 48, 50, Fade(BLACK, l->alpha)); } + DrawFPS(10, 10); + EndDrawing(); } diff --git a/src/game/menu.h b/src/game/menu.h index 9fee1a3..fd13e3d 100644 --- a/src/game/menu.h +++ b/src/game/menu.h @@ -3,41 +3,155 @@ #include "../engine/gui.h" #include "../engine/applicationstate.h" +#include "../engine/asset.h" +#include "../engine/gamegui.h" +#include "menuassets.h" +#include "colors.h" +#include "../engine/input.h" +#include "background.h" +#include "../engine/soundtrack.h" typedef struct { - Button startButton; - Button quitButton; + Assets assets; + Mouse mouse; + Texture2D textures[MENU_TEX_COUNT]; + Sound sounds[MENU_SOUND_COUNT]; + Soundtrack soundtracks[MENU_SOUNDTRACK_COUNT]; + ImageElement board; + ImageButton playButton; + ImageButton quitButton; + int menuScale; + Background background; + Background midground; + Background foreground; } MenuState; -void InitMenu(MenuState *t){ - initButton(&t->startButton, "Start Game", GetScreenWidth() / 10, GetScreenHeight() / 20, GetScreenWidth() / 2, GetScreenHeight() / 2); - initButton(&t->quitButton, "Quit Game", GetScreenWidth() / 10, GetScreenHeight() / 20, GetScreenWidth() / 2, GetScreenHeight() / 2 + (GetScreenHeight() / 20 * 2)); +void InitMenu(MenuState *m){ + + m->assets = (Assets){ + .textureAssets = menuTextureAssets, + .soundAssets = menuSoundAssets, + .soundtrackAssets = menuSoundtrackAssets + }; + + for (int i = 0; i < MENU_TEX_COUNT; i++){ + m->textures[i] = LoadTexture(m->assets.textureAssets[i].path); + } + + for (int i = 0; i < MENU_SOUND_COUNT; i++){ + m->sounds[i] = LoadSound(m->assets.soundAssets[i].path); + } + + for (int i = 0; i < MENU_SOUNDTRACK_COUNT; i++){ + m->soundtracks[i] = LoadSoundtrack(m->assets.soundtrackAssets[i].path); + } + + InitBackground(0.1f, &m->background, &m->textures[MENU_CLOUD_BACKGROUND], &m->assets.textureAssets[MENU_CLOUD_BACKGROUND]); + InitBackground(0.2f, &m->midground, &m->textures[MENU_CLOUD_MIDGROUND], &m->assets.textureAssets[MENU_CLOUD_MIDGROUND]); + InitBackground(0.3f, &m->foreground, &m->textures[MENU_CLOUD_FOREGROUND], &m->assets.textureAssets[MENU_CLOUD_FOREGROUND]); + + m->mouse = CreateMouse(0.10f, 5.0f, 10.0f, &m->textures[MENU_CURSOR_TEX]); + + m->menuScale = 4; + int screenWidth = GetScreenWidth(); + int screenHeight = GetScreenHeight(); + Vector2 screenCenter = {screenWidth / 2, screenHeight / 2}; + + + + int boardWidth = screenWidth / m->menuScale * 2.5f; + float boardScaleFactor = (float)boardWidth / m->assets.textureAssets[MENU_BOARD_TEX].frameWidth; + int boardHeight = (int)(m->assets.textureAssets[MENU_BOARD_TEX].frameHeight * boardScaleFactor); + + Vector2 boardSource = {128.0f,0.0f}; + Rectangle boardDestRec = { + .x = screenCenter.x - (boardWidth / 2), + .y = screenCenter.y - (boardHeight / 2), + .width = boardWidth, + .height = boardHeight + }; + + m->board = CreateImageElement(&m->textures[MENU_BOARD_TEX], &m->assets.textureAssets[MENU_BOARD_TEX], &boardSource, &boardDestRec); + + int buttonWidth = screenWidth / m->menuScale; + float buttonScaleFactor = (float)buttonWidth / m->assets.textureAssets[MENU_BIG_BUTTONS_TEX].frameWidth; + int buttonHeight = (int)(m->assets.textureAssets[MENU_BIG_BUTTONS_TEX].frameHeight * buttonScaleFactor); + int buttonSpacing = buttonHeight; + + Vector2 playButtonNotPressed = { 0.0f, 96.0f}; + Vector2 quitButtonNotPressed = { 0.0f, 0.0f}; + Vector2 playButtonHover = { 96.0f, 96.0f}; + Vector2 quitButtonHover = { 96.0f, 0.0f}; + Vector2 playButtonPressed = { 192.0f, 96.0f}; + Vector2 quitButtonPressed = { 192.0f, 0.0f}; + + Rectangle playButtonDestRec = { + .x = screenCenter.x - (buttonWidth / 2), + .y = screenCenter.y - (buttonHeight / 2), + .width = buttonWidth, + .height = buttonHeight + }; + + Rectangle quitButtonDestRec = { + .x = screenCenter.x - (buttonWidth / 2), + .y = screenCenter.y - (buttonHeight / 2) + buttonSpacing, + .width = buttonWidth, + .height = buttonHeight + }; + + m->playButton = CreateImageButton(NOT_CLICKED, &m->textures[MENU_BIG_BUTTONS_TEX], &m->assets.textureAssets[MENU_BIG_BUTTONS_TEX], &playButtonNotPressed, &playButtonPressed, &playButtonHover, &playButtonDestRec); + m->quitButton = CreateImageButton(NOT_CLICKED, &m->textures[MENU_BIG_BUTTONS_TEX], &m->assets.textureAssets[MENU_BIG_BUTTONS_TEX], &quitButtonNotPressed, &quitButtonPressed, &quitButtonHover, &quitButtonDestRec); } -void UpdateMenu(MenuState *t, State *state){ - if (isButtonClicked(&t->startButton)) { +void UpdateMenu(MenuState *m, State *state){ + + for (int i = 0; i < MENU_SOUNDTRACK_COUNT; i++){ UpdateSoundtrack(&m->soundtracks[i]); } + + UpdateBackground(&m->background); + UpdateBackground(&m->midground); + UpdateBackground(&m->foreground); + + UpdateMouseScreen(&m->mouse); + + if (isImageButtonClicked(&m->playButton, m->sounds[HOVER_SOUND], m->sounds[CLICK_SOUND])){ state->gameStarted = true; - t->startButton.text = "Continue"; state->currentScreen = GAMEPLAY; } - if (isButtonClicked(&t->quitButton) || (WindowShouldClose() && !IsKeyPressed(KEY_ESCAPE))) { + + if (isImageButtonClicked(&m->quitButton, m->sounds[HOVER_SOUND], m->sounds[CLICK_SOUND]) || (WindowShouldClose() && !IsKeyPressed(KEY_ESCAPE))) { state->running = false; } - if (state->gameStarted){ - if (IsKeyPressed(KEY_ESCAPE)){ - state->currentScreen = GAMEPLAY; - } - } - } -void RenderMenu(MenuState *t){ +void RenderMenu(MenuState *m, Font *font, const char* name){ BeginDrawing(); ClearBackground(WHITE); - renderButton(&t->startButton); - renderButton(&t->quitButton); + RenderBackground(&m->background); + RenderBackground(&m->midground); + RenderBackground(&m->foreground); + renderImageElement(&m->board); + renderImageButton(&m->playButton); + renderImageButton(&m->quitButton); + int textWidth = MeasureText(name, font->baseSize); + DrawTextEx(*font, name, (Vector2){ GetScreenWidth() / 2 - textWidth / 2, textWidth / 4}, (float)font->baseSize, 2, WHITE); + DrawTexturePro( + m->mouse.cursorTexture, + (Rectangle){ 0, 0, m->mouse.cursorTexture.width, m->mouse.cursorTexture.height}, + (Rectangle){m->mouse.screenPosition.x, m->mouse.screenPosition.y, m->mouse.cursorTexture.width, m->mouse.cursorTexture.height}, + (Vector2){0.0f, 0.0f}, + 0.0f, + WHITE + ); + DrawFPS(10, 10); EndDrawing(); } +void CleanupMenu(MenuState *m){ + for (int i = 0; i < MENU_SOUND_COUNT; i++){ UnloadSound(m->sounds[i]); } + for (int i = 0; i < MENU_TEX_COUNT; i++){ if (m->textures[i].id > 0) { UnloadTexture(m->textures[i]); } } + for (int i = 0; i < MENU_SOUNDTRACK_COUNT; i++){ UnloadMusicStream(m->soundtracks[i].music); } + +} + #endif // MENU_H diff --git a/src/game/menuassets.h b/src/game/menuassets.h new file mode 100644 index 0000000..115a139 --- /dev/null +++ b/src/game/menuassets.h @@ -0,0 +1,44 @@ +#ifndef MENUASSETS_H +#define MENUASSETS_H +#include "../engine/asset.h" + +typedef enum { + MENU_CURSOR_TEX, + MENU_BIG_BUTTONS_TEX, + MENU_BOARD_TEX, + MENU_CLOUD_BACKGROUND, + MENU_CLOUD_MIDGROUND, + MENU_CLOUD_FOREGROUND, + MENU_TEX_COUNT +} MenuTextureID; + +const TextureAsset menuTextureAssets[MENU_TEX_COUNT] = { + {"assets/SproutLandsUI/Spritesheets/Mouse sprites/TriangleMouseicon1.png", 16.0f, 16.0f, 0.0f }, + {"assets/SproutLandsUI/Spritesheets/UIBigPlayButtonHover.png", 96.0f, 32.0f, 180.0f}, + {"assets/SproutLandsUI/Spritesheets/Settingmenu.png", 128.0f, 144.0f, 180.0f}, + {"assets/Clouds/Clouds1/1.png", 576.0f, 324.0f, 180.0f}, + {"assets/Clouds/Clouds1/2.png", 576.0f, 324.0f, 180.0f}, + {"assets/Clouds/Clouds1/4.png", 576.0f, 324.0f, 180.0f} +}; + +typedef enum { + MENU_MUSIC, + MENU_SOUNDTRACK_COUNT +} MenuSoundtrackID; + +const SoundtrackAsset menuSoundtrackAssets[MENU_SOUNDTRACK_COUNT] = { + {"assets/merrygoround.wav"} +}; + +typedef enum { + HOVER_SOUND, + CLICK_SOUND, + MENU_SOUND_COUNT +} MenuSoundID; + +const SoundAsset menuSoundAssets[MENU_SOUND_COUNT] = { + {"assets/audio/WAV/Minimalist1.wav"}, + {"assets/audio/WAV/Abstract1.wav"} +}; + +#endif // MENUASSETS_H diff --git a/src/game/player.h b/src/game/player.h index 19701d6..48bb4d3 100644 --- a/src/game/player.h +++ b/src/game/player.h @@ -6,35 +6,62 @@ #include "../engine/input.h" typedef enum { - IDLE_UP, - IDLE_LEFT, - IDLE_DOWN, - IDLE_RIGHT, - WALKING_UP, - WALKING_LEFT, - WALKING_DOWN, - WALKING_RIGHT + IDLE, + WALKING, + USING_TOOL } PlayerState; +typedef enum { + NO_TOOL, + HOE, + AXT, + CAN +} SelectedTool; + +typedef enum { + IDLE_DOWN, + IDLE_UP, + IDLE_RIGHT, + IDLE_LEFT, + WALKING_DOWN, + WALKING_UP, + WALKING_RIGHT, + WALKING_LEFT, + HOE_DOWN, + HOE_UP, + HOE_RIGHT, + HOE_LEFT, + AXT_DOWN, + AXT_UP, + AXT_RIGHT, + AXT_LEFT, + CAN_DOWN, + CAN_UP, + CAN_RIGHT, + CAN_LEFT, +} PlayerAnimationState; + typedef struct { - PlayerState state; + SelectedTool selectedTool; Sprite sprite; Animation animation; Physics physics; } Player; -Player CreatePlayer(Texture2D texture, float frameWidth, int maxFrame, int framesSpeed, Vector2 startPosition, float rotation, float speed){ +Player CreatePlayer(PlayerAnimationState animState, SelectedTool selectedTool, Texture2D texture, float frameWidth, int maxFrame, int framesSpeed, Vector2 startPosition, float rotation, float speed){ return (Player){ + .selectedTool = selectedTool, .sprite = { .texture = texture, .frameSize = {frameWidth, frameWidth}, - .sourceRec = {0.0f,0.0f, frameWidth, frameWidth}, + .sourceRec = {0.0f, 0.0f, frameWidth, frameWidth}, .destRec = {0.0f, 0.0f, frameWidth, frameWidth}, .origin = {frameWidth / 2, frameWidth / 2}, .rotation = rotation, .color = WHITE }, .animation = { + .state = animState, .currentFrame = 0, .maxFrame = maxFrame, .framesCounter = 0, @@ -49,7 +76,24 @@ Player CreatePlayer(Texture2D texture, float frameWidth, int maxFrame, int frame }; } -void UpdatePlayerState(PlayerState *state, Vector2 *dir) { +void UpdatePlayerAnimationState(int *state, SelectedTool *selectedTool, Vector2 *dir) { + + if (IsKeyPressed(KEY_ZERO)){ + *selectedTool = NO_TOOL; + } + + if (IsKeyPressed(KEY_ONE)){ + *selectedTool = HOE; + } + + if (IsKeyPressed(KEY_TWO)){ + *selectedTool = AXT; + } + + if (IsKeyPressed(KEY_THREE)){ + *selectedTool = CAN; + } + if (dir->x == 0 && dir->y == 0) { switch (*state) { case WALKING_DOWN: *state = IDLE_DOWN; break; @@ -68,11 +112,11 @@ void UpdatePlayerState(PlayerState *state, Vector2 *dir) { void UpdatePlayer(Player* player){ Vector2 dir = GetDirectionVector(); - UpdatePlayerState(&player->state, &dir); + UpdatePlayerAnimationState(&player->animation.state, &player->selectedTool, &dir); UpdatePhysics(&player->physics, dir); UpdateSpriteDestRec(&player->sprite, &player->physics.position); UpdateAnimation(&player->animation, GetFrameTime()); - UpdateSpriteSourceRec(&player->sprite, &(Vector2){player->sprite.frameSize.x * player->state, player->sprite.frameSize.y * player->animation.currentFrame}); + UpdateSpriteSourceRec(&player->sprite, &(Vector2){player->sprite.frameSize.x * player->animation.currentFrame, player->sprite.frameSize.y * player->animation.state}); } #endif // PLAYER_H diff --git a/src/main.c b/src/main.c index 2babcb6..4543afb 100644 --- a/src/main.c +++ b/src/main.c @@ -12,6 +12,7 @@ typedef struct { State state; Display display; + Font font; LogoState logo; GameState game; MenuState menu; @@ -19,16 +20,25 @@ typedef struct { int main(void) { + Display display = { + .name = "The Last Hive", + .width = 1280, + .height = 720 + }; + + InitWindow(display.width, display.height, display.name); + InitAudioDevice(); + Application app; app.state.currentScreen = LOGO; app.state.running = true; app.state.gameStarted = false; - app.display.name = "The Last Hive"; - app.display.width = 1280; - app.display.height = 720; - - InitWindow(app.display.width, app.display.height, app.display.name); + app.display = display; + app.font = LoadFont("assets/SproutLandsUI/fonts/pixelFont-7-8x14-sproutLands.fnt"); + SetTextureFilter(app.font.texture, TEXTURE_FILTER_POINT); + SetTraceLogLevel(LOG_NONE); + InitLogo(&app.logo); InitMenu(&app.menu); InitGame(&app.game,&app.display); @@ -45,7 +55,7 @@ int main(void) case MENU: { UpdateMenu(&app.menu, &app.state); - RenderMenu(&app.menu); + RenderMenu(&app.menu, &app.font, app.display.name); }break; case GAMEPLAY: { @@ -56,6 +66,7 @@ int main(void) } } CleanupGame(&app.game); + UnloadFont(app.font); CloseWindow(); return 0; }