Commit graph

21 commits

Author SHA1 Message Date
Zed A. Shaw
c9425aebf9 Refined the FSM to allow easily passing in data to the even handler and state functions. 2024-09-16 07:50:04 -04:00
Zed A. Shaw
0aeb5b4ceb Make the FSM_STATE work better with optional loggins set by a define and standardize on using enum class by default. 2024-09-16 06:53:49 -04:00
Zed A. Shaw
0a9fa59365 The game engine now has two bonuses for long build streaks. +10% max hp or 1 free death. I'll be adding more but that's enough to work on the real UI. 2024-09-15 04:19:52 -04:00
Zed A. Shaw
07553400f5 Test suite now accurately runs the GameEngine FSM for multiple rounds. 2024-09-15 03:23:09 -04:00
Zed A. Shaw
4b2ed2951e Game engine now handles damage types but Ineed to refine the state machines so some of them can take additional data. 2024-09-12 01:25:23 -04:00
Zed A. Shaw
9e6c05eccd GameEngine is now a state machine so I can push its design further and keep it solid. 2024-09-12 00:34:41 -04:00
Zed A. Shaw
1c89afaee2 Setting up for a redesign of the engine to have the real game mechanics. Using the fsm.hpp code. 2024-09-11 00:18:32 -04:00
Zed A. Shaw
7c9bea81b2 The UI is _finally_ responsive while the builder runs. 2024-09-10 23:41:50 -04:00
Zed A. Shaw
fff182b457 Refactored out the main_loop so that it's not tightly coupled inside builder, and in the process found I was accidentally copying GUI and GameEngine because Builder wasn't using a &ref for them. Now they don't have a copy constructor to catch that. 2024-09-10 04:38:21 -04:00
Zed A. Shaw
453c50c563 Big cleanup of rampant using std. 2024-09-07 22:26:57 -04:00
Zed A. Shaw
fdb3f24377 Cleanup the engine since I won't do the brainfuck thing, then fix up the log a bit. 2024-09-02 16:13:21 -04:00
Zed A. Shaw
9a012813ae Game now keeps track of deaths, rounds, streaks and other fun stuff. You can also die finally. 2024-08-22 18:34:20 -04:00
Zed A. Shaw
c52bc8fafd Make the game engine use a start/end round and do healing if you don't make any mistakes. 2024-08-21 18:44:32 -04:00
Zed A. Shaw
e35536c7e3 More refactoring in prep for a real design. 2024-08-21 18:34:46 -04:00
Zed A. Shaw
ceba46c658 GUI is now in its own unit. 2024-08-20 18:02:46 -04:00
Zed A. Shaw
6d4aa9390a First kind of working FTXUI for the game. 2024-08-20 17:29:58 -04:00
Zed A. Shaw
9cc6724df8 Sort of working scrolling window thing. 2024-08-20 16:52:54 -04:00
Zed A. Shaw
4227ee1cdc Use an ostringstream for the output and make the test actually confirm the results. 2024-08-12 13:33:36 -04:00
Zed A. Shaw
38104f60f3 Looks like the brainfuck is working. It can do a hello world program. 2024-08-11 12:34:37 -04:00
Zed A. Shaw
1fb99618bf A simple brainfuck interpreter for the game's idea. 2024-08-10 03:21:11 -04:00
Zed A. Shaw
440be444ea Moved the game engine into its own unit and then made a failing test for it. 2024-08-09 23:01:06 -04:00