Commit Graph

  • 097879440d Changed facts in DinkyECS to be a shared_ptr so that it is a singular data store instead of copied around. Closes #85. master Zed A. Shaw 2025-08-18 02:17:04 -0400
  • b839fb6463 The problem was keeping a reference in a class/object means that it will not get updated copies when levelmanager makes a new level. Honestly that whole constelation of bullshit needs to die. Closes #62. Zed A. Shaw 2025-08-18 01:13:31 -0400
  • ae1a48deed Now I have a better error that's more exact, but I think next level of this is to just show a generic texture for missing ones. Closes #80. Zed A. Shaw 2025-08-17 11:08:01 -0400
  • 25a143cf22 Turns out I don't need to remove so much when I simply don't want to display something. Closes #82. Zed A. Shaw 2025-08-17 10:51:08 -0400
  • 20fa95bd93 Simple test to make sure world events actually loop. Closes #84. Zed A. Shaw 2025-08-17 10:18:06 -0400
  • a86912705c Refactored the mouse handling to use the new guecss Modifiers system and improved Clickable. Zed A. Shaw 2025-08-14 14:10:28 -0400
  • ad0069e899 Made it so you can right-click on an item to use it, but yeah it's bad. Gotta refactor. Zed A. Shaw 2025-08-13 11:43:23 -0400
  • 42575ef1f5 Updated the lootable body asset. Zed A. Shaw 2025-08-13 11:43:05 -0400
  • f19c1dbb20 Now you can heal yourself. Zed A. Shaw 2025-08-11 16:59:19 -0400
  • e03a63f9fb A little bit of refactoring while thinking about the loot next. Zed A. Shaw 2025-08-10 12:42:28 -0400
  • 48e28ee636 New dead_body_lootable sprite for dead things you can loot. Zed A. Shaw 2025-08-10 12:30:42 -0400
  • b9209beddd Better error when you have duplicate map icons. Zed A. Shaw 2025-08-10 12:29:53 -0400
  • 8594568ff4 Slight clean up. Zed A. Shaw 2025-08-10 12:29:24 -0400
  • 521180b086 Refactor out the junk randomizer and put it in rituals where it belongs. Zed A. Shaw 2025-08-10 11:20:22 -0400
  • 05d54ff661 Now also combat works no matter what's on the ground. Closes #81. Zed A. Shaw 2025-08-09 00:13:38 -0400
  • f84b63f0e6 The problem with picking up items under a dead body is fixed but now need to fix combat. Zed A. Shaw 2025-08-07 12:13:39 -0400
  • 97fe02d99d Add a new dead_body sprite for things that are dead but you can't loot them. Zed A. Shaw 2025-08-06 23:13:29 -0400
  • 0d889cd0ff Quick start to making it possible to use healing items, or any item really. Going with a style that it has to be on your toolbar to use it, and the toolbelt looks in your inventory to see ifyou have healing items. Zed A. Shaw 2025-08-06 13:16:22 -0400
  • b9656013b0 Now have dead bodies working but need art for it. Zed A. Shaw 2025-08-06 12:15:21 -0400
  • fc4eacadb0 There's now a Collision component that determines collision if its set. Closes #72. Zed A. Shaw 2025-08-06 11:43:39 -0400
  • 9bf6926dc3 A bit of optimization to keep from generating the sorted sprite list over and over. Also tried to solve the problem of tombstone covering everything but no luck. Zed A. Shaw 2025-08-03 23:58:59 -0400
  • 077f0e84ea Don't add wiggle to the things in the player's square since that moves them into the player eyes. Zed A. Shaw 2025-08-03 22:34:03 -0400
  • a4a4389281 Move amt's examples into scratchpad for later review. Zed A. Shaw 2025-08-03 22:33:29 -0400
  • 9c02fb846b Now the spatialmap determines the 'wiggle factor' when there's multiple entities in a cell, which staggers them visually. Closes #78. Zed A. Shaw 2025-08-03 01:56:34 -0400
  • 694ee210d6 Now floor drops always work by having a drop against a wall just drop at your feet. Closes #77. Zed A. Shaw 2025-08-02 23:26:42 -0400
  • 1788b8fb28 Now items drop where you aim, and won't let you drop on a floor. But maybe one more change. Zed A. Shaw 2025-08-02 23:11:59 -0400
  • 23ead1f0ca SpatialMap now has a full test suite and that helped find some bugs. Zed A. Shaw 2025-08-01 13:33:34 -0400
  • f26189c696 SpatialMap now uses unordered_multimap to allow for multiple items in a square, but they're also tagged to mark some with collision. Zed A. Shaw 2025-07-31 13:00:39 -0400
  • b193bab148 Add in the tests from finding the bug in spatial map. Zed A. Shaw 2025-07-31 00:03:36 -0400
  • 569d04725a This is the cause of the bug where going to the next level caused things to disappear. What happened is that on next level this code was adding the player but _not_ adding them to collision. Then when the player moved the spatialmap would remove them, see they're technically 'no collision' and then add them back in without collision. Zed A. Shaw 2025-07-31 00:03:13 -0400
  • e51fb8627c Switching to Linux to find a memory bug and I want to keep a record of what caused it. Zed A. Shaw 2025-07-30 22:34:26 -0400
  • be3eef7082 Make money. Zed A. Shaw 2025-07-30 11:52:12 -0400
  • d6326c9e41 Mostly working spatical map with 2 level collision/space structure. Not the best implementation but this is the idea. Zed A. Shaw 2025-07-29 03:12:44 -0400
  • fd53f92fe6 Prep for fixing the spatialmap to allow for entities without collision to still be in the space. Zed A. Shaw 2025-07-29 02:13:29 -0400
  • d93bc1615c Big changes to use the new lel-guecs setup but now almost everything works. Only thing missing is Issue #16 in quecs. Zed A. Shaw 2025-07-23 14:03:41 -0400
  • 86ddfc460f Update to the new lel-guecs with Icons and the ability to set a Sprite to stretch or not. Now Icons for loot pickup work perfectly, but need to be centered. Zed A. Shaw 2025-07-22 17:21:28 -0400
  • ff7111b006 Icons now work way better and don't have the the 'Rayview cuts icons' bug. It actually was a bug in the lel-guecs Sprite class that was using the TextureRect from the source sprite. Now its initialized with the framesize from the .json. This also uses the new guecs::Icon, but I have to fix that as it doesn't scale correctly. Closes #2. Zed A. Shaw 2025-07-22 15:03:37 -0400
  • b311713064 Quick prototype of how switch to an icon during pickup makes the rendering bug go away and also looks better visually. Zed A. Shaw 2025-07-22 01:08:48 -0400
  • 6f91533950 Fog of War now works fairly normally, but I think I'll have to do something so people don't live in the map. Probably something like hearing distance is increased because you're louder with a map out, and you can't see enemies on the map. Zed A. Shaw 2025-07-21 23:21:24 -0400
  • 2997dc363b FoW is now moved into lighting so light determines what's seen not player's last position. Not sure if I like that though. Zed A. Shaw 2025-07-21 13:10:03 -0400
  • d264760405 Fog of War works but it's in the wrong place and needs to be based on light. Zed A. Shaw 2025-07-20 01:34:39 -0400
  • 2802a44ba4 Clean up System::render_map. Zed A. Shaw 2025-07-18 13:25:32 -0400
  • aa72cfe4a4 Now have a working compass based directional player sprite in the map, but using the compass isn't going to work long term. Need to move that into the raycaster.cpp and get real degrees for facing direction. Zed A. Shaw 2025-07-18 13:09:53 -0400
  • 3b81959aa9 Map now displays way better. The paper is gone for now. Zed A. Shaw 2025-07-17 14:22:04 -0400
  • 973495b687 Map now has a color theme rather than random colors. Zed A. Shaw 2025-07-17 12:59:20 -0400
  • 379060b8c7 Can now set a color to another already existing color. Zed A. Shaw 2025-07-17 12:39:24 -0400
  • f4fa50a413 Colors are now being loaded from assets/palette.json Zed A. Shaw 2025-07-17 10:50:09 -0400
  • 48a7f72411 Now have a simple color palette system. Zed A. Shaw 2025-07-16 12:46:49 -0400
  • 0272ba8540 Trying a bit of color changes. Zed A. Shaw 2025-07-15 14:46:14 -0400
  • 75646619b3 Map now displays and works, just need to refine the colors and the compass directions. Zed A. Shaw 2025-07-15 13:28:23 -0400
  • dca38397e7 Systems::render_map now holds the logic to render the map, and it's working well enough to use for displaying. Zed A. Shaw 2025-07-15 11:39:05 -0400
  • 0d1eacdc5c Now entities are drawn after the map so that there's no holes. Zed A. Shaw 2025-07-12 14:46:42 -0400
  • 72ecca8c82 I can now draw a map and then render it with the sprites pretty easily. Problem currently is the entities replace their floor tiles so need to fix that. Zed A. Shaw 2025-07-12 13:34:31 -0400
  • a3f82139e9 One step closer to map rendering from tile sprites. Zed A. Shaw 2025-07-12 12:05:18 -0400
  • dd541ae59d Ripped out the string based map and created a Matrix map drawing function. Zed A. Shaw 2025-07-12 10:51:55 -0400
  • d9219a8c64 This cleans up how I'm rendering the map but there's no way I can render a large map like this. It'd be way too big. Zed A. Shaw 2025-07-12 00:35:57 -0400
  • 3b06105813 Map tiles are generating fine, and I can make a map, now to bring it into the game and see how it works. Zed A. Shaw 2025-07-11 22:38:08 -0400
  • 5db3d1a306 Tried out using the actual textures from the game but they don't really have the feel I want. I'll have to think about it. Zed A. Shaw 2025-07-11 02:24:47 -0400
  • 5e01eb29a9 There's a bug where the last item in tiles.json draws a black square, which is why I named ceiling_blue to zceiling_blue to temporarily solve it. Zed A. Shaw 2025-07-11 01:02:27 -0400
  • b2a6262964 Now have background color for the sprites used in the maps. Zed A. Shaw 2025-07-10 00:12:32 -0400
  • b16ca3fd65 I now have hacked in basic color for the wall tiles but not enemies and items. Zed A. Shaw 2025-07-09 14:36:31 -0400
  • b2d0b0ee4c Map tiles are now correctly sized and positioned. Errors from before were due to floating point being used for positioning. Zed A. Shaw 2025-07-09 13:34:18 -0400
  • 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. Zed A. Shaw 2025-07-09 01:54:49 -0400
  • cfefffe1cc I now can output a map_tiles.json that has all of the tiles in the tile sheet tagged by their display char and where they are. Zed A. Shaw 2025-07-09 00:34:50 -0400
  • 40611d4d54 Crop the map sprite so it's not bigger than necessary. Zed A. Shaw 2025-07-08 22:54:59 -0400
  • 04b3cf3f16 Now have a sprite sheet with tiles expanded to fill the cell, but other sprites reduced to 80% and centered in the cell. Zed A. Shaw 2025-07-08 13:26:43 -0400
  • d6e2b64140 icongen now makes a sprite sheet for the map which should be easier to work with. Zed A. Shaw 2025-07-08 13:09:39 -0400
  • dbc2000434 Started a map icon gen tool that will load the fonts and create tile sprites for everything I use. Zed A. Shaw 2025-07-08 00:55:45 -0400
  • 056b0b307b Implemented a little screenshot tool. Zed A. Shaw 2025-07-08 00:55:24 -0400
  • f64b202ee7 Finally have inventory not crashing for most edge cases. This solves many bugs but mostly closes #58. Zed A. Shaw 2025-07-07 13:25:17 -0400
  • 601f3331ed As an experiment, disable copy and move of the StatusUI. Zed A. Shaw 2025-07-06 23:59:06 -0400
  • cd89625c96 Just need one function for the 'hold_item' action. Zed A. Shaw 2025-07-06 23:35:17 -0400
  • 265e53e05a Simple fix, and honestly I should eliminate this whole thing and use one unified event system. Closes #1. Zed A. Shaw 2025-07-06 12:05:28 -0400
  • af3568154a Just had to grab the sprite, duh. Closes #3. Zed A. Shaw 2025-07-06 11:36:30 -0400
  • 1baf90a776 Easy fix, just set aiming_at in the camera position. Closes #57. Zed A. Shaw 2025-07-05 12:04:07 -0400
  • a26f0b0c0a Player's aim is now updated constantly as they move, just need to solve #57 to complete it. Closes #9. Zed A. Shaw 2025-07-05 11:18:26 -0400
  • 584c4e9f67 Make the AIM_CLICK handler in FSM properly deal with an item already there while looting or not. Closes #56. Zed A. Shaw 2025-07-03 22:26:06 -0400
  • 87e69bebde There was a memory corruption bug in remove() because I get a reference to the slot string, then remove it from by_entity, but that deletes the string so then later using it to remove by_slot silently fails because map.erase() silently fails. Closes. #54. Zed A. Shaw 2025-07-03 13:07:04 -0400
  • 970905fcd5 Make the player's inventory just a regular entity attached to the player.entity. Zed A. Shaw 2025-07-02 23:55:06 -0400
  • 2421a33bb0 Swapping and putting back now work in the status_ui inventory, but now I need to refactor so this operation works on any inventory::Model. Zed A. Shaw 2025-07-02 23:24:06 -0400
  • 784f753e72 Standardized on using only DinkyECS:Entity for most inventory:::Model operations, then create swap based on the same entities. Zed A. Shaw 2025-07-02 14:25:44 -0400
  • 8c8d6dc9e7 Clean things up before solving the move problem. Zed A. Shaw 2025-07-02 10:51:23 -0400
  • 6576164fad Give a healing potion too for testing. Zed A. Shaw 2025-07-02 10:49:05 -0400
  • b6d1ae2700 Move the management of the 'fake loose items container' into the loot_ui.cpp rather than get rid of it. Closes #34. Zed A. Shaw 2025-07-01 14:26:39 -0400
  • efdb0cb119 Just use get_if here instead. Zed A. Shaw 2025-07-01 14:26:01 -0400
  • 8bbafc4d10 Raycaster now keeps track of the square we are aimed but _does not_ know what is there, that's the job of other things like MainUI. Closes #50. Zed A. Shaw 2025-06-30 12:36:00 -0400
  • 0d79ce35b3 Every sprite's dimensions are now taken from their config rather than a global. Closes #42. Zed A. Shaw 2025-06-30 11:00:01 -0400
  • a418b48e94 Don't re-run the whole next level thing on every spawned item. Closes #48 Zed A. Shaw 2025-06-30 10:38:53 -0400
  • b28b76ee2d Ritual blanket now has its own internal id but I'm sort of thinking it needs to be more like inventory::Model. Closes #47. Zed A. Shaw 2025-06-30 10:15:22 -0400
  • cad51f4908 Use RGBA for the uint32_t color pixels. Closes #49. Zed A. Shaw 2025-06-29 11:53:17 -0400
  • ab1a415b55 Refactored the CameraLOL to be inside the rayview instead of a convolute main_ui->camera->rayview and back. Closes #16. Zed A. Shaw 2025-06-29 11:11:12 -0400
  • 75c28cd764 Fixed a few places. Closes #11 Zed A. Shaw 2025-06-28 23:30:41 -0400
  • b603ef5a3f Forgot to update the level in the RitualUI so nothing actually worked. Closes #41. Zed A. Shaw 2025-06-28 23:17:36 -0400
  • 6a0725e401 Simply re-init the overlay on new level. Closes #14. Zed A. Shaw 2025-06-28 22:39:46 -0400
  • 02c42eb042 System::distribute_loot now manages setting up loot junk and does a new entity instead of reusing old ones, that allows System::death to do a coorect world->destroy() on the dead thing. Closes #46. Zed A. Shaw 2025-06-28 13:19:07 -0400
  • 6437bd3b54 Now have a 'destroy' method that removes everything related to an entity. Closes #18. Zed A. Shaw 2025-06-28 12:47:17 -0400
  • 7602fb0b31 Not using Weapon anymore. Zed A. Shaw 2025-06-28 11:53:48 -0400
  • 57d69015c2 Renamed to random_walk since that's what it called. Closes #26. Zed A. Shaw 2025-06-28 11:38:06 -0400
  • 769530b45c Now standardized on GameConfig everywhere I can. Closes #28. Zed A. Shaw 2025-06-28 11:32:58 -0400
  • b0204772c7 Need to not transition out of END if the slot clicked is empty. Closes #45 Zed A. Shaw 2025-06-28 11:09:37 -0400