4e66edc7e3
prefer lexical_cast over stringstream in record/replay
2024-09-03 00:08:26 -04:00
20bb7e4322
more convenient has_next_action()
2024-09-03 00:08:26 -04:00
36814a7a57
specify include directory for render_shapes.hpp
2024-09-03 00:08:26 -04:00
f5e89a6483
specify include folder for boe.newgraph.hpp
2024-09-03 00:08:26 -04:00
7a5c865779
record and replay dialog choices
2024-09-03 00:08:26 -04:00
e7d5b4ff81
Create an info struct for the eStatus and ePartyStatus enums
...
This reintroduces the normal speed icon and opens #230
2024-08-28 11:01:09 -04:00
392f43ec89
If we're gonna put this into a unique_ptr we should do it from the beginning.
...
I'm not sure if sf::Image::create can throw, but if it can, that would have been a leak.
2024-08-24 21:00:26 -04:00
fc52f11931
fix an include for xcode
2024-08-24 20:04:29 -04:00
622ba56b2a
Apply suggestions from code review
...
Co-authored-by: Celtic Minstrel <CelticMinstrel@users.noreply.github.com >
2024-08-24 20:04:29 -04:00
ad9ad3dc3c
record and replay text field input
2024-08-24 20:04:29 -04:00
0e87c730c6
Add a replay speed option so that we can watch the replay in action.
2024-08-22 23:21:29 -04:00
61bf8d327e
Inserting a timestamp into the filename isn't great for testing, let's make it optional
2024-08-22 23:21:29 -04:00
d74b11aa31
Reform command-line handling to use Clara, which is bundled with Catch
2024-08-22 23:21:29 -04:00
33f7562bfc
Use a CDATA section for preferences in replays
2024-08-10 15:47:01 -04:00
104f6d6b0b
Address some compiler warnings (Xcode 12)
...
* Missing prototypes
* Unused function parameters
* Float comparison in preferences
2024-08-10 12:06:11 -04:00
de36bf7536
Fix #327 for windows
2024-08-03 19:27:48 -04:00
1e68d32543
DRY retrieval of some types from replay action
2024-08-03 12:30:08 -04:00
fc083c6fcc
make function static
2024-07-31 19:58:19 -04:00
e27165683c
cleaner switch declarations
2024-07-31 19:58:19 -04:00
afca0dc85d
mac replay preferences
2024-07-31 19:58:19 -04:00
0935b9ce19
allow empty string for action info element
2024-07-31 19:58:19 -04:00
e1bfea8302
mac record preferences
2024-07-31 19:58:19 -04:00
10ad8dc9da
throw std::strings
2024-07-28 17:07:33 -04:00
4e1c228161
throw error when checking next_action_type() of null
2024-07-28 17:07:33 -04:00
3c3a105ae4
make pop_next_action() return a reference
2024-07-28 17:07:33 -04:00
6d2e8a807b
use nullptr
2024-07-28 17:07:33 -04:00
948bb7b525
pop_next_action() iterate through without actually removing
2024-07-28 17:07:33 -04:00
51986ef981
parse std::map of replay action info elements
2024-07-28 17:07:33 -04:00
b81974d915
allow peeking the type of next replay action
2024-07-28 17:07:33 -04:00
a0be5abc08
allow recording action with multiple parameters
2024-07-28 17:07:33 -04:00
31dcb26d9d
WIP encode and decode save files in action logs
2024-07-28 17:07:33 -04:00
542822885c
action log has_next_action()
2024-07-28 17:07:33 -04:00
20f762f031
refactor without raw pointers
2024-07-28 17:07:33 -04:00
09640e444a
include string and sstream directly
2024-07-28 17:07:33 -04:00
27d35ed7dc
don't double-compile ticpp.cpp
2024-07-28 17:07:33 -04:00
56169abaf5
Reorganize global replay code
...
Theoretically, the scenario and character editors could also have replay systems
2024-07-28 17:07:33 -04:00
3f69819c35
don't save preferences when replaying
2024-07-28 17:07:33 -04:00
7ea9810b09
windows and linux record preferences at startup
2024-07-28 17:07:33 -04:00
c251fee834
Fix graphics flickering/stretching on Windows ( #367 )
...
* DRY, standardized window top offset
* handle_splash_events() handle multiple events per frame
* accurate windows menubar height for multiple rows
* Windows filter a resize event triggered by the menubar
* windows expand small window to fit menubar
* splash screens draw in view rect, not window rect
2024-06-27 08:40:34 -04:00
d5ea213edd
Update swap functions to recommended ADL-friendly format
2023-01-25 23:09:13 -05:00
a430abbd50
Fix fields array not matching the size of the town
...
The fields array was fixed at 64x64, which is fine for all towns
supported in legacy BoE.
However, we intend to support even larger towns in the future,
and also it seems silly to hold so much extra space for a smaller town.
So now, the fields array is a 2D vector that matches the size of the terrain vector.
The setup array is similarly a list of 2D vectors.
This radically changes the format used to store the setup array in a saved game.
Older saves won't crash the game, but fields will be messed up or missing.
Resetting towns is recommended.
2023-01-21 00:47:35 -05:00
1bf079af5e
Fix some missing initializers
...
Spotted by @fosnola
2023-01-18 21:16:33 -05:00
20102c7f52
vector2d: few more tests
2023-01-18 09:53:19 -05:00
9aa0262247
vector2d: row/col assignment (+test), default value in resize
2023-01-18 00:54:39 -05:00
1996985b50
include cstddef to compile on linux ( #310 )
2023-01-14 01:17:18 -05:00
248ac94bf9
Fix arrow keys
...
Still part of #291
2023-01-13 19:59:30 -05:00
6e238881ae
Fix a vector2d::resize overflow bug
...
Found by running asan
Should fix the CI failure...?
2023-01-13 19:37:16 -05:00
3bdcf02be0
Handle modifier keys differently to avoid Apple flagging us as wishing to monitor input from other applications
...
Fixes #291
2023-01-12 21:43:45 -05:00
35a890a577
Add a partial unit test for vector2d and fix several issues with the resize function
2023-01-12 21:26:08 -05:00
e4b1162d46
Make sure lpstrFile is empty on cancel ( #305 )
2023-01-10 21:42:38 -05:00