Ok, time for another update! Let's pick up from where we left off last time: the one tiny issue left in the system I titled the "level change engine".
So now I have a system which is built around the following elements: an array containing all the different area types/themes (A), a counter that keeps track of what theme we are currently on (B), and a counter that counts the number of completed areas on the current theme (C). When C reaches a certain value, we reset C back to zero, increment B and select a theme from A using B. This math is broken up by a special theme that I want to include in the game: dungeons.
What's so special about it?
Well, I want it to be special in a sense that it is not part of the normal theme rotation. I want it to be an area that in order to access it, you have to work for it. An area that contains harder enemies and better rewards. Sort of a "secret" area.
A dungeon entrance can be found in other, regular themes (the "overworld"). The entrance may be hidden or require some sort of an action before it opens. Once entered, the game will take you to the dungeons that you have to complete before returning to the overworld. Dungeons can also act as links between different places in the overworld as you are not necessarily returning to the theme you entered the dungeon from in the first place.
When you collect enough power coins and fill up the POWER meter to the max, a special power attack is performed. It either triggers right away when you collect the 5th coin, or when you hit an enemy with full power, or something else entirely. As you can see this is still in its early stages and I have to playtest to find out what works best, but I want the player to feel powerful. The game is POWER heroes after all!