Commit Graph

2789 Commits (08aeb6faeb33b93e378af9ed308cd5acbdaf9efc)

Author SHA1 Message Date
lethosor 08aeb6faeb Fix EventManager building ID type
The pointer to the building ID was sometimes not dereferenced properly.
Addressed by switching to an ID cast to a pointer type for consistency with
other types of events.

Fixes #1434
Ref #1003 (19695b4ee7)
Broken in #1253 (a7dfacd1c5)
2019-10-05 20:26:31 -04:00
lethosor 7d5970303f Update xml (dfhack/df-structures#286) 2019-10-04 00:14:08 -04:00
lethosor ca7d0f1cac Add algorithm include for MSVC 2019-10-03 23:26:57 -04:00
lethosor f3658db85f Merge branch 'develop' into avoid_rebuilding_df_statics_if_core_h_changes 2019-10-03 23:23:36 -04:00
Alan 0f4162acc9
Merge pull request #1402 from BenLubar/persist
Add Persistence module.
2019-08-23 23:37:06 -04:00
lethosor 222b88063c Update submodules 2019-08-23 21:37:50 -04:00
lethosor 2ef46562c8 Avoid calling doSaveData twice when unloading a world
This was happening because of a switch to viewscreen_game_cleanerst and back to
viewscreen_savegamest when saving
2019-08-23 20:45:35 -04:00
lethosor 100e584c34 Fix saving persistent data on regular save 2019-08-23 20:30:06 -04:00
lethosor 07575095fd Merge branch 'develop' into persist 2019-08-22 22:00:50 -04:00
lethosor 99038c395a Merge remote-tracking branch 'ab9rf/biometype' into develop 2019-07-20 16:32:46 -04:00
Pauli 49f3de979f Make ServerMain and ServerConnection data race free
RemoteServer and PluginManager side would need complete redesign to be
data race free and concurrent. But as that would be unlikely to be
required from DFHack I decided simpler solution that is fixing data
ownership to a thread and all ServerConnection share a single lock which
allows access to PluginManager and Core.
2019-07-18 23:05:11 -04:00
Pauli 0605b9601c Make Core::started thread safe 2019-07-18 23:05:11 -04:00
Pauli 0ed5c8db39 Fix data race between threaded init and EventManager
The initial run_dfhack_init loads shared state information that is used
by EventManager when state changes. There is a small risk that
EventManager can handle events while run_dfhack_init is still running.
2019-07-18 23:04:40 -04:00
lethosor b60faa8021 dfhack-run: add note about installation when called with no arguments 2019-07-13 15:51:46 -04:00
lethosor c125926727 Update submodules and Authors.rst
Ref #1432
Ref dfhack/stonesense#54
Ref dfhack/scripts#93
2019-07-10 19:21:23 -04:00
lethosor 5b11d14c6c Rename save/load to "save data"/"load data" 2019-05-29 19:52:03 -04:00
lethosor ceebef5fe2 Merge branch 'develop' into persist 2019-05-28 21:08:16 -04:00
lethosor dd9c433f17 Use BYPRODUCTS to keep ninja builds from re-running codegen every time
This partially reverts f02466de8a, but behavior
should be the same under MSVC, which that commit attempted to fix. From
https://cmake.org/cmake/help/v3.14/command/add_custom_command.html:

> The `BYPRODUCTS` option is ignored on non-Ninja generators except to mark
> byproducts `GENERATED`.

Since `$GENERATED_HDRS` are already marked generated, this change should have
no effect on non-Ninja generators.
2019-05-13 19:47:39 -04:00
lethosor 32a0ab9679 Update submodules 2019-05-11 23:34:59 -04:00
lethosor e5eade1ad7 Make gui.dwarfmode.{get_movement_delta,get_hotkey_target} public 2019-04-30 16:53:09 -04:00
lethosor 6c266075de Console-posix: fix crash with prompts longer than screen width
Also add an extra fallback check around substr

Fixes #1425
2019-01-15 21:06:49 -05:00
Pauli f0632347d0 Remove Core.h include from DataDefs.h
Core.h isn't required for DataDefs.h which removes Core.h dependency
from DataStatics*.
2018-12-30 17:08:42 -05:00
lethosor e74946f62e Update xml and related changelog entries 2018-12-27 17:37:13 -05:00
lethosor a2f8742128 Merge remote-tracking branch 'suokko/runtime_debug_prints' into develop
Also fix and reorganize changelog
2018-12-27 16:28:25 -05:00
lethosor 13c6bfc1b2 Merge remote-tracking branch 'sgayda2/memory_fixes' into develop 2018-12-22 11:54:31 -05:00
lethosor b913076451 Update xml, stonesense, changelog
Merged DFHack/df-structures#296 and (modified) attached changelog
entry
2018-11-24 17:09:24 -05:00
lethosor 368f8d0504 Remove and replace checks for OnBreak 2018-11-24 14:52:26 -05:00
Kelly Kinkade 02f047e9f1 a pox on whitespace 2018-09-11 18:41:32 -05:00
Kelly Kinkade 3817773b5a eliminate stray whitespace 2018-09-11 17:32:33 -05:00
Ben Lubar 10267f3e70
Only save on the first frame of the save screen. 2018-08-26 19:11:41 -05:00
Ben Lubar a672ffcb95
Use viewscreen_savegamest instead of viewscreen_optionst 2018-08-26 19:05:44 -05:00
Ben Lubar 4e690df96a
Add Persistence module.
Alter World to use Persistence instead of storing data in historical figures.

Fake historical figures will be converted to the new format when a world is loaded.

Added plugin_save and plugin_load functions to the plugin API.

Made the weird int7/int28 code that was in the old persistence API slightly safer.
2018-08-26 18:27:58 -05:00
Kelly Kinkade 338572d270 resolve uninitialized variable warning 2018-08-16 12:15:56 -05:00
Kelly Kinkade 59d70d6687 Add function to infer biome type to Maps module
This moves code intended to infer biome type currently living in a
couple of plugins into the Maps module, so that this code can be shared
more easily by multiple plugins, as discussed in #1392.
2018-08-15 20:28:18 -05:00
lethosor e56cb2a25a Update xml (setup_character_info.skill_points_remaining) 2018-08-04 00:59:15 -04:00
Lethosor 9bd5ecd738
Merge pull request #1372 from BenLubar/dfhack-viewscreen-identity
Add an identity to dfhack_viewscreen and dfhack_lua_viewscreen.
2018-07-26 16:06:24 -04:00
Ben Lubar 4837e65322
Add an identity to dfhack_viewscreen and dfhack_lua_viewscreen. 2018-07-22 17:31:39 -05:00
lethosor c53353fc28 Update changelog, xml 2018-07-20 23:29:24 -04:00
lethosor 163c9b4059 Add utils.OrderedTable, make test order consistent
Also added OrderedTable tests and comment support to expect.*()
2018-07-19 12:40:25 -04:00
lethosor 063602349c Add a basic test library and a couple GUI module tests (squashed)
Also modified Core/Console a bit to get this to actually produce output on
Travis (DFHACK_DISABLE_CONSOLE now allows console output, just not input)

Squashed merge from lethosor/tests
2018-07-18 14:29:13 -04:00
lethosor 3b44c18576 Followups for #1325
- Fix git tag detection
- Fix changelog entry position
- Update/clean up docs some
2018-07-17 00:58:49 -04:00
lethosor 1d6c3dc871 Merge remote-tracking branch 'suokko/fix_cmake_dependencies_to_generated_headers' into develop 2018-07-17 00:24:18 -04:00
Stoyan Gaydarov 38cccdb0f4 Update the module create calls to return unique_ptrs 2018-07-14 19:55:25 -07:00
Stoyan Gaydarov 6f90273bb6 More usage of smart pointers throughout core and version info. 2018-07-14 19:55:25 -07:00
Stoyan Gaydarov 699f864110 use dts::make_unique instead of new 2018-07-14 19:51:46 -07:00
Stoyan Gaydarov 6cfd987c0d Remove an outdated comment, with c++11 enabled the code is thread safe 2018-07-14 19:51:46 -07:00
Stoyan Gaydarov 12c8046f90 Some memory management changes for Core 2018-07-14 19:51:46 -07:00
Stoyan Gaydarov b5ddde8475 Use a shared_ptr to avoid having to manage VersionInfo vector memory 2018-07-14 19:51:46 -07:00
Stoyan Gaydarov c127ceab96 Use a unique_ptr for VersionInfo to avoid worrying about memory 2018-07-14 19:51:46 -07:00
lethosor 790d16cc1c Merge remote-tracking branch 'sgayda2/call_once' into develop 2018-07-14 21:08:15 -04:00