Commit graph

44 commits

Author SHA1 Message Date
Zed A. Shaw
6cabd62c7f There's a simple death screen now and you can exit. More work on what death means later. 2025-01-07 14:07:10 -05:00
Zed A. Shaw
14b3ea7676 Inventory system is mostly working and I can pick up everything and use it. 2025-01-04 13:32:26 -05:00
Zed A. Shaw
aaa6d9f9f3 Can display items picked up but man is this some garbage code. I need to rethink how inventory is stored so that it'll work with the Menu. 2025-01-03 21:09:42 -05:00
Zed A. Shaw
d7353a02df Initial layout of an item inventory UI. 2025-01-01 19:21:30 -05:00
Zed A. Shaw
3d461bce6d Very simple items system to get into the inventory work. 2025-01-01 13:21:01 -05:00
Zed A. Shaw
5adeb4e078 I think the actual map drawing is more of a view thing than in the system, so I've moved it to the MapViewUI out of system. 2024-12-31 06:18:25 -05:00
Zed A. Shaw
380e18b91a All of the GUI panels are now their own classes and pulled out of the main GUI so I can devise how they're managed. 2024-12-31 05:53:27 -05:00
Zed A. Shaw
941be008f8 Very jank but now I can set different panels as active and test for mouse events in them to enable mouse. This needs a big cleanup and probably some FSM love. 2024-12-30 20:20:17 -05:00
Zed A. Shaw
f0829bb9ea Starting a bit of refactoring to sort out how to handle the various UIs. 2024-12-30 16:33:56 -05:00
Zed A. Shaw
d8400d0a76 Tinkering with a way to do modal UIs for things like inventory etc. 2024-12-30 09:41:16 -05:00
Zed A. Shaw
db441000f8 Added in an initial test to blur the current screen for any pause actions, before doing a modal or new UI. 2024-12-29 06:53:08 -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
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
bdfd61c8e7 GUI had old code when I was toying with doing lighting with a png. 2024-12-02 08:15:27 -05:00
Zed A. Shaw
3f7a9cc124 Lighting is now in its own class using the new Pathing class. This should allow me to make it more consistent and possibly make Pathing more efficient. 2024-12-01 17:54:43 -05:00
Zed A. Shaw
1bb04b4562 Tried to set the background color in the ftxui canvas and weirdly it started doing almost what I want with lighting, but I didn't write any code to do that. There's some bug in how I'm doing it that's causing it to set the colors...correctly. Must find out why. 2024-11-23 23:11:20 -05:00
Zed A. Shaw
15a302d133 Renderer is now more standalone and doesn't try to protect against small maps, that's the GUI's job. 2024-11-21 15:51:22 -05:00
Zed A. Shaw
958c8545a7 It's actually better to just use FTXUI's Modal system than to invent my own. 2024-11-17 22:28:29 -05:00
Zed A. Shaw
64855f3c90 The gui can now pop open a modal based on clicking a button but I need to manage focus next. 2024-11-17 13:23:18 -05:00
Zed A. Shaw
96ee16e598 Figured out that I don't need a special screen, just send events to the component directly with OnEvent. However, you have to component->Add() or call Render(component, []) with it or else it's not considered a child. 2024-11-14 12:37:31 -05:00
Zed A. Shaw
9bc9c9007f Now have a nice panel to hold all the UI panels we'll use later. 2024-11-11 12:23:40 -05:00
Zed A. Shaw
7b5c84b5f7 Cleaned up the gui display some more for future GUI elements. 2024-11-10 12:53:29 -05:00
Zed A. Shaw
113811bc84 Got some new sounds and camera shake came back but has a bug. 2024-11-08 13:18:43 -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
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
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
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
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
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
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
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