Commit graph

110 commits

Author SHA1 Message Date
Zed A. Shaw
9001af214a Maze scripts now work reliably. 2026-03-13 10:41:42 -04:00
Zed A. Shaw
8090251a71 I can validate that a map is pathable, but can't fix it. 2026-03-10 00:42:58 -04:00
Zed A. Shaw
47c0d4a5f0 Initial fix for large center rooms not having entry exit. 2026-03-07 00:10:42 -05:00
Zed A. Shaw
403d2bd7ce Improved make money command. 2026-03-03 22:47:54 -05:00
Zed A. Shaw
0e8b661273 Figured out the crash, but want to see what valgrind would say. 2026-02-12 12:59:35 -05:00
Zed A. Shaw
0d481a5ab7 Animator won't crash anymore when there's an error, and instead displays an error message. 2026-02-07 13:05:24 -05:00
Zed A. Shaw
383f839fdf Update Makefile to do the new animator command line options. 2026-02-04 00:14:38 -05:00
Zed A. Shaw
bdfc2397e2 Fix up the animation test so that it works with random timings even if the example has a timing. 2026-02-03 11:17:36 -05:00
Zed A. Shaw
d4e79f1d3d Animation API getting better but now need to resolve how it works with the frames. 2026-01-30 23:26:35 -05:00
Zed A. Shaw
acadf3ca31 Started a TDD for the new animation system. 2026-01-15 14:06:30 -05:00
Zed A. Shaw
37b007d79c Fix a bug in palette that kept it from being idempotent. 2025-12-12 11:41:57 -05:00
Zed A. Shaw
986b2612d4 [BREAKING] Battle system now runs the turn based combat better, and lots of interesting things like if you don't choose an action the host AI rebels and does it for you. 2025-12-11 13:49:53 -05:00
Zed A. Shaw
9739441a9c Beginning state machine for controlling the boss fight UI is up. 2025-12-07 00:21:07 -05:00
Zed A. Shaw
94b46a2f95 Fix up the main game based on arena changes. 2025-12-05 11:20:35 -05:00
Zed A. Shaw
b48df3f4db Can now run the full AI for all combatants and then sort by the action costs to make the action queue. 2025-11-27 12:46:14 -05:00
Zed A. Shaw
4bda2ee01c Now have a simple storyboard system that can display an image and move with the camera to different cells. 2025-11-04 00:20:49 -05:00
Zed A. Shaw
25f7096489 AnimatedScene now defines how a scene with animated sprites and actors is structured and played. 2025-10-22 00:11:36 -04:00
Zed A. Shaw
e1da089600 Now the rat king screams. 2025-10-21 00:46:16 -04:00
Zed A. Shaw
a578c49a77 Basic arena working that lets me work on the boss fight system quicker. 2025-10-16 12:00:33 -04:00
Zed A. Shaw
d398b042a7 New bossfight layout with fake 'paper cutouts' to work out how the UI would work. 2025-09-24 01:29:36 -04:00
Zed A. Shaw
e523aa8b02 Quick refactor of the config system to make it easier to refactor config.cpp/hpp later. 2025-09-16 11:59:30 -04:00
Zed A. Shaw
0afaa20c1d Improved the code so it uses ai::EntityAI and it now will find healing when it gets low. Has a bug where it stalls when finding healing and gets into combat. 2025-09-07 23:56:24 -04:00
Zed A. Shaw
9faad5f263 FINALLY figured out how to rotate to face a square, thanks to all the help from Twitch chat. I need to study Trig. 2025-09-02 02:26:08 -04:00
Zed A. Shaw
d822cb3438 Have a way to detect the best rotation but it's still off a bit. Seems to choose wrong in simple situations. Look in System::shortest_rotate. 2025-09-01 01:37:03 -04:00
Zed A. Shaw
fc678c6b42 Pathing in either diagonal or simple motion works. 2025-08-31 00:17:47 -04:00
Zed A. Shaw
e92fd2b6f3 Needed to rewrite the pathing to get this to work. I actually had been using a purposefully broken pathing algorithm from when I was making random maps. 2025-08-30 10:48:52 -04:00
Zed A. Shaw
c46927ea10 Now all of the old LevelManager code is gone. Next phase is to rename the Game:: to something better then test the shit out of it. 2025-08-20 13:31:02 -04:00
Zed A. Shaw
644ff6edc0 Bad test that wasn't running. 2025-08-18 23:55:14 -04:00
Zed A. Shaw
05d54ff661 Now also combat works no matter what's on the ground. Closes #81. 2025-08-09 00:13:38 -04:00
Zed A. Shaw
f84b63f0e6 The problem with picking up items under a dead body is fixed but now need to fix combat. 2025-08-07 12:13:39 -04:00
Zed A. Shaw
97fe02d99d Add a new dead_body sprite for things that are dead but you can't loot them. 2025-08-06 23:13:29 -04:00
Zed A. Shaw
23ead1f0ca SpatialMap now has a full test suite and that helped find some bugs. 2025-08-01 13:33:34 -04:00
Zed A. Shaw
f26189c696 SpatialMap now uses unordered_multimap to allow for multiple items in a square, but they're also tagged to mark some with collision. 2025-07-31 13:00:39 -04:00
Zed A. Shaw
be3eef7082 Make money. 2025-07-30 11:52:12 -04:00
Zed A. Shaw
f4fa50a413 Colors are now being loaded from assets/palette.json 2025-07-17 10:50:09 -04:00
Zed A. Shaw
48a7f72411 Now have a simple color palette system. 2025-07-16 12:46:49 -04:00
Zed A. Shaw
b2d0b0ee4c Map tiles are now correctly sized and positioned. Errors from before were due to floating point being used for positioning. 2025-07-09 13:34:18 -04:00
Zed A. Shaw
2c011079a8 I have a test now that can generate a map image so I'll make it look nice there before bringing the code into the game. 2025-07-09 01:54:49 -04:00
Zed A. Shaw
d6e2b64140 icongen now makes a sprite sheet for the map which should be easier to work with. 2025-07-08 13:09:39 -04:00
Zed A. Shaw
a26f0b0c0a Player's aim is now updated constantly as they move, just need to solve #57 to complete it. Closes #9. 2025-07-05 11:18:26 -04:00
Zed A. Shaw
584c4e9f67 Make the AIM_CLICK handler in FSM properly deal with an item already there while looting or not. Closes #56. 2025-07-03 22:26:06 -04:00
Zed A. Shaw
19682fd0bc Add the frame width/height to SpriteTexture. Closes #13 2025-06-27 01:21:50 -04:00
Zed A. Shaw
a0eff927b6 Big BIG refactor to make inventory use a model that's placed into the world, following a more sane MVC style. 2025-06-20 13:17:12 -04:00
Zed A. Shaw
d99d9a68c8 Tried to use Ragel to create state machines but its lacking an incremental mode and doesn't do any logging of state activity so debugging is harder. Put it in scratchpad for reference though. 2025-06-14 12:34:27 -04:00
Zed A. Shaw
7fc32b0248 Trying out Ragel's state machine generation as an alternative to the DinkyFSM style. 2025-06-14 00:43:40 -04:00
Zed A. Shaw
c509162be1 The event router is working well and I can do drag-n-drop but I'll have to rethink where to use it. 2025-06-05 23:31:38 -04:00
Zed A. Shaw
0674908e49 Implemented an initial cut at the event router. Its job is to take the random events from SFML and translate them into nice clean orderly events to the Gui::FSM. 2025-06-04 12:19:24 -04:00
Zed A. Shaw
5c47a0151c Basic loot UI mostly working. Each time you open there's a torch and you can place it visually on any slot on your character. 2025-06-03 13:43:16 -04:00
Zed A. Shaw
4b34de2109 Initial loot UI works to load an item by its world entity ID. 2025-06-02 23:34:31 -04:00
Zed A. Shaw
9dcc2036aa Trying a new 'glowing moss' texture to sort out how to make the raycaster alter the light of a surface that has its own light. 2025-05-24 00:47:44 -04:00