Ive been trying to set up a proper new game system for some time now and finally managed to get a little bit work done on it. So far everything it does is - when the game starts and the main HUD panel is shown, it checks if the player has any primary statistics points available to spend and immediately shows the new game panel. After that simply checking if the player has spent all his available points in order to close the panel should be enough. This means you must load the first map each time when trying to start a new game and then building the character. I cant really say this should have any negative effects since other games have done this. Will have to set up the proper perks and how to actually modify the character stats corresponding to the window in the future.
I have made some modifications to the save system as well because the game will heavily rely on it. Most notable fix is that the actual item in a character's hand is not saved in the map anymore. The inventory remembers what items it has in each slots and creates them on load.
As i have previously said I am planning on using the save system in order to transition between maps. So when exiting a map, the map file will be saved and another saved map will be loaded. What i find very useful with this is that, in theory, all the items dropped on the ground should be available each time the map is loaded.
Bugfixes, ammo count, HUD
Some bugs were fixed, others were generated but currently the action point counter works as it should. I have also added an ammo counter next to the item selection control for the consumable items, so the user should know how many times an item can be used from now on
This week ive added two more base classes for the items: health and explosive; I dont know if any improvements should be made to the health item class (except differentiating the effect type and value wich i will probably do as arguments in the script file in the future) but the explosive still needs improvements. I have also added a window class which returns a TimeSpan value so the timer can be properly set.
That should conclude this weekend update. I also realize that these graphics may look badly or non professional but keep in mind im using paint and free resources from the tech demo and only prefer focusing on the actual code.