Porting my Diablo/RPG game to my game engine to hopefully tidy up development, and seperate basic functions from the game itself, to abstract them into two seperate pieces.
Finally got the hero moving again, and the screen scrolling, as well as the A* and collision working.
I added entities+ enemies, and going to work on re-adding items, inventory, equipping items, and finally NPC’s and quests again.
I’m trying to keep things from being too dependant on each other, but some things need to be. Since all entities are map objects, they need constant communication with the map, such as which tile they occupy, if the destination tile is clear, or what occupies it if it isn’t, ect.
Tomorrow I’ll have to start compartmentalizing classes so they can be more independent, and function (if possible) without their dependencies in tact- so that if I ever have to remove enemies, but jsut test the hero, he won’t be looking specifically for enemies…. But then again he does need this information if he will distinguish from one entity type to another- so again, problems with deciding where to compartmentalize objects.
I’ll at least get everything working that I had before, then start trying to plan out the best way to tear each system apart and break dependencies, so systems might be able to used on future games without as much work converting them to different object types.
I’m reading a good book “introduction to game development second edition” which seems very comprehensive. Goes into almost every aspect of game development, from business and professional standpoints to programming tidbits. Very good so far!