During this week I have made a checkpoint manager class and checkpoint objects. When the player finish an enemy wave a checkpoint appears from the right side on the screen and drift past the player. When the player see this checkpoint (that will look like a bear holding a sign) they’ll know that they can jump to this point in the game through the level select screen.
I made some changes in the enemy manager class so that any observing instance can change the level file during run-time, hence made it possible to jump to any enemy wave. Previously we had every enemy wave stored in one level file. But had to change it because it is much easier to start at a specific wave when using separate files than looking for a position in one file
So this is how it’s supposed to work: When there are no alive enemies left from one file, the checkpoint manager spawn a checkpoint. When the player avatar passes the checkpoint it disappears and the next level file is loaded. This happens until the last wave and the last checkpoint triggers the enemy manager to spawn the boss. When the boss is defeated one last call to the checkpoint manager is done and the game state proceeds to the victory screen.
I don’t actually know if it work because I have just implemented it. But according to my calculations it should work. Maybe. There is some features that my version of the source code do not have and I have to implement it until I can make sure my checkpoint feature work like it should.
Since this is the last day our group can work on the project, I have been working hard on getting the last things that was left implemented. One of them was cave obstacle that would act as a tutorial region. Because the cave walls only bounces the player back, its only purpose is to teach the player about collision and how big the collision box is. By doing it this way the player don’t have to figure it out by colliding with the enemies later in the game.
After the player have passed the cave obstacle, it will also get a checkpoint so the player don’t have to player it again.
I’m going to get back to my coding so, have a good one ♥!