“game” class generally handles the main loop and input. “player” handles stats, actions and effect that affect the player.
Most of what is in “player” right now will be slowly moved to “Character”, so that what is left is mostly UI.
This could be good, but it would require setting up a number of getters and setters, adding a system for pairing hardcoded effects with their functions (something like “iexamine_function_from_string”) and changing a lot of the code in hardcoded effects (as most of it assumes this == &g->u).
Not too hard, but that would still be quite a bit of work.