Commit graph

273 commits

Author SHA1 Message Date
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
Zed A. Shaw
f05f652c26 Fixed the overflows and make the render handle SFML's weird window coordinates not matching world coordinates. 2024-12-11 16:57:18 -05:00
Zed A. Shaw
cb2e766305 Merge in changes from OSX. 2024-12-11 12:00:15 -05:00
Zed A. Shaw
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. 2024-12-11 11:56:37 -05:00
Zed A. Shaw
9ab064126f Before freetype2 use to iterate through the font's glyphs diretly. 2024-12-09 08:25:16 -05:00
Zed A. Shaw
3de70f71f3 Fix for OSX build. 2024-12-08 13:18:09 -05:00
Zed A. Shaw
c483649e20 Can actually use it to find glyphs now. 2024-12-08 10:43:47 -05:00
Zed A. Shaw
0edd948101 A barely working tool to find font characters and pick their color. 2024-12-07 13:42:30 -05:00
Zed A. Shaw
6b3ce5eb3d Fixed a bunch of random little bugs everywhere. 2024-12-05 10:38:25 -05:00
Zed A. Shaw
f946d46936 Fix up the gitignor and bring in the ragel manual for safe keeping. 2024-12-05 09:36:20 -05:00
Zed A. Shaw
2f8c9bd1a9 Change the color namespace to ColorValue. Need to come up with the organizational theme for the code. 2024-12-05 09:24:56 -05:00
Zed A. Shaw
56b26e1c4a Matrix now just does the dumping but I need to make this more formal I think. 2024-12-05 09:17:30 -05:00
Zed A. Shaw
eb0ca38e30 Removed the variable limit setting since it's never used and instead just have WALL_PATH_LIMIT. 2024-12-05 08:41:10 -05:00
Zed A. Shaw
9abb39a3bf Did a full code review to identify things to fix and either fixed them or noted BUG where I should come back. 2024-12-04 21:43:59 -05:00
Zed A. Shaw
ae43dad499 Minor fixes to make initializing the terminal more consistent and to remove a magic number for wall limits. 2024-12-04 08:19:04 -05:00
Zed A. Shaw
2d5490131d Merge branch 'main' of git.learnjsthehardway.com:learn-code-the-hard-way/roguish 2024-12-03 19:32:26 -05:00
Zed A. Shaw
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. 2024-12-03 19:17:20 -05:00
Zed A. Shaw
381b82ee4e Small fix to build on non-windows platforms. 2024-12-03 06:08:25 -05:00
Zed A. Shaw
c7607533ce A bit of a quick test for the GUI system, but not sure how to make this do more. 2024-12-02 17:02:59 -05:00
Zed A. Shaw
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. 2024-12-02 10:57:02 -05:00