Commit graph

44 commits

Author SHA1 Message Date
Zed A. Shaw
033358749f Animations now have an easing/ease_rate setting that will do a dynamic scaling effect on them during the animation sequence. 2025-03-01 00:24:19 -05:00
Zed A. Shaw
a0c0308461 More boss fight UI done and a bit of ambient sound working. 2025-02-28 00:52:48 -05:00
Zed A. Shaw
d4355a608d Now have an autowalker class that allows me to drive the game from an external source. 2025-02-26 13:39:25 -05:00
Zed A. Shaw
d03abba8e4 Now if you pass a simple t as an arg it will do a fast autowalk at the start, mostly for testing. 2025-02-26 12:43:12 -05:00
Zed A. Shaw
14c7f660de Level traversal works better now, compass is accurate, and direction is maintained when you traverse. 2025-02-26 10:39:30 -05:00
Zed A. Shaw
e9accf14e6 Going into a well triggers a little 'loading screen' that's currently faked. Click on it to continue. 2025-02-25 03:01:07 -05:00
Zed A. Shaw
20cbc3a21c Working sound system and most enemies have a sound effect. This will make it easier to add sounds now. 2025-02-22 12:48:37 -05:00
Zed A. Shaw
4b333c6684 Fix the mouse so that it's discrete and one click means on action. 2025-02-21 12:32:55 -05:00
Zed A. Shaw
0260e3d345 Textures and sprites are now managed by a single module in textures.hpp, and even though it is a _single_ location to access all sprites it is NOT a singleton. Those are illegal. 2025-02-21 03:32:44 -05:00
Zed A. Shaw
f3e1413022 Intermediate refactor to move everything over to using the textures module rather than everyone using one TexturePack thing. 2025-02-21 03:00:56 -05:00
Zed A. Shaw
a7a60ad35c Initial start of the refactoring of gui.cpp into two classes, the gui::FSM will be used to controll all of the other UIs in the game, and evetnually will be pretty dumb. 2025-02-20 23:18:18 -05:00
Zed A. Shaw
8a6b38c1a4 Start of V1 combat system where you get locked into combat when in range and have to work the turn system to get out. 2025-02-13 14:39:04 -05:00
Zed A. Shaw
d798d154ae We now have a full map that's basically the same mapping system from Roguish. There's a bug right now where it needs you to move once to calc the light and it's not being centered, but it does work. 2025-02-07 19:32:00 -05:00
Zed A. Shaw
1d3a76e5ee Refactored out main.cpp to be a separate gui and using an FSM to keep the turn based nature straight. 2025-02-04 12:56:20 -05:00
Zed A. Shaw
7228bdf210 Trying out an FSM for controlling the main loop. 2025-02-04 00:52:54 -05:00
Zed A. Shaw
740e30cb2b Strafing now works, thanks to rcr but needs a unit test on the camera and probbably a refactor so that rayview uses it or knows nothing about it? 2025-02-03 14:17:20 -05:00
Zed A. Shaw
48ac6603a8 Implement a little junk camera on its own that we can use later for movement and views. 2025-02-03 11:08:17 -05:00
Zed A. Shaw
976822ceb6 Mostly working junk camera that can do turnbased lerp smooth motion. 2025-02-03 10:17:59 -05:00
Zed A. Shaw
cbf0955786 Raycaster now controls the sprite locations with SpatialMap rather than the old way. Quick hack job in main.cpp that shows how they can move too. 2025-02-01 14:39:08 -05:00
Zed A. Shaw
a67d25ee10 Tiles now record their textures and this is loaded from the map then converted to an indexed integer on the fly. 2025-01-31 13:37:01 -05:00
Zed A. Shaw
56d67aba28 First hack to get a random gen map going. 2025-01-30 13:23:12 -05:00
Zed A. Shaw
2daa1c9bd5 Brought over a bunch of code from the roguelike and now will use it to generate a random map. 2025-01-30 11:38:57 -05:00
Zed A. Shaw
071808a0f8 Playing around with shaders for effects on the scene. 2025-01-27 11:36:00 -05:00
Zed A. Shaw
b87217ff90 Have a barely working animation thing that animates the evil eye when you click a button. 2025-01-27 05:40:04 -05:00
Zed A. Shaw
51c1e04f61 Made some progress on the refactoring but I need to start getting serious and not reworking this code to death. 2025-01-26 19:22:27 -05:00
Zed A. Shaw
d397c02d38 You can now stab stuff with a sword. 2025-01-23 12:54:46 -05:00
Zed A. Shaw
da7075864b Now have a basic sprite system that uses SFML's sprites, but the algorithm for determining how much of a sprite to display is wrong. Need to use the alternate algorithm from LODE's tutorial that draws sprites after rendering. 2025-01-23 02:42:43 -05:00
Zed A. Shaw
ce1476b117 Saw some tutorials on Photobashing and used the technique to bang out an Evil Eye and some wall/ceiling/floor textures with a painterly style. The Evil Eye is a collage of a shark an eye and some eels. 2025-01-20 06:13:32 -05:00
Zed A. Shaw
c98aa936ad The tracy directory now has an experiment in getting Tracy to work. It's _not_ as easy as it is touted to be. 2025-01-19 12:58:05 -05:00
Zed A. Shaw
308fe4bed2 Brought in Amit's latest and tweaked a few more build options for enabling some safety checks in GCC. 2025-01-19 11:05:42 -05:00
Zed A. Shaw
831e15ca18 Brought in Amit's latest code and converted it to use either dumb lighting or his new torch lighting, then threw in the FPS counter from last night. 2025-01-18 11:10:43 -05:00
Zed A. Shaw
53a151511e Make it so that DNEBUG is forced on release build, and that the UI stats counter will show that this is a debug build or not via NDEBUG. 2025-01-18 03:18:44 -05:00
Zed A. Shaw
cf9682ed70 Bring in the gnu omni font for text, and rewrite my stats code to use c++ and then use that to calc FPS stats for an FPS display on the left. Debug build gets about 48, release gets about 500fps. Amit's code will probably do even better. 2025-01-18 02:42:41 -05:00
Zed A. Shaw
7a74877849 Fixed that crash and cleaned up more variables for some study next. I might also try out my debug macros. 2025-01-18 00:44:25 -05:00
Zed A. Shaw
105c974f1c This converts it to SFML 3.0 but the build only runs on Windows at the moment. 2025-01-17 15:10:03 -05:00
Zed A. Shaw
c91e8fc543 Brought in Amit's latest and will now merge in my fixing from last night into his to get them synced up. 2025-01-17 11:00:49 -05:00
Zed A. Shaw
adfb6367d7 Finished the first pass of moving everything around and cleaning up as much as possible. 2025-01-17 03:45:05 -05:00
Zed A. Shaw
2dfe5417b1 More cleaning of the Raycaster class to have no #defines for variables. Now it can be arbitrarily sized and positioned. 2025-01-16 12:19:33 -05:00
Zed A. Shaw
033d5cdfec More cleanup, mostly removing variables and simplifying the math. 2025-01-16 10:32:28 -05:00
Zed A. Shaw
113df851af Way better in the structure but still a lot of work to do. However, just by moving variables to better locations, taking things out of loops that don't need to be recalulated, etc. this is already 50% of the CPU/GPU usage as the previous version. 2025-01-15 15:32:54 -05:00
Zed A. Shaw
e379bcd5ec Next step in the refactoring with everything in a different file and running. The bug from the previous commit was due to the pixel buffer making the Raycaster object too large for the stack. If you get __chkstk_ms then you used too much stack. 2025-01-15 13:39:38 -05:00
Zed A. Shaw
d230b152cf BREAKING: This code does NOT work, but has a segv on startup on windows due to ...magic? 2025-01-15 12:25:09 -05:00
Zed A. Shaw
ca80736d7c First cut at a replica of the python raycaster. Left side almost works the same but have to sort out math differences. 2025-01-04 12:20:41 -05:00
Zed A. Shaw
6b181382bd First build that actually works. SDL_main errors before but didn't figure out the cause. 2025-01-02 11:47:02 -05:00