Commit graph

268 commits

Author SHA1 Message Date
Zed A. Shaw
fc61ef42ac Figured out the easiest way to set a panel to be centered, but a lot of these config things need to be unified and cleaned up. 2025-01-16 23:07:18 -05:00
Zed A. Shaw
269af02993 There's now a GUI that shows up when you interact with stairs down. 2025-01-16 15:33:24 -05:00
Zed A. Shaw
e63a8dd920 Using an event for the device interaction is better. If I get to where there's tons of devices then I'll rethink it but right now this is less convoluted. 2025-01-16 15:15:02 -05:00
Zed A. Shaw
8defc0bedf Initial idea for the interactive devices thing but I kind of hate it. Going to try another idea that will be simpler. 2025-01-16 14:33:07 -05:00
Zed A. Shaw
e30c18fbdf Fixed up the idea for having dynamic callbacks on devices. Might become the new way to do stuff but not sure. 2025-01-15 23:43:25 -05:00
Zed A. Shaw
d2162910f6 Implemented configurable randomization in the world builder, and then got the beginning of devices to work for the next part of going down a level through stairs. 2025-01-14 16:21:41 -05:00
Zed A. Shaw
7acbd0379f There's now a config to control the random world gen a bit. 2025-01-14 15:16:24 -05:00
Zed A. Shaw
b16405cfdc Better random entity placement and config of entities is now more generic. 2025-01-13 16:23:33 -05:00
Zed A. Shaw
641a405a06 Need a disclaimer on bugs. 2025-01-12 22:31:04 -05:00
Zed A. Shaw
86501f00f5 More burn. 2025-01-12 22:28:09 -05:00
Zed A. Shaw
27a603f0e1 Yes, feel the burn. 2025-01-12 22:14:04 -05:00
Zed A. Shaw
73b85e8057 Finally have a name for my little matrix shape iterator library. I present to you, the SHITErators. Are they THE shit? Shit? Or just Shite? 2025-01-12 20:01:54 -05:00
Zed A. Shaw
ffdea41faa Randomized rectangle placement without repetition works now. On to having multiple levels in the dungeon. 2025-01-12 15:59:16 -05:00
Zed A. Shaw
cb976a69a9 Map gen now works again and the enemy density is toned down. 2025-01-12 15:20:19 -05:00
Zed A. Shaw
e9277bf052 Mostly cleaned up world get to handle more rooms and paths, but rando_rect needs to be actually random. 2025-01-12 14:57:54 -05:00
Zed A. Shaw
c19c53b15b Meson update and gdb fix. 2025-01-11 15:07:53 -05:00
Zed A. Shaw
2b53363635 Fix up a few operator things in amit's code. 2025-01-11 15:07:25 -05:00
Zed A. Shaw
079734941c Amit's 1d->2d matrix that I can base a rewrite of mine on. 2025-01-11 14:47:05 -05:00
Zed A. Shaw
80ef052e15 Fixed a problem in the world builder after a refactor then made it do less random paths. 2025-01-10 21:36:14 -05:00
Zed A. Shaw
128fc4f540 Turned on all the warnings I could handle and made them into errors then fixed them all. Worldbuilder needs a refactor in random_path. 2025-01-10 15:22:37 -05:00
Zed A. Shaw
f3f875ee80 Initial changes to clean up the code. 2025-01-10 11:12:14 -05:00
Zed A. Shaw
8d3ccd935d Bringing in Amit's matrix for study and comparison. 2025-01-10 10:59:23 -05:00
Zed A. Shaw
ee304c30e3 Made a curative component really quick. 2025-01-09 14:38:07 -05:00
Zed A. Shaw
d6916b675e Enemies can be tagged as moving randomly, but it's very subtle. 2025-01-09 14:25:34 -05:00
Zed A. Shaw
222b39c403 Fixed up building enemies and items using componentsin the JSON. 2025-01-09 14:01:40 -05:00
Zed A. Shaw
9ce4fbd552 Reworked the way that entities are loaded so they're more dynamic and can be configured without modifying C++code. 2025-01-08 16:09:22 -05:00
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