Commit graph

87 commits

Author SHA1 Message Date
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
Zed A. Shaw
33cd490ed3 Playing with maze gen again. 2025-05-20 03:19:58 -04:00
Zed A. Shaw
c97648ab3a Remove useless log messages and bring back the tests. 2025-05-19 11:40:56 -04:00
Zed A. Shaw
a0b785cb2a Hunt-and-kill algorithm rocks. It handles everything I need for map gen, including spawn points, room placement, and the maze like map. 2025-05-19 01:40:23 -04:00
Zed A. Shaw
7a0b2f988d Add a terrible maze generation algorithm to test if a maze style map looks/feels better. The walls are disabled so you can walk around. 2025-05-18 01:00:47 -04:00
Zed A. Shaw
74a8599977 Fully converted to using the lel-guecs library externally now. 2025-05-13 02:48:39 -04:00
Zed A. Shaw
2ceab51c40 A really shitty ritual crafting UI is working but needs a big reshape. 2025-04-29 23:59:40 -04:00
Zed A. Shaw
14619558fa Better UI for the ritual crafting that almost works, but need to get the selected items to move down. Might need some state machine love soon. 2025-04-28 13:21:10 -04:00
Zed A. Shaw
8aeac5397a Windows installer fix before 0.2 release. 2025-04-25 12:17:00 -04:00
Zed A. Shaw
e0d7744eeb Make file now detects windows or not and does the weird thing. 2025-04-25 01:48:40 -04:00
Zed A. Shaw
57e8774fad Make the make more linux friendly. 2025-04-25 00:17:24 -04:00
Zed A. Shaw
ebb69dd589 Rituals are now taken from the belt and shown in th combat_ui and in the system::combat. They aren't used in combat calcs yet though. 2025-04-24 13:43:57 -04:00
Zed A. Shaw
00c28f47eb Rituals are now being added a belt on the player in a temp function in LevelManager. 2025-04-24 12:27:29 -04:00
Zed A. Shaw
31b35b43eb Added the ritual belt first cut. 2025-04-24 03:06:31 -04:00
Zed A. Shaw
a342c53b02 RitualEngine now uses the crafting results to create a description of the ritual's combat in a RitualAction struct. 2025-04-24 01:15:49 -04:00
Zed A. Shaw
a5b8e411e3 I can now apply shaders to any GUI element, but I need a shader manager that will allow for hot reloading and tracking input/output variables. 2025-04-13 15:17:08 -04:00
Zed A. Shaw
1f90367f51 Initial battle engine is now integrated in the systems so now I can finally get the turn based combat to work the way I envision. 2025-04-06 00:45:51 -04:00
Zed A. Shaw
b832bbd78a Fixed how sprites/textures are loaded so tehy default to frame 0 of any multi-frame textures. 2025-04-05 17:17:26 -04:00
Zed A. Shaw
c014e65c13 Gave up on trying to get the GOAP algorithm to correctly apply the cost structure to competing choices, and instead I take the resulting action list and simply find the next best one based on cost. 2025-04-01 13:48:59 -04:00
Zed A. Shaw
52f45e1d45 Mostly fixed up but I have to figure out why cost on actions isn't changing the priority. 2025-03-31 13:51:27 -04:00
Zed A. Shaw
862d8b4d81 Now have a cycle and repeated action mitigation technique in the AI algorithm called 'delete shit you've seen'. 2025-03-31 11:27:48 -04:00
Zed A. Shaw
922fbeba0e AI now follows the A* algorithm more closely by using a separate priority queue from the open_set. 2025-03-30 12:37:34 -04:00
Zed A. Shaw
da273cbee6 Refactored rituals so they can be used in different situations. 2025-03-24 12:30:58 -04:00
Zed A. Shaw
6c9016eb0f After some prototyping I have what I think I want for the map. Just a simple piece of paper you take out that has the ASCII map on it. 2025-03-21 02:51:02 -04:00