chickensoft-games / GameDemo

The Chickensoft Game Demo — a fully tested, third-person 3D game built with Godot and C#. Now with saving and loading!
https://chickensoft.games
MIT License
337 stars 23 forks source link

refactor: detangle application and game state #7

Closed jolexxa closed 9 months ago

jolexxa commented 9 months ago

When I was working on this, I made a mistake. The overall application state ended up being concerned with the state of the game, which was poor state design on my part.

This fixes that. Visually speaking, the refactor was quite interesting (check out the diff of the state diagrams).

This is a rather large refactor, pretty much the whole project. I've learned some valuable lessons about designing app/menu states! Fortunately, LogicBlocks made the refactor pretty friendly since I could see the changes as I went.