Commit graph

242 commits

Author SHA1 Message Date
Zed A. Shaw
1f7214fcd4 GUI now handles modals better and there's now a death screen that makes you exit. More to come. 2025-01-07 15:04:28 -05:00
Zed A. Shaw
6cabd62c7f There's a simple death screen now and you can exit. More work on what death means later. 2025-01-07 14:07:10 -05:00
Zed A. Shaw
f2864a62ee Game now loads random enemies and items into rooms but in rudimentary way. Need to now randomize more of it and make it more robust so only changing the .json is needed to get new effects and enemies. 2025-01-06 15:20:54 -05:00
Zed A. Shaw
31e5eb7fce Picking up gold doesn't add it to your inventory. 2025-01-06 12:52:46 -05:00
Zed A. Shaw
8e4add25a9 A little more cleanup and then removing any completed bug notes. 2025-01-05 15:20:20 -05:00
Zed A. Shaw
f35b74f335 Results of today's code review session. 2025-01-05 15:07:30 -05:00
Zed A. Shaw
14b3ea7676 Inventory system is mostly working and I can pick up everything and use it. 2025-01-04 13:32:26 -05:00
Zed A. Shaw
aaa6d9f9f3 Can display items picked up but man is this some garbage code. I need to rethink how inventory is stored so that it'll work with the Menu. 2025-01-03 21:09:42 -05:00
Zed A. Shaw
135d9a128b Basic inventory system working and can pick up items but needs to be reflected in the UI next. 2025-01-03 13:41:57 -05:00
Zed A. Shaw
d7353a02df Initial layout of an item inventory UI. 2025-01-01 19:21:30 -05:00
Zed A. Shaw
3d461bce6d Very simple items system to get into the inventory work. 2025-01-01 13:21:01 -05:00
Zed A. Shaw
1962b0c24e Started prototyping a viewport iterator but couldn't get it right so I'll test drive it next. 2025-01-01 10:09:18 -05:00
Zed A. Shaw
4cb41a61db Took the plunge and converted my 'shaperators' into templates so they'll work on any 'matrix-like' thing. 2024-12-31 08:13:20 -05:00
Zed A. Shaw
5adeb4e078 I think the actual map drawing is more of a view thing than in the system, so I've moved it to the MapViewUI out of system. 2024-12-31 06:18:25 -05:00
Zed A. Shaw
380e18b91a All of the GUI panels are now their own classes and pulled out of the main GUI so I can devise how they're managed. 2024-12-31 05:53:27 -05:00
Zed A. Shaw
941be008f8 Very jank but now I can set different panels as active and test for mouse events in them to enable mouse. This needs a big cleanup and probably some FSM love. 2024-12-30 20:20:17 -05:00
Zed A. Shaw
f0829bb9ea Starting a bit of refactoring to sort out how to handle the various UIs. 2024-12-30 16:33:56 -05:00
Zed A. Shaw
d8400d0a76 Tinkering with a way to do modal UIs for things like inventory etc. 2024-12-30 09:41:16 -05:00
Zed A. Shaw
db441000f8 Added in an initial test to blur the current screen for any pause actions, before doing a modal or new UI. 2024-12-29 06:53:08 -05:00
Zed A. Shaw
28d19d80a2 Fixed worldgen to only use tiles without collision in filling rooms, then a couple more changes to lighting so that if the light is <= 1 it just assumes the base light strength which ends up looking nicer and more like the kind of light I want. 2024-12-29 04:53:59 -05:00
Zed A. Shaw
59bbae0af0 Added a couple of test enemies to the game for the next stream. 2024-12-28 14:12:05 -05:00
Zed A. Shaw
8d661b785b World builder does a better job of placing entities in rooms and not walls. 2024-12-28 13:32:18 -05:00
Zed A. Shaw
03c5546cdf World builder now loads the tile map json and usese the keys to figure out how to randomize the floor configurations. 2024-12-28 13:25:23 -05:00
Zed A. Shaw
6b4bc6cc11 fixed the map generator doing paths that hit the edge which made it look like the map was out of bounds. 2024-12-28 12:37:19 -05:00
Zed A. Shaw
194cc6664b Lighting is working way better and now for world generation work. 2024-12-28 12:04:21 -05:00
Zed A. Shaw
9c03e850b5 Now have more fancy rooms with different floors to play with. 2024-12-27 12:52:23 -05:00
Zed A. Shaw
f46b5f15ef Lighting now uses pathing to determine where it can go, but _distance_ to determin strength. Looks way better. 2024-12-26 04:39:07 -05:00
Zed A. Shaw
31620adf7a Update to SFML 2.6.2 2024-12-26 04:38:39 -05:00
Zed A. Shaw
9ac8da30ea Circle adjusted to work better but now I think hirdrac was right that it's easier to just calculate a distance from center and use that to determine light levels rather than a whole dpath. 2024-12-25 06:03:11 -05:00
Zed A. Shaw
8a94108874 Entities now look like they stand on the tiles. 2024-12-25 01:29:03 -05:00
Zed A. Shaw
857cd2f910 Circle iterator now compensates for the matrix size and won't overflow. 2024-12-25 01:15:33 -05:00
Zed A. Shaw
35f2defc11 Better lighting and a circle algorithm that works more reliably. 2024-12-25 00:27:45 -05:00
Zed A. Shaw
03fe9b3d01 I can now create any tiles I want. First version is just one room will have a circular pool in it. 2024-12-24 03:26:06 -05:00
Zed A. Shaw
89e31279be Now have color and display char coming from assets/tiles.json but lighting still needs work. 2024-12-24 02:56:17 -05:00
Zed A. Shaw
7fe6ad174d Now have a configurable displayable tilemap to do better tiles. 2024-12-24 01:36:25 -05:00
Zed A. Shaw
b66a3154c7 Basic tile map implemented. 2024-12-20 19:39:11 -05:00
Zed A. Shaw
290affa49a Upgraded to the latest winlibs/gcc 14. 2024-12-20 16:53:03 -05:00
Zed A. Shaw
5a6494acf5 Fixing a stupid bug where it would crash because a fact wasn't in the world. 2024-12-19 20:46:47 -05:00
Zed A. Shaw
93f53d1714 Tests are failing but catch2 is too stupid to actually tell me where so here you go. Now if you hit L it'll turn the lights up to max and if you hit P it will show the pathing. 2024-12-19 20:04:10 -05:00
Zed A. Shaw
d916d1c383 A very jank circle algorithm that overdraws many of the lines but mostly works. 2024-12-19 19:02:27 -05:00
Zed A. Shaw
d4b6c35120 Working line iterator, and mostly working flood iterator that should be good enough for world gen. 2024-12-18 19:22:22 -05:00
Zed A. Shaw
1295e9631d A slightly working flood iterator and a working compass iterator. 2024-12-17 17:32:27 -05:00
Zed A. Shaw
043c0d91df Now using the box iterator everywhere I can before writing a flood iterator. 2024-12-16 01:17:11 -05:00
Zed A. Shaw
547be19e68 Lighting now uses the new box iterator, although it'll be replaced soon by the flood or random iterator. 2024-12-15 19:54:16 -05:00
Zed A. Shaw
70cd963e5c Iterators are now working far more reliably and have more extensive tests that randomize inputs and fuzz them to check they keep working. 2024-12-15 19:38:16 -05:00
Zed A. Shaw
8e470df554 A bit of late night work designing the little iterators. 2024-12-14 11:00:52 -05:00
Zed A. Shaw
da0b941dfd A first exploration of doing a matrix iterator. 2024-12-13 16:23:55 -05:00
Zed A. Shaw
ee1e2e5bc5 Started working on a random flood function for paths to do things like fill rooms with stuff. 2024-12-12 11:38:38 -05:00
Zed A. Shaw
e863bfa2fe Can now copy character codes. 2024-12-12 10:27:27 -05:00
Zed A. Shaw
ffc787df64 Designer is working great now, and this fixes a bunch of things about the mouse. 2024-12-12 10:14:43 -05:00