Commit graph

188 commits

Author SHA1 Message Date
Zed A. Shaw
9739441a9c Beginning state machine for controlling the boss fight UI is up. 2025-12-07 00:21:07 -05:00
Zed A. Shaw
1537a81aac Cleanup before refactoring the boss/fight.cpp code. 2025-12-05 12:02:57 -05:00
Zed A. Shaw
94b46a2f95 Fix up the main game based on arena changes. 2025-12-05 11:20:35 -05:00
Zed A. Shaw
f839edcd56 BattleEngine is now connected to the boss::UI so as you click it'll continually run the plan and figure out the AI actions. 2025-12-05 00:51:35 -05:00
Zed A. Shaw
a38bb5b691 Basic AP (Action Points) system tied to the AI actions, but there's no way to set 'has AP' for the AI? 2025-12-03 15:24:41 -05:00
Zed A. Shaw
c78b2ae75e Now have the basics of the turn based battle engine with AI rebellion working. 2025-12-01 00:14:08 -05:00
Zed A. Shaw
b48df3f4db Can now run the full AI for all combatants and then sort by the action costs to make the action queue. 2025-11-27 12:46:14 -05:00
Zed A. Shaw
5b57fb2033 Now have a simple camera system that I can configure in json for different motion effects. 2025-11-03 00:25:48 -05:00
Zed A. Shaw
d60e1af6df A bit of refactor to put apply in Animation where it belongs. 2025-11-01 11:13:12 -04:00
Zed A. Shaw
e5fa76b03c Floor is now just a fixture. 2025-10-23 14:12:04 -04:00
Zed A. Shaw
25f7096489 AnimatedScene now defines how a scene with animated sprites and actors is structured and played. 2025-10-22 00:11:36 -04:00
Zed A. Shaw
71e3c97cf0 Arena works better now and I can give a list of sprites to work as fixtures in a scene. 2025-10-19 00:47:28 -04:00
Zed A. Shaw
7f10c5b3d7 New boss scene that's really just a pixelated photo bash done quickly. 2025-10-12 14:05:30 -04:00
Zed A. Shaw
c33f370572 Animations are now being pulled correctly but I need to add a timing concept to animations instead of ticks. 2025-10-10 00:25:37 -04:00
Zed A. Shaw
06a174040f The whole boss fight scene is now configurable with json. 2025-09-27 11:58:44 -04:00
Zed A. Shaw
d398b042a7 New bossfight layout with fake 'paper cutouts' to work out how the UI would work. 2025-09-24 01:29:36 -04:00
Zed A. Shaw
07e281d987 Have a basic understanding of what to do for the boss fight arena, but now want to start over fresh. 2025-09-22 13:43:36 -04:00
Zed A. Shaw
e523aa8b02 Quick refactor of the config system to make it easier to refactor config.cpp/hpp later. 2025-09-16 11:59:30 -04:00
Zed A. Shaw
7af264e147 Now have a fancy hand animation when you cast your rituals. 2025-09-15 02:14:13 -04:00
Zed A. Shaw
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. 2025-09-12 11:56:11 -04:00
Zed A. Shaw
ca3b04b895 Invalid test, should be enemy. 2025-09-03 11:28:29 -04:00
Zed A. Shaw
0c8cb197c2 Fix the map opening and closing all the time. 2025-09-02 13:56:19 -04:00
Zed A. Shaw
a11e7de14e Fix up the spatialmap to have an occupied_by method which checks if a square is occupied and returns what is there. 2025-09-02 12:46:05 -04:00
Zed A. Shaw
9faad5f263 FINALLY figured out how to rotate to face a square, thanks to all the help from Twitch chat. I need to study Trig. 2025-09-02 02:26:08 -04:00
Zed A. Shaw
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. 2025-09-01 01:37:03 -04:00
Zed A. Shaw
4365aa4bfc Now added a System::multi_path which can target to multiple entities. 2025-08-31 00:39:35 -04:00
Zed A. Shaw
fc678c6b42 Pathing in either diagonal or simple motion works. 2025-08-31 00:17:47 -04:00
Zed A. Shaw
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. 2025-08-30 10:48:52 -04:00
Zed A. Shaw
7ffa6025ce And finally fix some of the API names to make more sense in their current location. 2025-08-20 23:49:30 -04:00
Zed A. Shaw
a20d701096 Rename to GameDB and GameDB::Level. 2025-08-20 23:20:36 -04:00
Zed A. Shaw
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. 2025-08-20 13:31:02 -04:00
Zed A. Shaw
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. 2025-08-20 01:10:42 -04:00
Zed A. Shaw
5aca2fb56a Tests are now clean so next step is to officially nuke the level manager. 2025-08-20 00:48:20 -04:00
Zed A. Shaw
564f9842a2 All of the UIs should be cleared out, and that just leaves the tests. 2025-08-19 23:58:42 -04:00
Zed A. Shaw
d5ff57e025 Now systems.cpp is disconnected from levelmanager. That leaves the GUIs and then to completely remove it and clean up the api. 2025-08-19 11:05:32 -04:00
Zed A. Shaw
644ff6edc0 Bad test that wasn't running. 2025-08-18 23:55:14 -04:00
Zed A. Shaw
20fa95bd93 Simple test to make sure world events actually loop. Closes #84. 2025-08-17 10:18:06 -04:00
Zed A. Shaw
05d54ff661 Now also combat works no matter what's on the ground. Closes #81. 2025-08-09 00:13:38 -04:00
Zed A. Shaw
f84b63f0e6 The problem with picking up items under a dead body is fixed but now need to fix combat. 2025-08-07 12:13:39 -04:00
Zed A. Shaw
97fe02d99d Add a new dead_body sprite for things that are dead but you can't loot them. 2025-08-06 23:13:29 -04:00
Zed A. Shaw
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. 2025-08-03 23:58:59 -04:00
Zed A. Shaw
9c02fb846b Now the spatialmap determines the 'wiggle factor' when there's multiple entities in a cell, which staggers them visually. Closes #78. 2025-08-03 01:56:34 -04:00
Zed A. Shaw
23ead1f0ca SpatialMap now has a full test suite and that helped find some bugs. 2025-08-01 13:33:34 -04:00
Zed A. Shaw
f26189c696 SpatialMap now uses unordered_multimap to allow for multiple items in a square, but they're also tagged to mark some with collision. 2025-07-31 13:00:39 -04:00
Zed A. Shaw
b193bab148 Add in the tests from finding the bug in spatial map. 2025-07-31 00:03:36 -04:00
Zed A. Shaw
d6326c9e41 Mostly working spatical map with 2 level collision/space structure. Not the best implementation but this is the idea. 2025-07-29 03:12:44 -04:00
Zed A. Shaw
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. 2025-07-22 15:04:22 -04:00
Zed A. Shaw
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. 2025-07-21 23:21:24 -04:00
Zed A. Shaw
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. 2025-07-21 13:10:03 -04:00
Zed A. Shaw
d264760405 Fog of War works but it's in the wrong place and needs to be based on light. 2025-07-20 01:34:39 -04:00