Commit Graph

3008 Commits (48d4013bcb8102a683545d3e63797a086bc68f44)

Author SHA1 Message Date
Ben Lubar 97916fd55e
implement tagged union structures attributes 2020-03-21 14:29:14 -05:00
Ben Lubar b29d009b14
update structures; implement struct_field_info_extra 2020-03-21 13:21:35 -05:00
Ben Lubar 5b8952baf8
ghidra: handle destructor ABI differences 2020-03-21 08:53:11 -05:00
Ben Lubar b2940b69f8
update structures 2020-03-21 07:49:22 -05:00
lethosor 77e40a52c0 Update scripts, xml, authors 2020-03-21 02:02:00 -04:00
Ben Lubar 37e7bed779
add df.global:_field method. add test case to check for overlapping globals. 2020-03-20 09:41:58 -05:00
Ben Lubar d28b35b6eb
update structures 2020-03-15 15:29:02 -05:00
Ben Lubar 2f4bd32d28
update structures and scripts 2020-03-15 15:19:51 -05:00
Ben Lubar 60722d778f
update structures and scripts 2020-03-15 02:17:19 -05:00
Ben Lubar 39486083f5
handle overlapping structures in check-structures-sanity better
update structures
2020-03-12 22:16:30 -05:00
Ben Lubar 1a4c4a5f33
update structures 2020-03-12 14:03:23 -05:00
Ben Lubar f204f14e52
update scripts and structures 2020-03-12 12:53:24 -05:00
Ben Lubar 2a6b2cacbd
update scripts and structures 2020-03-12 12:34:57 -05:00
Ben Lubar b9841110c3
update structures and scripts 2020-03-09 17:53:34 -05:00
Pierre-David Bélanger a7d263fa67
getFullName of the container AND the item, also exclude container of char (#1515)
* getFullName of the container AND the item, also exclude container of char

* bit vector condition was backwards
2020-03-09 13:12:04 -05:00
Ben Lubar ffb3c29cfc
simplify Graphic module. update structures.
it appears that all this added complexity including an extra pointer dereference was to avoid including the vector header.
2020-03-08 00:12:48 -06:00
Ben Lubar c4e9c8d29c
update structures 2020-03-07 15:15:02 -06:00
Ben Lubar 5f83681fbc
update scripts and structures 2020-03-07 12:08:03 -06:00
Ben Lubar a214e00407
allow union vectors to have tags that are bit vectors if they have exactly 2 members 2020-03-06 16:48:33 -06:00
Ben Lubar 508ab79af2
document where tagged unions should be implemented for Lua 2020-03-06 16:33:02 -06:00
Ben Lubar 635e709d95
name ui_look_list union
update scripts and structures
2020-03-06 16:06:27 -06:00
Ben Lubar fa574cfbec
allow dfhack-run to output colors.
refactor Console-posix to avoid having a parameter equivalent to not calling the function at all.
2020-03-06 15:02:03 -06:00
Ben Lubar 885fa541fd
update structures 2020-03-05 00:06:32 -06:00
Ben Lubar 84cae060b1
move find_union_tag from check-structures-sanity to DataDefs.h 2020-03-04 18:23:49 -06:00
Ben Lubar 08e1fe1f02
update structures 2020-03-03 22:42:40 -06:00
Ben Lubar 6d15d349bc
update structures 2020-03-03 21:45:13 -06:00
Ben Lubar 676e73d477
update structures 2020-03-02 23:59:55 -06:00
Ben Lubar e356925795
update structures 2020-03-02 23:12:03 -06:00
Ben Lubar 7784e569a5
update structures 2020-03-02 22:29:53 -06:00
Ben Lubar c29b606a4a
check-structures-sanity: suggest known structure types for large unknown pointers
update structures
2020-03-02 21:33:04 -06:00
Ben Lubar 66ded03bc1
update structures 2020-03-02 20:41:13 -06:00
Ben Lubar 4da0a761ea
update structures 2020-03-02 18:36:28 -06:00
Ben Lubar 269b3cb8eb
add support for finding vtable pointers to check-structures-sanity
update structures
2020-03-02 15:34:29 -06:00
Ben Lubar 0024457167
update structures
don't mark lua argument as a pointer (to be revisited at some point)
2020-03-02 02:27:15 -06:00
Ben Lubar 102fedc2ff
update structures 2020-03-01 00:20:31 -06:00
Ben Lubar dc5ef1fe58
update structures 2020-02-29 20:11:41 -06:00
Ben Lubar aaace29e11
update structures 2020-02-29 18:29:32 -06:00
Ben Lubar 18523a1821
Convert untagged unions to tagged. Fix some edge cases in check-structures-sanity union checking. 2020-02-29 15:08:39 -06:00
Ben Lubar 94e818fd53
reference union_identity in the df namespace 2020-02-29 13:26:42 -06:00
Ben Lubar 3ddbb5cec1
fix typo 2020-02-29 13:24:12 -06:00
Ben Lubar a30678cee3
subclass struct_identity for unions 2020-02-29 13:11:23 -06:00
lethosor 196f4d3c06 Update submodules 2020-02-27 18:54:30 -05:00
nicolasayala 141928ead0 Fix gui.FilteredList widget search on plain string choices 2020-02-27 07:56:30 +01:00
Ben Lubar 92eb8b058b
update scripts and structures 2020-02-26 12:10:15 -06:00
Ben Lubar e26787604a
update structures 2020-02-24 12:16:59 -06:00
Ben Lubar f6f5d54f9d
update structures 2020-02-24 10:20:32 -06:00
Ben Lubar 1f34c813c8
update structures 2020-02-24 10:13:46 -06:00
Ben Lubar 8a4eac3d3e
Merge pull request #1503 from TymurGubayev/dev/minor-improvement/dfhack-lua/printall_recurse
allow custom filter in calls to `dfhack.printall_recurse`
2020-02-24 10:05:28 -06:00
Ben Lubar 546178bc56
update structures 2020-02-24 03:03:58 -06:00
Ben Lubar e9564a28f5
allow tagged unions to not be union followed by tag 2020-02-23 21:33:32 -06:00
Timur Kelman 1d8998de22
allow custom filter in `dfhack.printall_recurse`
Objects with links like `job` output way too much. With this change, it's possible to provide an optional filter and exclude the `list_link`.
```
[lua]# j = dfhack.gui.getSelectedJob()
[lua]# printall_recurse(j, {[tostring(j.list_link)]=true, [tostring(j.pos)]=true})
```
2020-02-23 16:57:57 +01:00
Ben Lubar 1e3e3829a7
update structures 2020-02-22 23:36:14 -06:00
Ben Lubar 5580d375aa
add more diagnostics that will help in the identification of stl-string fields 2020-02-22 15:34:48 -06:00
Ben Lubar 0711b2569a
in -sizes mode, report sizes of unknown structures behind pointers.
update structures
2020-02-22 14:04:53 -06:00
Ben Lubar 57154e33c8
warn about misidentified generic pointers
update structures
2020-02-21 18:49:02 -06:00
Ben Lubar 53da38ca47
add additional pointer, string, and vector sanity checks
update structures and scripts
2020-02-21 17:31:31 -06:00
Ben Lubar f383f63eea
fix check-structures-sanity not catching certain types of invalid string on GCC builds.
update structures.
2020-02-21 17:31:31 -06:00
Ben Lubar 14eade3886
update structures 2020-02-21 02:52:56 -06:00
Ben Lubar eb35ff9b47
update structures 2020-02-21 02:31:37 -06:00
Ben Lubar f708bb5cff
update structures 2020-02-21 01:41:05 -06:00
Ben Lubar 38410544b0
handle tagged unions in check-structures-sanity
update structures
2020-02-20 22:17:25 -06:00
Ben Lubar 903f829e30
update structures 2020-02-20 20:19:50 -06:00
Ben Lubar 1beb0f417e
update structures 2020-02-20 17:44:24 -06:00
Ben Lubar f81587bd82
update structures 2020-02-18 21:05:54 -06:00
Ben Lubar 0d36e62d81
fix some weird uses of the part of speech enum 2020-02-18 16:39:39 -06:00
Ben Lubar c43c9de477
update structures 2020-02-18 16:33:24 -06:00
Ben Lubar fce52866c7
update structures 2020-02-17 22:43:12 -06:00
Ben Lubar 91771f9c64
update structures 2020-02-17 22:02:25 -06:00
lethosor 28bf6667cb Update xml 2020-02-16 21:22:31 -05:00
Ben Lubar a703e2b2fc
update structures 2020-02-16 19:02:36 -06:00
Ben Lubar b033a215bd
update for Dwarf Fortress 0.47.03 2020-02-16 18:48:27 -06:00
Ben Lubar 4e42da9e4f
update structures 2020-02-16 10:36:06 -06:00
Ben Lubar 631b8e772c
update structures; fix -lowmem being enabled due to being uninitialized on the stack. 2020-02-15 16:10:54 -06:00
Ben Lubar 122169a559
update scripts and structures
fix a crash if check-structures-sanity was called with a lua expression that evaluated to nil
2020-02-15 12:04:00 -06:00
Ben Lubar bc5b0a6dd0
update structures 2020-02-15 02:58:00 -06:00
Ben Lubar 99ccc55d65
update structures 2020-02-15 01:23:26 -06:00
Clément Vuchener c2584d615c
Define MapExtras::BiomeInfo::MAX_LAYERS (#1496)
Definition is required even for constexpr variables in some compilation
setups (e.g. debug builds).
2020-02-15 01:22:58 -06:00
Ben Lubar 9caf6e97e6
add -enums, -sizes, and specific starting point flags to check-structures-sanity 2020-02-14 19:47:26 -06:00
Ben Lubar f7f7bd7ca7
update structures 2020-02-13 21:23:42 -06:00
Ben Lubar 69c4f5c972
update structures 2020-02-13 02:12:26 -06:00
Ben Lubar 8fe950f815
update structures
sizecheck no longer segfaults on the medium world
2020-02-13 00:52:00 -06:00
Ben Lubar 3996189f9f
update structures and scripts 2020-02-12 23:52:58 -06:00
Ben Lubar e9a295c788
update structures 2020-02-12 19:00:18 -06:00
Ben Lubar b754192f2d
update structures 2020-02-12 16:18:05 -06:00
Ben Lubar ddc3cfcfbc
update structures 2020-02-12 13:34:04 -06:00
Ben Lubar 7bb921be19
update structures 2020-02-12 11:35:58 -06:00
Ben Lubar 3c9f6f79ab
fix some warnings 2020-02-10 19:35:17 -06:00
Ben Lubar 7b9ea1f1b6
update structures 2020-02-10 18:23:57 -06:00
Ben Lubar 69611ab325
exit if a fatal startup error is encountered while in headless mode (#1491) 2020-02-09 18:05:09 -06:00
Ben Lubar 5b56125ad6
update structures 2020-02-08 23:02:25 -06:00
Ben Lubar b375586b67
Update to DF 0.47.02 2020-02-07 16:00:53 -06:00
Ben Lubar 0243e422e5
Allow plugins to define subclasses of dfhack_viewscreen that have their own virtual_identity. 2020-02-07 16:00:14 -06:00
Ben Lubar 5db7d518ee
update structures; fix some minor compile warnings 2020-02-05 12:35:43 -06:00
Ben Lubar 321d948f8d
Fix crash on missing symbols.
Fixes #1487.
2020-02-03 20:21:10 -06:00
Ben Lubar 9c52b4e5e6
update structures 2020-02-02 17:31:01 -06:00
Ben Lubar dfc90fe660
Update df-structures and scripts. 2020-02-02 17:10:11 -06:00
Ben Lubar 62e3802d26
Update to DF 0.47.01 2020-01-29 14:51:48 -06:00
PatrikLundell 121497a466 Propagated getBookTitle to Lua 2020-01-26 11:47:47 +01:00
PatrikLundell 876ac6c056 Renamed to getBookTitle, cut down on virtual_cast 2020-01-25 21:46:10 +01:00
PatrikLundell c6bbf39c6c Issue #1262. Added Items::getTitle and used in stocks 2020-01-25 12:43:02 +01:00
lethosor 815821eb93 Merge branch 'develop' into cmake-cleanup
Conflicts:
	depends/lua/CMakeLists.txt
	plugins/CMakeLists.txt
	plugins/devel/CMakeLists.txt
2020-01-18 22:28:43 -05:00
lethosor bb9bc4e353 Update submodules 2020-01-18 18:52:32 -05:00
Ben Lubar 96d8dffd32
Make dfhack.run_command return the command_result value.
Rename local variables to match dfhack.run_command_silent for clarity.
2020-01-14 17:53:52 -06:00
lethosor 47fa9e1159 Update authors, submodules 2020-01-13 23:35:31 -05:00
lethosor 5eca50476e Merge remote-tracking branch 'nornagon/unit-description' into develop 2020-01-13 23:31:23 -05:00
Ben Lubar be5dc2d4a4
Make Units::isGay act consistently when called on an asexual unit.
The function appears to be used to determine whether heterosexual relationships are possible, so asexual units will always return true for isGay.

Old behavior was to treat asexual units as male.
2020-01-09 14:48:30 -06:00
Jeremy Apthorp 5de368a1ed unit_{=> get_}physical_description 2020-01-04 22:17:03 +11:00
Jeremy Apthorp 7644dde9e4
default to empty description if symbol unavailable 2019-12-14 12:01:13 -08:00
Jeremy Apthorp 50e696acf6 getDescription => getPhysicalDescription 2019-12-14 09:36:47 -08:00
Jeremy Apthorp 7fce6fe0b0 move THISCALL define to header, clean up code a little 2019-12-13 23:54:27 -08:00
Jeremy Apthorp dfab521a71
specify __thiscall
According to https://docs.microsoft.com/en-us/cpp/cpp/thiscall?view=vs-2019, "on ARM and x64 machines, __thiscall is accepted and ignored by the compiler.". So it should be OK to specify this for all win32
2019-12-12 17:51:41 -08:00
Jeremy Apthorp 9a37849603 use symbols.xml 2019-12-07 22:41:55 -08:00
Jeremy Apthorp 910f965838 wip 2019-12-07 22:17:59 -08:00
lethosor 49563b4618 Merge remote-tracking branch 'warmist/FilteredListFix' into develop 2019-11-02 16:28:06 -04:00
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
Warmist a2b5c1ddd9
lua/widgets filtered list input fix
FilteredList was not consuming input events.
2019-09-30 22:00:06 +03:00
lethosor ac5a54c8db Merge branch 'develop' into cmake-cleanup
Conflicts:
	library/CMakeLists.txt
	plugins/CMakeLists.txt
2019-08-23 23:58:00 -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 88757d5c27 Merge branch 'develop' into cmake-cleanup 2019-07-20 19:22:33 -04:00
lethosor 99038c395a Merge remote-tracking branch 'ab9rf/biometype' into develop 2019-07-20 16:32:46 -04:00
lethosor 8a07426643 Merge branch 'develop' into cmake-cleanup 2019-07-20 15:15:39 -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 76da2c2aaf Clean up CMakeLists.txt style 2019-07-16 22:19:11 -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