Commit Graph

  • 18a5f6bfa9 Setup for the LevelManager to take charge of all level operations. main Zed A. Shaw 2025-01-20 15:12:31 -0500
  • 193f5f915e Start the level manager for tomorrow. Zed A. Shaw 2025-01-18 21:05:19 -0500
  • 3a16595ca7 A few small changes so that the player's lightsource is just like any other entity lightsource components. Zed A. Shaw 2025-01-18 14:44:46 -0500
  • 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. Zed A. Shaw 2025-01-16 23:07:18 -0500
  • 269af02993 There's now a GUI that shows up when you interact with stairs down. Zed A. Shaw 2025-01-16 15:33:24 -0500
  • 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. Zed A. Shaw 2025-01-16 15:15:02 -0500
  • 8defc0bedf Initial idea for the interactive devices thing but I kind of hate it. Going to try another idea that will be simpler. Zed A. Shaw 2025-01-16 14:33:07 -0500
  • e30c18fbdf Fixed up the idea for having dynamic callbacks on devices. Might become the new way to do stuff but not sure. Zed A. Shaw 2025-01-15 23:43:25 -0500
  • 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. Zed A. Shaw 2025-01-14 16:21:41 -0500
  • 7acbd0379f There's now a config to control the random world gen a bit. Zed A. Shaw 2025-01-14 15:16:24 -0500
  • b16405cfdc Better random entity placement and config of entities is now more generic. Zed A. Shaw 2025-01-13 16:23:33 -0500
  • 641a405a06 Need a disclaimer on bugs. Zed A. Shaw 2025-01-12 22:31:04 -0500
  • 86501f00f5 More burn. Zed A. Shaw 2025-01-12 22:28:09 -0500
  • 27a603f0e1 Yes, feel the burn. Zed A. Shaw 2025-01-12 22:14:04 -0500
  • 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? Zed A. Shaw 2025-01-12 20:01:54 -0500
  • ffdea41faa Randomized rectangle placement without repetition works now. On to having multiple levels in the dungeon. Zed A. Shaw 2025-01-12 15:59:16 -0500
  • cb976a69a9 Map gen now works again and the enemy density is toned down. Zed A. Shaw 2025-01-12 15:20:19 -0500
  • e9277bf052 Mostly cleaned up world get to handle more rooms and paths, but rando_rect needs to be actually random. Zed A. Shaw 2025-01-12 14:57:54 -0500
  • c19c53b15b Meson update and gdb fix. Zed A. Shaw 2025-01-11 15:07:53 -0500
  • 2b53363635 Fix up a few operator things in amit's code. Zed A. Shaw 2025-01-11 15:07:25 -0500
  • 079734941c Amit's 1d->2d matrix that I can base a rewrite of mine on. Zed A. Shaw 2025-01-11 14:47:05 -0500
  • 80ef052e15 Fixed a problem in the world builder after a refactor then made it do less random paths. Zed A. Shaw 2025-01-10 21:36:14 -0500
  • 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. Zed A. Shaw 2025-01-10 15:22:37 -0500
  • f3f875ee80 Initial changes to clean up the code. Zed A. Shaw 2025-01-10 11:12:14 -0500
  • 8d3ccd935d Bringing in Amit's matrix for study and comparison. Zed A. Shaw 2025-01-10 10:59:23 -0500
  • ee304c30e3 Made a curative component really quick. Zed A. Shaw 2025-01-09 14:38:07 -0500
  • d6916b675e Enemies can be tagged as moving randomly, but it's very subtle. Zed A. Shaw 2025-01-09 14:25:34 -0500
  • 222b39c403 Fixed up building enemies and items using componentsin the JSON. Zed A. Shaw 2025-01-09 14:01:40 -0500
  • 9ce4fbd552 Reworked the way that entities are loaded so they're more dynamic and can be configured without modifying C++code. Zed A. Shaw 2025-01-08 16:09:22 -0500
  • 1f7214fcd4 GUI now handles modals better and there's now a death screen that makes you exit. More to come. Zed A. Shaw 2025-01-07 15:04:28 -0500
  • 6cabd62c7f There's a simple death screen now and you can exit. More work on what death means later. Zed A. Shaw 2025-01-07 14:07:10 -0500
  • 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. Zed A. Shaw 2025-01-06 15:20:54 -0500
  • 31e5eb7fce Picking up gold doesn't add it to your inventory. Zed A. Shaw 2025-01-06 12:52:46 -0500
  • 8e4add25a9 A little more cleanup and then removing any completed bug notes. Zed A. Shaw 2025-01-05 15:20:20 -0500
  • f35b74f335 Results of today's code review session. Zed A. Shaw 2025-01-05 15:07:30 -0500
  • 14b3ea7676 Inventory system is mostly working and I can pick up everything and use it. Zed A. Shaw 2025-01-04 13:32:26 -0500
  • 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. Zed A. Shaw 2025-01-03 21:09:42 -0500
  • 135d9a128b Basic inventory system working and can pick up items but needs to be reflected in the UI next. Zed A. Shaw 2025-01-03 13:41:57 -0500
  • d7353a02df Initial layout of an item inventory UI. Zed A. Shaw 2025-01-01 19:21:30 -0500
  • 3d461bce6d Very simple items system to get into the inventory work. Zed A. Shaw 2025-01-01 13:21:01 -0500
  • 1962b0c24e Started prototyping a viewport iterator but couldn't get it right so I'll test drive it next. Zed A. Shaw 2025-01-01 10:09:18 -0500
  • 4cb41a61db Took the plunge and converted my 'shaperators' into templates so they'll work on any 'matrix-like' thing. Zed A. Shaw 2024-12-31 08:13:20 -0500
  • 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. Zed A. Shaw 2024-12-31 06:18:25 -0500
  • 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. Zed A. Shaw 2024-12-31 05:53:27 -0500
  • 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. Zed A. Shaw 2024-12-30 20:20:17 -0500
  • f0829bb9ea Starting a bit of refactoring to sort out how to handle the various UIs. Zed A. Shaw 2024-12-30 16:33:56 -0500
  • d8400d0a76 Tinkering with a way to do modal UIs for things like inventory etc. Zed A. Shaw 2024-12-30 09:41:16 -0500
  • db441000f8 Added in an initial test to blur the current screen for any pause actions, before doing a modal or new UI. Zed A. Shaw 2024-12-29 06:53:08 -0500
  • 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. Zed A. Shaw 2024-12-29 04:53:59 -0500
  • 59bbae0af0 Added a couple of test enemies to the game for the next stream. Zed A. Shaw 2024-12-28 14:12:05 -0500
  • 8d661b785b World builder does a better job of placing entities in rooms and not walls. Zed A. Shaw 2024-12-28 13:32:18 -0500
  • 03c5546cdf World builder now loads the tile map json and usese the keys to figure out how to randomize the floor configurations. Zed A. Shaw 2024-12-28 13:25:23 -0500
  • 6b4bc6cc11 fixed the map generator doing paths that hit the edge which made it look like the map was out of bounds. Zed A. Shaw 2024-12-28 12:37:19 -0500
  • 194cc6664b Lighting is working way better and now for world generation work. Zed A. Shaw 2024-12-28 12:04:21 -0500
  • 9c03e850b5 Now have more fancy rooms with different floors to play with. Zed A. Shaw 2024-12-27 12:52:23 -0500
  • f46b5f15ef Lighting now uses pathing to determine where it can go, but _distance_ to determin strength. Looks way better. Zed A. Shaw 2024-12-26 04:39:07 -0500
  • 31620adf7a Update to SFML 2.6.2 Zed A. Shaw 2024-12-26 04:38:39 -0500
  • 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. Zed A. Shaw 2024-12-25 06:03:11 -0500
  • 8a94108874 Entities now look like they stand on the tiles. Zed A. Shaw 2024-12-25 01:29:03 -0500
  • 857cd2f910 Circle iterator now compensates for the matrix size and won't overflow. Zed A. Shaw 2024-12-25 01:15:33 -0500
  • 35f2defc11 Better lighting and a circle algorithm that works more reliably. Zed A. Shaw 2024-12-25 00:27:45 -0500
  • 03fe9b3d01 I can now create any tiles I want. First version is just one room will have a circular pool in it. Zed A. Shaw 2024-12-24 03:26:06 -0500
  • 89e31279be Now have color and display char coming from assets/tiles.json but lighting still needs work. Zed A. Shaw 2024-12-24 02:56:17 -0500
  • 7fe6ad174d Now have a configurable displayable tilemap to do better tiles. Zed A. Shaw 2024-12-24 01:36:25 -0500
  • b66a3154c7 Basic tile map implemented. Zed A. Shaw 2024-12-20 19:39:11 -0500
  • 290affa49a Upgraded to the latest winlibs/gcc 14. Zed A. Shaw 2024-12-20 16:53:03 -0500
  • 5a6494acf5 Fixing a stupid bug where it would crash because a fact wasn't in the world. Zed A. Shaw 2024-12-19 20:46:47 -0500
  • 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. Zed A. Shaw 2024-12-19 20:04:10 -0500
  • d916d1c383 A very jank circle algorithm that overdraws many of the lines but mostly works. Zed A. Shaw 2024-12-19 19:02:27 -0500
  • d4b6c35120 Working line iterator, and mostly working flood iterator that should be good enough for world gen. Zed A. Shaw 2024-12-18 19:22:22 -0500
  • 1295e9631d A slightly working flood iterator and a working compass iterator. Zed A. Shaw 2024-12-17 17:32:27 -0500
  • 043c0d91df Now using the box iterator everywhere I can before writing a flood iterator. Zed A. Shaw 2024-12-16 01:17:11 -0500
  • 547be19e68 Lighting now uses the new box iterator, although it'll be replaced soon by the flood or random iterator. Zed A. Shaw 2024-12-15 19:54:16 -0500
  • 70cd963e5c Iterators are now working far more reliably and have more extensive tests that randomize inputs and fuzz them to check they keep working. Zed A. Shaw 2024-12-15 19:38:16 -0500
  • 8e470df554 A bit of late night work designing the little iterators. Zed A. Shaw 2024-12-14 11:00:52 -0500
  • da0b941dfd A first exploration of doing a matrix iterator. Zed A. Shaw 2024-12-13 16:23:55 -0500
  • ee1e2e5bc5 Started working on a random flood function for paths to do things like fill rooms with stuff. Zed A. Shaw 2024-12-12 11:38:38 -0500
  • e863bfa2fe Can now copy character codes. Zed A. Shaw 2024-12-12 10:27:27 -0500
  • ffc787df64 Designer is working great now, and this fixes a bunch of things about the mouse. Zed A. Shaw 2024-12-12 10:14:43 -0500
  • f05f652c26 Fixed the overflows and make the render handle SFML's weird window coordinates not matching world coordinates. Zed A. Shaw 2024-12-11 16:57:18 -0500
  • cb2e766305 Merge in changes from OSX. Zed A. Shaw 2024-12-11 12:00:15 -0500
  • a9e25668fb Rought font extractor that probably has a memory error causing it to behave mysteriously, and the designer now uses a json file of the characters that will work. Zed A. Shaw 2024-12-11 11:56:37 -0500
  • 9ab064126f Before freetype2 use to iterate through the font's glyphs diretly. Zed A. Shaw 2024-12-09 08:25:16 -0500
  • 3de70f71f3 Fix for OSX build. Zed A. Shaw 2024-12-08 13:18:09 -0500
  • c483649e20 Can actually use it to find glyphs now. Zed A. Shaw 2024-12-08 10:43:47 -0500
  • 0edd948101 A barely working tool to find font characters and pick their color. Zed A. Shaw 2024-12-07 13:42:30 -0500
  • 6b3ce5eb3d Fixed a bunch of random little bugs everywhere. Zed A. Shaw 2024-12-05 10:38:25 -0500
  • f946d46936 Fix up the gitignor and bring in the ragel manual for safe keeping. Zed A. Shaw 2024-12-05 09:36:20 -0500
  • 2f8c9bd1a9 Change the color namespace to ColorValue. Need to come up with the organizational theme for the code. Zed A. Shaw 2024-12-05 09:24:56 -0500
  • 56b26e1c4a Matrix now just does the dumping but I need to make this more formal I think. Zed A. Shaw 2024-12-05 09:17:30 -0500
  • eb0ca38e30 Removed the variable limit setting since it's never used and instead just have WALL_PATH_LIMIT. Zed A. Shaw 2024-12-05 08:41:10 -0500
  • 9abb39a3bf Did a full code review to identify things to fix and either fixed them or noted BUG where I should come back. Zed A. Shaw 2024-12-04 21:43:59 -0500
  • ae43dad499 Minor fixes to make initializing the terminal more consistent and to remove a magic number for wall limits. Zed A. Shaw 2024-12-04 08:19:04 -0500
  • 2d5490131d Merge branch 'main' of git.learnjsthehardway.com:learn-code-the-hard-way/roguish Zed A. Shaw 2024-12-03 19:32:26 -0500
  • 0b4392dbcc Vast improvement in the world generation, with more reliable pathing, cleaner generation code, and an ability to do a random or direct walk to create paths. This also works with enemies if I want. Zed A. Shaw 2024-12-03 19:17:20 -0500
  • 381b82ee4e Small fix to build on non-windows platforms. Zed A. Shaw 2024-12-03 06:08:25 -0500
  • c7607533ce A bit of a quick test for the GUI system, but not sure how to make this do more. Zed A. Shaw 2024-12-02 17:02:59 -0500
  • 48df9248b2 Testing is almost complete, but now I'm in the area where it's a lot of interaction and probably need mocks or a way to inject keys to the gui. Zed A. Shaw 2024-12-02 10:57:02 -0500
  • 2576b16869 Test coverage back and save system should work again but have to confirm it in-game. Zed A. Shaw 2024-12-02 09:58:54 -0500
  • 6b4ebf7629 More complete readme but need a screenshot. Zed A. Shaw 2024-12-02 08:37:52 -0500