Alright! I'm back on track at this point. The game-state concept is in full roll-out and working better than ever! See attached pics.
You have already seen what I am doing differently above, but there are some particulars I'll share. I have "game_state" which determines which sub-routines I'm running, but I also have "game_delay" which is used on some of the game states to literally delay going to the next state. This is useful for special task game states. For example, "shift cards upward" game state isn't something I'm going to stay in for long, but I want to wait for it to complete. Thing is, I'd rather use the game_delay whenever possible so that I that I have a universal method of calling for delays. The *only* time I'm using a different variable to check to move to another state is the walking effect, because it's variable and changes depending on which card is selected.
tl;dr I'm using a universal delay system alongside the game state to insure uniformity.
At this point I have only the "titles" left to implement from old code to new code. However, I am debating if I will even use them again! I have a lot of space in the bottom HUD, and it might be better putting info down there instead. Castlevania and even Kirby did something like that, where the enemy health bar was actually in the HUD space, not above the enemy's head or something (though for different purposes perhaps).
I spent a LOT of time this morning reorganizing my pattern tables. I really wanted it to look more organized, especially my sprites. What I have now is very beautiful on the backend, though you won't ever see that from the user side.
Next up is more attack animations, such as fire, electric, etc, but also healing effects. I need to eventually put in the health bar too, which I think I'm going to use a sprite along with the name table to get a cool 'seamless' effect. Then there are little things like *actually* shuffling the deck, enemy positions, and then the 'campsite' which is kind of like the main menu.
Thanks for the advice earlier, the results are very nice
Chad