Commit graph

39 commits

Author SHA1 Message Date
Zed A. Shaw
0e79288afc More notes on the next things to do. 2024-11-07 02:06:22 -05:00
Zed A. Shaw
011fee4872 A little bit nicer but ultimately the way the system talks to the GUI needs a redesign to be more 'coarse grain' 2024-11-07 01:00:17 -05:00
Zed A. Shaw
99d56b246c Looks like this is _possibly_ working but the last step of actually loading a save needs to be figured out. 2024-11-06 07:18:59 -05:00
Zed A. Shaw
da63f006c2 Config and save system almost there. 2024-11-05 21:33:28 -05:00
Zed A. Shaw
d113dba42f Almost working save sytem but the data I store is totally wrong. I need to also save the entity IDs being used and map them to the components. 2024-11-05 02:38:36 -05:00
Zed A. Shaw
707e9e3d6e Have to force the terminal detected by FTXUI to use full color no matter what it detects in the actual terminal. 2024-11-03 00:16:52 -04:00
Zed A. Shaw
35ef1e786d A bit more cleanup before I redesign the renderer. 2024-10-30 19:06:51 -04:00
Zed A. Shaw
9397af2a11 Rendering code stripped out of the GUI code. 2024-10-30 18:54:51 -04:00
Zed A. Shaw
009b1e63a7 More refactoring to get the GUI dumber. 2024-10-30 02:13:31 -04:00
Zed A. Shaw
2fdbd63f4c Cleaning up and sorting out how to use the new events best. 2024-10-29 23:39:03 -04:00
Zed A. Shaw
04350cb51e GUI is now decoupled from the ECS using the new DinkyECS event queues. That makes it easier to update and change the GUI without having to constantly alter the systems. 2024-10-29 18:33:11 -04:00
Zed A. Shaw
143fe7784c Clean up the DinkyECSso that it's easier to understand and more obvious what a fact vs. component is. 2024-10-29 07:33:00 -04:00
Zed A. Shaw
4ed06b10b1 Need the hit.wav to be mono, but now we have a sound we can move around, just not sure how to place it based on the visuals. 2024-10-28 19:46:55 -04:00
Zed A. Shaw
9102bdc8ad Created a combat system to start with and also added a 'HEARING' mechanic where enemies can hear you from a certain distance before moving to you. 2024-10-27 18:44:54 -04:00
Zed A. Shaw
4162287841 Implement a simple combat system and killing off enemies. See status for next steps. 2024-10-26 20:29:55 -04:00
Zed A. Shaw
5a123ae74c Refactor some code to have better naming and move Point and related point things into their own .hpp. 2024-10-26 18:26:42 -04:00
Zed A. Shaw
ec1ed23c52 Now using a simple collision map to track entities and then determine if they're near the player for attacking. 2024-10-26 04:33:23 -04:00
Zed A. Shaw
dbc2a10933 Very basic collision and combat to work out the idea and a logging system on the left. 2024-10-25 20:49:11 -04:00
Zed A. Shaw
e57a13846f A bit more caching and optimization then determine how to center glyphs in the center of the background if it fits. 2024-10-21 22:43:34 -04:00
Zed A. Shaw
9083582420 Make it possible to zoom in/out, but I may make this a combat thing where it's zoomed out until you encounter an enemy. 2024-10-21 20:31:59 -04:00
Zed A. Shaw
02a45d890f Make it so the canvas for the map view is calculated based on the font size, which will allow for zooming. 2024-10-21 00:12:04 -04:00
Zed A. Shaw
9f1e9717a0 Super jank prototype of my idea but I am rendering multiple characters per cell to give the effect of a more complex character. Now to make this a data setup so it's easy to make characters. Also, probably have little add ons to show things like weapons equiped, etc. 2024-10-18 21:59:06 -04:00
Zed A. Shaw
31c86fa2b3 Cleanup before trying to make the tile rendering faster by pre-loading the sprites needed, or caching as they're requested. 2024-10-18 20:53:19 -04:00
Zed A. Shaw
08d71f9bdc Super duper slow but this renders the text glyphs directly as sprites so I can do special colorization. Probalby then need to process the ftxui color ansi codes. 2024-10-18 16:00:13 -04:00
Zed A. Shaw
fe5f7673ea Remove some unused variables. 2024-10-18 00:28:23 -04:00
Zed A. Shaw
3dae65fe82 Merge in the refactor from earlier. 2024-10-17 21:49:57 -04:00
Zed A. Shaw
da64e526c4 Systems now control most of the game's operations and a lot of the rendering logic, this now brings in a camera so maps can be larger than the viewport. 2024-10-17 21:43:19 -04:00
Zed A. Shaw
1bb8999610 A bit more cleanup, but still looking for more organization. 2024-10-16 23:15:56 -04:00
Zed A. Shaw
e42647d727 I think I've got my head around what ECS does and am slowly reshaping the engine to use it better. 2024-10-16 20:31:00 -04:00
Zed A. Shaw
33327154ad DinkyECS is now controlling the game and can handle multiple enemies easily. Next is to clean this up so it's not just one gross pile of code in the gui. 2024-10-16 15:01:53 -04:00
Zed A. Shaw
86c98c43c2 Fixes to make it build on OSX with old gear. I have an ancient OSX laptop that uses Clang 14 and it actuall works there. Amazing. 2024-10-13 14:01:18 -04:00
Zed A. Shaw
cc4f83a1d1 Just wrote my own entity system to figure it out. 2024-10-10 17:34:33 -04:00
Zed A. Shaw
a3eaf78fd3 Brought in FLECS to play with, tomorrow we learn it. 2024-10-05 18:15:14 -04:00
Zed A. Shaw
b8a0d9bbd1 Now able to render the map at a different size from the rest of the UI and also only shake the map. 2024-10-05 17:24:07 -04:00
Zed A. Shaw
77945be4d7 Record some bugs. 2024-10-04 18:32:04 -04:00
Zed A. Shaw
f9bf8f06ea Some jank test visual effects are working. 2024-10-04 18:23:14 -04:00
Zed A. Shaw
6f952bfd28 Fixed the screen sizing issue. It was just using the terminal size and not the window graphic size. 2024-10-04 16:57:11 -04:00
Zed A. Shaw
5cf66aad02 Conver to using \ for member variables in classes. In structs just use the name. 2024-10-03 17:05:23 -04:00
Zed A. Shaw
187edb898e Mostly all cleaned up now. 2024-10-02 19:08:17 -04:00