Since this previous sprint went through the holidays I decided to extend it by two weeks to make up for it and add in the shrine. I managed to finished the controller input functionallity to work with all of the current UI elements however i'm still not really satisfied with the current UI systems and how I've architectured everything so I'm planning on fixing it all during a later sprint. Additionally I am trying something new this post and I'm adding in the pull requests/branch merges for each feature I worked on in the sprint. This way I can show off the code and have a bit more info on the technical side rather than just explaining what I worked on through text. Each link for the pull requests will be linked at the bottom of the post from now on.
Since the last post waas mainly about the controller input I'll mainly focus on the new shrine mechanic that I developed. The main goal of the mechanic is to provide players with a sense of progression throughouut the game where each fountian they complete allows them to unlock new areas with new herbs to discover. The current implementation has each shrine needed up to four different potions inserted into it's slots to become "active", healing the land and allowing the player to progress.
Similarly to the Cauldron UI the player needs to first select the potion they want to input into the shrine and then the spot in the shrine they want to put that potion into. The order of the potions does not matter and the shrine checks all of the slots to see if the correct potions are inserted. Currently, since there is only one potion implemented in the game, each of the four slots only has the same potion but the player wioll need four of the same potion to complete the shrine.
Since most of the major features are now implemented, I'm planning on creating a small game loop where the player collects one or two herbs, researches them, makes a potion, and then inserts it into the shrine. I imagine that this might take up more than one sprint so I'll plan for that. I can foresee a lot of bug fixes and small additions needed to be made in order to get this working properly.
Also, as recommended by others, I am planning on adding in the GitHub pull requests to these blog posts. Since there wasn't a ton of work done this past sprint on the programming side I am going to start implementing more of the code in the next post.