Commit graph

  • 102c8c36d5 BAD: This gets the animation to control the camera, but it's a quick hack to prove it works. Zed A. Shaw 2025-11-01 01:15:18 -04:00
  • cb58bdd955 Now can zoom in on the player when it's their turn. Zed A. Shaw 2025-10-31 14:06:40 -04:00
  • 740e1052fe Finally have the boss fight rendering into a render texture correctly. The 'flipped' problem was because I didn't call .display() in render. Zed A. Shaw 2025-10-31 12:50:20 -04:00
  • 82a38e5fa1 Now using the jankifier to process my images. Zed A. Shaw 2025-10-30 13:57:25 -04:00
  • 26d313269c Working on how to do an idle 'breathing' animation for sprites. Zed A. Shaw 2025-10-28 01:03:59 -04:00
  • 2ecd8528ea Can indicate that a animation is flipped, which will *-1 on the x. Zed A. Shaw 2025-10-27 23:54:31 -04:00
  • c4fcb41c34 Now have the ability to specify parameters needed. Zed A. Shaw 2025-10-27 23:01:48 -04:00
  • 949bbd4f15 Better easings and motion but I need better data. Zed A. Shaw 2025-10-27 22:22:57 -04:00
  • f8158a3ea9 Animated scenes can easily make floors that do things, floors with moving elements, but I need to improve the easing/motion parts of the animations. Zed A. Shaw 2025-10-24 00:24:29 -04:00
  • 2d836a9e2a The layout is now also coming from the bosses.json file so it's totally configured there. Zed A. Shaw 2025-10-23 23:11:48 -04:00
  • e5fa76b03c Floor is now just a fixture. Zed A. Shaw 2025-10-23 14:12:04 -04:00
  • 23f54bd4fe Now fixtures and actors are loaded the same. Zed A. Shaw 2025-10-23 13:48:58 -04:00
  • 4f39f2a504 Moved the animated scene into its own system for better development. Zed A. Shaw 2025-10-23 11:37:35 -04:00
  • 49c9702041 Cleaned up the arena code more and closer to pulling it out for a scene system. Zed A. Shaw 2025-10-23 00:29:15 -04:00
  • 25f7096489 AnimatedScene now defines how a scene with animated sprites and actors is structured and played. Zed A. Shaw 2025-10-22 00:11:36 -04:00
  • e1da089600 Now the rat king screams. Zed A. Shaw 2025-10-21 00:46:16 -04:00
  • 7c11ffa2af Now have animated torches that are defined from json, and smoother animations in the arena. Zed A. Shaw 2025-10-21 00:21:46 -04:00
  • 387d1a5bf5 Now have the ability to place animated fixtures anywhere and to flip them. Zed A. Shaw 2025-10-20 00:29:12 -04:00
  • e99c07b50c Add a couple of rats that help the rat king. Render them behind. Zed A. Shaw 2025-10-19 00:55:39 -04:00
  • 71e3c97cf0 Arena works better now and I can give a list of sprites to work as fixtures in a scene. Zed A. Shaw 2025-10-19 00:47:28 -04:00
  • 59ba73baa0 Mostly working torch sprites have taught me what I need for the animation system. Zed A. Shaw 2025-10-18 00:13:44 -04:00
  • a578c49a77 Basic arena working that lets me work on the boss fight system quicker. Zed A. Shaw 2025-10-16 12:00:33 -04:00
  • 7f10c5b3d7 New boss scene that's really just a pixelated photo bash done quickly. Zed A. Shaw 2025-10-12 14:05:30 -04:00
  • ca38b58450 Now the animations have sounds and using the rat king boss. Zed A. Shaw 2025-10-10 02:00:39 -04:00
  • 0930b05fc5 Some basic animations working but the loop in bad. Zed A. Shaw 2025-10-10 01:42:42 -04:00
  • c33f370572 Animations are now being pulled correctly but I need to add a timing concept to animations instead of ticks. Zed A. Shaw 2025-10-10 00:25:37 -04:00
  • 517de91a5b Quick code review to refresh my memory. Zed A. Shaw 2025-10-09 01:23:01 -04:00
  • ee9f8c7c4b Have the first little turn based system going. Zed A. Shaw 2025-10-07 23:07:12 -04:00
  • f33e14f2cf More on the boss fight sytem, just a basic FSM going. Zed A. Shaw 2025-10-07 12:47:47 -04:00
  • a0861a8f57 Make it possible to quit in the boss fight for faster dev. Zed A. Shaw 2025-09-29 14:04:54 -04:00
  • 61a40ae7cd Refactored boss fight to pull out the FSM code into boss::Fight. Zed A. Shaw 2025-09-29 13:19:59 -04:00
  • 3b11ed0a75 The FSM for boss fights is started. Zed A. Shaw 2025-09-27 14:35:24 -04:00
  • fdc0bcdb3b Capturing attack clicks so now just have to make my own FSM for the minigame. Zed A. Shaw 2025-09-27 14:10:25 -04:00
  • 231adb6335 Making the bossfight function by creating the FSM for it. Zed A. Shaw 2025-09-27 13:25:34 -04:00
  • 06a174040f The whole boss fight scene is now configurable with json. Zed A. Shaw 2025-09-27 11:58:44 -04:00
  • 06f6098281 Create the systems.cpp for the boss fight mini game. Zed A. Shaw 2025-09-25 11:40:09 -04:00
  • 27b71d4ba3 Small tweaks to make it easier to position. Zed A. Shaw 2025-09-24 14:48:08 -04:00
  • 8a828fbd31 Boss fight now reuses the combat_ui.cpp to do the combat panel, so next is making it work with the mechanics I want but no art. Zed A. Shaw 2025-09-24 14:22:24 -04:00
  • 6ec43026b6 Boss UI buttons in place and ready to work. Zed A. Shaw 2025-09-24 02:17:38 -04:00
  • d398b042a7 New bossfight layout with fake 'paper cutouts' to work out how the UI would work. Zed A. Shaw 2025-09-24 01:29:36 -04:00
  • a4fdfb779f Made textures fail harder when given bad config. Zed A. Shaw 2025-09-23 22:45:13 -04:00
  • 7cdd96ef73 A little bit of layout up and displaying to get started. Zed A. Shaw 2025-09-22 14:35:10 -04:00
  • 07e281d987 Have a basic understanding of what to do for the boss fight arena, but now want to start over fresh. Zed A. Shaw 2025-09-22 13:43:36 -04:00
  • e523aa8b02 Quick refactor of the config system to make it easier to refactor config.cpp/hpp later. Zed A. Shaw 2025-09-16 11:59:30 -04:00
  • 47f659ae8e bring back the shaders on the enemies too to show they got hit. Zed A. Shaw 2025-09-15 14:02:07 -04:00
  • d1f7337de4 Now have a fully painting/pixelated female hand for the actions. Zed A. Shaw 2025-09-15 13:26:18 -04:00
  • 7af264e147 Now have a fancy hand animation when you cast your rituals. Zed A. Shaw 2025-09-15 02:14:13 -04:00
  • ad3e580495 Animations are refactored to let me spawn in an 'attack animation' but I think the data model is wrong. Rather than spawning in an animation every time I can probably just make one, reposition it, then tell it to play. I'll have to try it. Zed A. Shaw 2025-09-12 11:56:11 -04:00
  • 8384b11993 Refactored the animation so I can normalize it to one api. Next is to create the concept of a temporary entity that represents a transitive effect. Zed A. Shaw 2025-09-11 14:18:52 -04:00
  • 0afaa20c1d Improved the code so it uses ai::EntityAI and it now will find healing when it gets low. Has a bug where it stalls when finding healing and gets into combat. Zed A. Shaw 2025-09-07 23:56:24 -04:00
  • 7207d53885 Autowalker now figures out there's an enemy near when first entering a level. Zed A. Shaw 2025-09-06 22:50:20 -04:00
  • ed33a36bca Autowalker now will grab healing when they need it and can grab it. Zed A. Shaw 2025-09-06 00:02:42 -04:00
  • 29ab9721af Now they AI will heal when they can, but not yet go get itesm before/during combat. Zed A. Shaw 2025-09-05 23:48:59 -04:00
  • a2192e25eb AI can now walk to where healing items are and pick them up to use. Zed A. Shaw 2025-09-05 23:20:45 -04:00
  • fe37aa11df Accidental crash when you click on an empty inventory. Zed A. Shaw 2025-09-05 11:56:36 -04:00
  • f03a3a31a8 Autowalker now walks more accurately to locations, fights enemies, and also picks up loot drops and healing items _only_. Zed A. Shaw 2025-09-04 23:40:36 -04:00
  • 40b2d7f45d Bring over various autowalker improvements. Zed A. Shaw 2025-09-04 12:23:43 -04:00
  • 9c5bad5959 This fixes the bug where you get 'stuck' while moving and passing an enemy. Need to sort out why this fixes it though. Closes #30. Zed A. Shaw 2025-09-04 11:48:12 -04:00
  • ba5fc73127 Disable collecting items for now. Zed A. Shaw 2025-09-04 11:46:51 -04:00
  • ca3b04b895 Invalid test, should be enemy. Zed A. Shaw 2025-09-03 11:28:29 -04:00
  • 0c8cb197c2 Fix the map opening and closing all the time. Zed A. Shaw 2025-09-02 13:56:19 -04:00
  • a11e7de14e Fix up the spatialmap to have an occupied_by method which checks if a square is occupied and returns what is there. Zed A. Shaw 2025-09-02 12:46:05 -04:00
  • 759f93cae0 Autowalker now correctly faces enemies to fight them. Zed A. Shaw 2025-09-02 11:31:01 -04:00
  • 9faad5f263 FINALLY figured out how to rotate to face a square, thanks to all the help from Twitch chat. I need to study Trig. Zed A. Shaw 2025-09-02 02:26:08 -04:00
  • d822cb3438 Have a way to detect the best rotation but it's still off a bit. Seems to choose wrong in simple situations. Look in System::shortest_rotate. Zed A. Shaw 2025-09-01 01:37:03 -04:00
  • f98cc543f6 Autowalker now paths reliably and can attack enemies by facing them. Just need to make it fight diagonally. Zed A. Shaw 2025-08-31 00:47:21 -04:00
  • 4365aa4bfc Now added a System::multi_path which can target to multiple entities. Zed A. Shaw 2025-08-31 00:39:35 -04:00
  • fc678c6b42 Pathing in either diagonal or simple motion works. Zed A. Shaw 2025-08-31 00:17:47 -04:00
  • e92fd2b6f3 Needed to rewrite the pathing to get this to work. I actually had been using a purposefully broken pathing algorithm from when I was making random maps. Zed A. Shaw 2025-08-30 10:48:52 -04:00
  • c894f6e094 Initial part of the rewrite for the autowalker to fix the pathing and aiming issues. Zed A. Shaw 2025-08-26 00:55:27 -04:00
  • 63eaea3536 rewrite game_level::player_position to be more efficient. Zed A. Shaw 2025-08-26 00:46:58 -04:00
  • 4a2d8770d9 Cleaned up how the camera is configured so that it can be easily queried in other parts like the autowalker. Zed A. Shaw 2025-08-25 23:23:05 -04:00
  • b4569622a0 Cleanup the autowalker for new work. Zed A. Shaw 2025-08-25 22:44:53 -04:00
  • 4bf9a9177f Made an AI debug view to I can make working on the AI easier. I might add the ability to toggle things on/off live to see what the AI does. Zed A. Shaw 2025-08-23 01:40:51 -04:00
  • fc8e65f4d6 Enemies how fight back when cornered, either by being blocked by another enemy or when at a dead end walls. Zed A. Shaw 2025-08-22 22:29:22 -04:00
  • 586343a614 Enemies will now fight back if they're cornered. Was actually way easier than I thought. Zed A. Shaw 2025-08-21 23:32:34 -04:00
  • 7ffa6025ce And finally fix some of the API names to make more sense in their current location. Zed A. Shaw 2025-08-20 23:49:30 -04:00
  • a20d701096 Rename to GameDB and GameDB::Level. Zed A. Shaw 2025-08-20 23:20:36 -04:00
  • c46927ea10 Now all of the old LevelManager code is gone. Next phase is to rename the Game:: to something better then test the shit out of it. Zed A. Shaw 2025-08-20 13:31:02 -04:00
  • a83ee77eea levelmanager.* is now gone, but the code is just moved over to game_level. Now to clean up the api and give it a new name. Zed A. Shaw 2025-08-20 01:10:42 -04:00
  • 5aca2fb56a Tests are now clean so next step is to officially nuke the level manager. Zed A. Shaw 2025-08-20 00:48:20 -04:00
  • 564f9842a2 All of the UIs should be cleared out, and that just leaves the tests. Zed A. Shaw 2025-08-19 23:58:42 -04:00
  • d5ff57e025 Now systems.cpp is disconnected from levelmanager. That leaves the GUIs and then to completely remove it and clean up the api. Zed A. Shaw 2025-08-19 11:05:32 -04:00
  • 81e25f73bb Next phase of the refactor is done. Now to replace everything in Systems. Zed A. Shaw 2025-08-19 01:07:28 -04:00
  • 644ff6edc0 Bad test that wasn't running. Zed A. Shaw 2025-08-18 23:55:14 -04:00
  • 097879440d Changed facts in DinkyECS to be a shared_ptr so that it is a singular data store instead of copied around. Closes #85. Zed A. Shaw 2025-08-18 02:17:04 -04:00
  • 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 -04:00
  • 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 -04:00
  • 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 -04:00
  • 20fa95bd93 Simple test to make sure world events actually loop. Closes #84. Zed A. Shaw 2025-08-17 10:18:06 -04:00
  • a86912705c Refactored the mouse handling to use the new guecss Modifiers system and improved Clickable. Zed A. Shaw 2025-08-14 14:10:28 -04:00
  • 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 -04:00
  • 42575ef1f5 Updated the lootable body asset. Zed A. Shaw 2025-08-13 11:43:05 -04:00
  • f19c1dbb20 Now you can heal yourself. Zed A. Shaw 2025-08-11 16:59:19 -04:00
  • e03a63f9fb A little bit of refactoring while thinking about the loot next. Zed A. Shaw 2025-08-10 12:42:28 -04:00
  • 48e28ee636 New dead_body_lootable sprite for dead things you can loot. Zed A. Shaw 2025-08-10 12:30:42 -04:00
  • b9209beddd Better error when you have duplicate map icons. Zed A. Shaw 2025-08-10 12:29:53 -04:00
  • 8594568ff4 Slight clean up. Zed A. Shaw 2025-08-10 12:29:24 -04:00
  • 521180b086 Refactor out the junk randomizer and put it in rituals where it belongs. Zed A. Shaw 2025-08-10 11:20:22 -04:00
  • 05d54ff661 Now also combat works no matter what's on the ground. Closes #81. Zed A. Shaw 2025-08-09 00:13:38 -04:00