My plan and goal was to implement a few aspects of my game by the weekend and update the game files on itch.io.
-Consumables
-Inventory
-Balance damage
-Fix attack range
-Create two interactable objects
-Create secret zone for kicks and giggles
However, as I often do, I ran across a bug, and in the process of fixing it I realized two things. I had a bad case of speghetti code, and I had pre-optimized systems that were making it more difficult for me, example; behavior trees (my enemies are not yet complex enough to need one).
Alas, I could have fixed the bug and kept on, but I decided to see if I could simplify my code a bit to make it easier for me to follow.
In the process of rewritting my two primary systems, cell map generation and player movement, I managed to streamline thosee slightly, as well as adding in a simple visual debugger system to make it easier in the future.
Though the biggest victory was finally learning about _unhandled_inputs() and the benefits of using event.
I had a node that was creating speghetti code by continually casting a ray at mouse position and updating player with what was under the mouse, so that if the player clicked, the player would interact with that object...
It was a mess. I optimized by using a boolean to only allow casting the ray once when the mouse is clicked, rather then every physics frame like I was stupidly doing before. I also realized that my "player" node didn't need to know any of that information, and the node handling the ray casting could also just handle the information.
So, all in all I have probably eliminated 3 to 4 extra func, a few signals, a handful of var, and many lines of code.
I shall reimplement everything else now, while setting up StateMachine logic rather than BehaviorTrees.
Sorry for the long update, I hope it finds all you champs doing well, those of you who made it to the end that is.