Commit Graph

2908 Commits (49fcb29097d3344abc0324c4478eb4b44c31cdb8)

Author SHA1 Message Date
AtomicChicken c58ffdb922
Added function to remove syndrome wound data
The presence of syndrome data in unit.syndromes.active generates corresponding wound data in unit.body.wounds. This wound data acts to produce all of the syndrome's actual effects, including but not limited to flag changes, interaction abilities, body transformation and display name alterations. Wound data persists when syndrome data is cleared from unit.syndromes.active. Since syndrome-util did not touch wound data at all, the erase function was completely ineffective at actually removing syndromes.

Note that syndromes also generate a bunch of data in the historical figure information of units. I have observed that this historical data is sufficient to restore the syndrome in a unit following map reload (at least in adventure mode), so its clearance (which needs to also include any corresponding interaction effects) will have to be addressed in a future update. As is, syndrome erasure remains incomplete.
2018-04-20 17:14:03 +02:00
lethosor a708b0b303 Add some includes in DataDefs.h 2018-04-19 21:11:43 -04:00
lethosor 2bf9632000 Merge remote-tracking branch 'origin/develop' into complex-enum 2018-04-11 10:23:32 -04:00
lethosor b0e1ae93ea Add next_item, _complex for complex enums 2018-04-09 19:46:12 -04:00
lethosor 9398262654 Make enum attrs work for complex enums (lever_target_type) 2018-04-09 16:12:03 -04:00
lethosor 7da8793172 Set last_item_value properly for complex enums 2018-04-09 16:11:47 -04:00
lethosor c1dd21730d Fix complex enum ipairs for first element 2018-04-09 11:27:02 -04:00
lethosor 61539bf345 Lua: implement key lookup and ipairs for complex enums 2018-04-09 11:04:37 -04:00
lethosor ae6b8a16e8 Handle most complex enum metadata on the C++ side 2018-04-09 03:00:58 -04:00
Ben Lubar 51661d7355
Fix -Wswitch warning about UNDERWORLD_GATE in MapCache. 2018-04-05 16:50:04 -05:00
Ben Lubar 565c1e1260
Fix uninitialized pointer being returned from Gui::getAnyUnit when on the pet list with no selection. 2018-04-05 16:49:30 -05:00
Ben Lubar 0a2ec30199
Remove or comment out unused code. 2018-04-05 16:48:11 -05:00
Ben Lubar 2eec5ee78d
Fix signed/unsigned comparison warnings in core. 2018-04-05 16:47:47 -05:00
Ben Lubar 304e1d45f0
Remove unused labels in Console-posix.cpp 2018-04-05 16:46:59 -05:00
Ben Lubar ec5d238e5e
Remove warnings in generated code for core protobufs. 2018-04-05 16:46:04 -05:00
Ben Lubar a44b3b8f98
Move null pointer check from Job module to LuaApi, where it does not invoke undefined behavior. 2018-04-05 16:01:26 -05:00
Ben Lubar a3d4c586ab
Hide "complex enum" warning for dfhack-specific enums. 2018-04-05 14:48:29 -05:00
Ben Lubar 9cbba0ae01
Hide warnings about non-virtual destructors from df-structures. 2018-04-05 14:46:28 -05:00
lethosor c8089db5df Install the correct libstdc++ 2018-04-04 20:01:27 -04:00
lethosor 5081710900 Merge remote-tracking branch 'ThiagoLira/develop' into develop
Also fixed whitespace from #1251

Closes #1186
2018-04-04 17:13:07 -04:00
ThiagoLira b7bd88352e fixed bug causing gui scripts to fail when sidebar is closed 2018-04-04 17:42:46 -03:00
lethosor 1ac896a874 Stop generate_headers from depending on symbols.xml
Changes to just symbols.xml will no longer cause codegen.pl to be re-run
2018-04-04 11:52:18 -04:00
lethosor 8f3701752d Update xml 2018-04-04 11:36:24 -04:00
lethosor 3e3571094d Update xml (name attrs) 2018-04-03 16:44:30 -04:00
lethosor f6a222751b Update xml (osx64 renderer) 2018-04-03 11:36:06 -04:00
lethosor 573fcb4bd0 Bump to 0.44.09-alpha1, update news/submodules 2018-04-02 01:00:20 -04:00
lethosor 2c9c935c0e Update submodules/news, bump to 0.44.08-alpha1 2018-03-29 11:38:55 -04:00
lethosor 93bef3351e Update submodules/news, bump to beta1 2018-03-28 22:01:27 -04:00
lethosor 6f864f97b3 Update news, xml 2018-03-14 10:11:45 -04:00
Ben Lubar 40654954a1
Partial preparation for 0.44.07-alpha1.
Still need to write release notes and add tags.
2018-03-13 15:49:42 -05:00
Lethosor 464052fe52
Merge pull request #1237 from warmist/warmist-patch-1
Fix parse_inset in gui.lua
2018-03-11 12:11:24 -04:00
Warmist 25d2938477
Fix parse_inset in gui.lua
It was used in different order than the return happened.
2018-03-11 12:40:30 +02:00
lethosor ad57037711 Merge remote-tracking branch 'BenLubar/cmp0022-warning' into develop 2018-03-10 17:02:34 -05:00
lethosor d55048dfa1 Merge remote-tracking branch 'BenLubar/ubuntu-bionic' into develop 2018-03-10 16:57:07 -05:00
lethosor 0ccc89a5fe Make git-describe.cmake detect changes to itself 2018-03-10 16:55:20 -05:00
lethosor eb22d5c38e Add ABI version symbol to plugins 2018-03-10 16:55:00 -05:00
lethosor db95796d4c Many build fixes 2018-03-10 16:53:45 -05:00
lethosor f2ff609e1c Initial 0.44.06 support, update xml 2018-03-10 16:18:15 -05:00
Ben Lubar 7bbfd456d3
Fix compile errors on Ubuntu 18.04 Bionic Beaver 2018-03-08 11:42:58 -06:00
Ben Lubar acd4adc7cc
Fix CMake warning about CMP0022 policy being set as "OLD". 2018-03-08 02:28:28 -06:00
lethosor 0e7ab27850 Bump to r2, update changelog, update submdules 2018-02-21 23:07:53 -05:00
lethosor 988ce9c30d Update xml 2018-02-16 02:19:30 -05:00
lethosor 8779168c96 DFHACK_PLUGIN: qualify Plugin 2018-02-16 02:17:58 -05:00
Japa 74bf06c69e Do some checks before trying to read json files. 2018-02-13 20:02:42 +05:30
Japa 8c13ce4da3 update xmls 2018-02-13 12:36:00 +05:30
Japa 5dc89fee38 Merge remote-tracking branch 'DFHack/develop' into RemoteServerUnsafe 2018-02-13 12:26:36 +05:30
lethosor 2f8fbd7ecd Show warning if all plugins fail to load (e.g. on Windows XP) 2018-02-12 13:58:55 -05:00
Japa 7b19c9b8f0 Merge remote-tracking branch 'remotes/DFHack/develop' into RemoteServerUnsafe
# Conflicts:
#	plugins/proto/RemoteFortressReader.proto
#	plugins/remotefortressreader/remotefortressreader.cpp
#	scripts
2018-02-12 20:19:40 +05:30
lethosor 19b65c2d1e Remove Error.h include (#1224) 2018-02-07 20:14:36 -05:00
Ben Lubar 7ab8d74ac9
Add mising Error.cpp reference to dfhack-client 2018-02-07 14:32:27 -06:00
Ben Lubar 7426f08504
Fix Error.cpp compile for Windows 2018-02-07 10:40:52 -06:00
lethosor bc6acfa24e Merge remote-tracking branch 'lethosor/travis-df' into develop 2018-02-05 19:21:13 -05:00
lethosor c1e2633e17 Refactor DFHack exception classes
Move implementations out of MiscUtils.cpp to Error.cpp and make what() return a
more useful description
2018-02-05 19:18:35 -05:00
Japa 78061085c6 Add art image properties to RFR 2018-02-04 16:02:02 +05:30
lethosor a5cca75715 headless: Disable sound, wgetch 2018-02-04 00:17:46 -05:00
Japa 956d0ce363 update submodules. 2018-02-04 10:30:49 +05:30
lethosor 638f0ab35a Add "headless" mode, use in travis 2018-02-03 23:59:01 -05:00
Japa 60c1bd3c66 Merge remote-tracking branch 'refs/remotes/DFHack/develop'
Conflicts:
	library/xml
2018-02-04 10:26:39 +05:30
Japa 38140fb450 Copy engravings in RFR, and update the art image function. 2018-02-04 10:12:15 +05:30
lethosor 426839aac2 Update scripts, xml, NEWS for dfhack/scripts#37 2018-02-03 17:59:26 -05:00
Japa 0f43c07334 update xml 2018-02-03 11:10:26 +05:30
lethosor ae3a662231 Merge remote-tracking branch 'danamlund/more-gui-getanyunit-cases' into develop 2018-01-31 15:58:55 -05:00
Dan Amlund 38491b4be8 add checks to avoid potential segfaults. use more dfhack idiomatic code 2018-01-31 20:10:40 +01:00
Dan Amlund 537e94d75a fix segfault when splatter did not have historical figure 2018-01-31 20:10:34 +01:00
lethosor 325e0b0e33 binpatch.lua: check for empty patches 2018-01-31 09:57:11 -05:00
Japa e63a871363 use the vmethod for getting improvement images. 2018-01-31 10:11:43 +05:30
Dan Amlund 2deeda11d2 add many new cases for Gui::getSelectedUnit: report list, combat log list, military screen, unit health, unit custumize, assigning to cage, viewing cage, pitting, penning, burrows, look at corpse, look at corpse piece, look at named spatter 2018-01-28 13:04:52 +01:00
Japa 8d8632908e update submodules 2018-01-28 13:45:21 +05:30
lethosor 9a1f970d2d Update submodules 2018-01-28 02:14:54 -05:00
Japa 77c6ea1d33 update xmls. 2018-01-28 10:22:16 +05:30
Japa b78b2feed2 Remove extra whitespace. 2018-01-28 10:12:50 +05:30
Japa db60ff3911 update xmls 2018-01-28 07:55:42 +05:30
Japa c0c80b626d update submodules 2018-01-27 12:12:19 +05:30
Japa 4a376752e2 Merge remote-tracking branch 'refs/remotes/DFHack/develop'
Conflicts:
	library/xml
	scripts
2018-01-26 08:21:47 +05:30
Japa e3d95daf45 Don't use globals 2018-01-26 08:19:41 +05:30
lethosor 5e0e674580 Update submodules 2018-01-25 10:56:08 -05:00
lethosor 2202c781f7 Add a dfhack.script_help() function to assist scripts 2018-01-25 10:55:00 -05:00
Japa f1b8fa305b try using the new function pointer. 2018-01-25 11:55:46 +05:30
Japa Mala Illo f33c42a49e Merge remote-tracking branch 'DFHack/develop' into remote_control
# Conflicts:
#	scripts
2018-01-24 10:04:51 +05:30
lethosor 1ba5477b63 Add designation priority support to MapCache and dig plugin
Fixes #481
2018-01-21 19:27:16 -05:00
Japa 7439f7fba7 Merge remote-tracking branch 'DFHack/develop' into remote_control
# Conflicts:
#	scripts
2018-01-19 22:11:48 +05:30
Japa e2ad956227 update xml 2018-01-16 15:54:41 +05:30
lethosor 46bc26dfe2 Update xml 2018-01-14 23:25:28 -05:00
lethosor c3bf14a300 Correct bad os-type attributes in symbols.xml 2018-01-14 22:56:35 -05:00
lethosor ce1644d655 Bump to 0.44.05-alpha1 and update submodules 2018-01-14 18:21:46 -05:00
lethosor dbe950d92d Update submodules 2018-01-13 16:51:03 -05:00
lethosor 4aa8456878 Update submodules 2018-01-12 00:28:15 -05:00
lethosor 16c4cde214 Change version to 0.44.04 and update xml 2018-01-11 12:10:21 -05:00
lethosor 2782008b42 Update tweak condition-material with new field names
dfhack/df-structures#236
2018-01-10 19:53:25 -05:00
Lethosor e35e2d389c
Merge pull request #1205 from JapaMala/remote_reader
add more world mode options to world info
2018-01-07 23:53:09 -05:00
lethosor 04523f9e5d dfhack/df-structures#231: twbt_render_map offset for x64 2017-12-29 23:40:55 -05:00
lethosor fde1e284f4 Gui::getAnyItem: support viewscreen_assign_display_itemst 2017-12-28 16:19:45 -05:00
lethosor e72474613f Add new PutItemOnDisplay job to labor management plugins
Also add building_type::DisplayFurniture to labormanager

Fixes #1208
2017-12-27 13:48:53 -05:00
lethosor 94e6e89b31 Update xml, scripts 2017-12-26 20:36:37 -05:00
lethosor 4007c39438 Update xml 2017-12-26 12:54:08 -05:00
lethosor 0eff9fa084 Bump version to 0.44.03-alpha1 and update submodules 2017-12-25 22:48:54 -05:00
lethosor 4d5c7c5927 getKeyDisplay: use enabler::GetKeyDisplay() 2017-12-25 20:14:11 -05:00
lethosor 0332a5c25a Replace a call to abort() with a VTableMissing exception
This makes some scripts crash less when the viewscreen vtable is unavailable,
for example.
2017-12-25 20:13:15 -05:00
lethosor e6651171bf json: Improve IO-related error messages 2017-12-25 14:40:06 -05:00
lethosor d6a6bf008e Update xml, stonesense
Ref #1206
2017-12-24 23:17:39 -05:00
Lethosor 692bce8507
Tabs to spaces 2017-12-24 13:50:54 -05:00
Japa 73c6209f87 Remove extra These don't actually act the same. 2017-12-24 17:22:50 +05:30
Japa 22bdc6227c add more world mode options to world info 2017-12-24 10:50:30 +05:30
lethosor d90ee0edf8 Update submodules 2017-12-23 21:15:30 -05:00
lethosor 9ae4051d33 Merge branch 'develop' of gh:dfhack/dfhack into develop 2017-12-23 20:20:58 -05:00
lethosor e7a95155ab Lua API: add get_vector() and support for renaming class methods
See dfhack/df-structures@5bdb0e8
2017-12-23 20:18:55 -05:00
Lethosor fd9f198239
Merge pull request #1203 from PatrikLundell/console
Blocked errant line feed at full buffer
2017-12-22 11:31:24 -05:00
PatrikLundell d6a51f65eb Blocked errant line feed at full buffer 2017-12-22 13:42:59 +01:00
Lethosor c7f3902e0d
Merge pull request #1197 from PatrikLundell/console
Made console prompt respect color reset
2017-12-21 12:43:10 -05:00
Lethosor 7ba43d3be2
Merge pull request #1189 from Pfhreak/autocompletebuiltins
Autocomplete built in commands (die, etc.)
2017-12-20 23:35:36 -05:00
lethosor b8d5aba0ef Update xml, scripts 2017-12-20 00:02:26 -05:00
PatrikLundell 14996a9d67 Made prompt respect color reset 2017-12-14 12:46:52 +01:00
PatrikLundell cf7dbd478a Made prompt respect color reset 2017-12-14 12:45:35 +01:00
lethosor 7721a142d8 Add a basic Lua console API 2017-12-07 14:43:27 -05:00
lethosor 622a8dacb6 Update submodules 2017-12-07 14:39:15 -05:00
Quietust 88c7e493b8 Merge ui_area_map_width into ui_menu_width, now a 2-byte array 2017-12-03 20:34:59 -06:00
Quietust c72ae8d8a7 Merge "announcements" global into d_init where it belongs 2017-12-03 20:05:08 -06:00
Quietust ec06ed09c9 update structures - add remaining Linux 64-bit offsets 2017-12-03 13:49:57 -06:00
Quietust 1489e7db82 update structures - fix unit_personality and historical_figure_info.personality 2017-12-02 22:14:04 -06:00
Quietust 4edc7a6f43
update DataFuncs to support vmethods with 12-13 parameters (#1192) 2017-12-02 21:41:44 -06:00
Quietust e174135133 update structures 2017-12-02 21:09:00 -06:00
Japa d1c1dfe2cd update xml 2017-11-30 19:46:03 +05:30
Phillip Spiess bbdf157a52 Fixup autocomplete built ins per IRC 2017-11-27 13:45:58 -08:00
Phillip Spiess 7e55efa3f7 Autocomplete built in commands (die, etc.) 2017-11-27 13:15:16 -08:00
Japa Mala Illo a0634f9ee0 Merge remote-tracking branch 'DFHack/develop' into RemoteServerUnsafe 2017-11-25 11:50:56 +05:30
Japa Mala Illo ea8347e2ca update xml 2017-11-25 11:45:30 +05:30
lethosor 35b0e962ce Fix crash on empty symbol tables 2017-11-25 01:10:47 -05:00
Japa Mala Illo 69a88e1641 Use json for server config. 2017-11-25 11:34:02 +05:30
lethosor 2c95ac411e Update xml and all uses of job_handler 2017-11-25 00:59:59 -05:00
Japa Mala Illo 272f51ef4b Merge remote-tracking branch 'remotes/DFHack/master' into RemoteServerUnsafe 2017-11-25 10:24:51 +05:30
lethosor 5795a370bc Update xml again to fix GCC build error 2017-11-23 16:01:27 -05:00
lethosor 111df1312b Update xml to 1cdab5a (last for 0.43.05) 2017-11-23 15:50:58 -05:00
Lethosor 9259cb22d2
Merge pull request #1184 from quietust/develop
update structures
2017-11-23 11:57:41 -05:00
Quietust 33a43c5bfd update structures 2017-11-04 07:50:47 -06:00
Japa f91123610e Update structures. 2017-10-30 21:51:54 +05:30
Ben Lubar d3f3ebf778
auto_ptr is deprecated - use unique_ptr instead 2017-10-04 14:49:28 -05:00
Japa Illo 3c5483df03 Change tabs to spaces to satisfy travis. 2017-10-04 09:48:12 +05:30
Japa bb1eb0b48a Use a config file to enable outside connections. 2017-10-03 19:48:37 +05:30
Japa 1d02ecff6f Add safe for remote flag to select default functions. 2017-10-03 18:56:49 +05:30
Japa cbeb241435 Listen on any address 2017-10-02 20:48:05 +05:30
Japa 8dffd48f70 Add a flag for functions considered safe for a remote computer to call. 2017-10-02 19:55:16 +05:30
lethosor 9d4c7af11c Merge branch 'develop' of gh:dfhack/dfhack into develop 2017-08-08 20:09:10 -04:00
lethosor 08656a3ca7 Strip DF folder from Ruby script paths
Fixes #1146 (temporarily, see #1147)
2017-08-08 20:08:07 -04:00
Kelly Kinkade 0b26e9aec7 Fix a couple of MSVC warnings
Use intptr_t instead of long for a handle, and add an explict cast to
eliminate a narrowing conversion warning
2017-08-07 14:13:22 -05:00
lethosor 5c33fcccbd Merge remote-tracking branch 'BenLubar/win64-warnings' into develop 2017-08-07 13:51:18 -04:00
lethosor 16fb230ef6 getAnyItem: support viewscreen_textviewerst 2017-08-05 21:38:18 -04:00
lethosor d280863bc8 Avoid iterating over "has-bad-pointers" fields of IDTYPE_STRUCT and others
dfhack/df-structures@4c224dd205
2017-08-05 21:34:16 -04:00
Ben Lubar 17a7885ef2
Fix a bunch of 64-bit Windows warnings 2017-07-21 13:30:05 -05:00
lethosor 15ed1bfd67 stl_vsprintf: avoid truncating 4096-byte strings 2017-07-13 13:08:27 -04:00
lethosor ce1158780f Fix crash in stl_vsprintf() from reusing va_list 2017-07-13 13:07:58 -04:00
lethosor d236181cdc Merge remote-tracking branch 'BenLubar/repeat-util-cancel-self' into develop 2017-07-12 16:35:24 -04:00
lethosor 3103d697d9 Add an onLoad.init-example file
Closes #1093
2017-07-12 16:30:49 -04:00
lethosor e3cd820fb1 Limit recursive runCommand() calls to 20
Addresses an issue with recursive aliases crashing (#701)
2017-07-12 16:28:21 -04:00
Ben Lubar 7fed961fcd
Make repeatUtil.cancel work even when called from the callback. Closes #1122. 2017-07-11 15:10:42 -05:00
lethosor d628212254 Lua API: Use CallWithCatchWrapper for a few more functions
This produces more readable backtraces when native functions that aren't wrapped
using wrap_function() throw exceptions.
2017-07-01 17:39:39 -04:00
lethosor 6100074ba6 Add a few MD5 and thread functions to the Lua API 2017-07-01 17:39:17 -04:00
lethosor 7a7f1df908 Redirect stdout and stderr again on Windows
DF appears to redirect them itself at an inconvenient point.

Fixes #1124 (hopefully)
2017-06-30 13:29:05 -04:00
lethosor cc0220f030 Add a "key" option to EditField and FilteredList 2017-06-27 21:10:14 -04:00
Vitaly Pronkin 6af5f3b299 fixing getItemBaseValue() for cheese, sheets and instruments 2017-06-26 09:17:23 +12:00
lethosor 10e13c532a Add "tweak cage-butcher" and some extra Building module functions
* Buildings::markedForRemoval()
* Buildings::getCageOccupants()

Closes #906
2017-06-25 15:27:21 -04:00
lethosor db375ae83b Add a Pages:getSelectedPage() helper
Equivalent to select(2, pages:getSelected()), but more readable.
2017-06-23 12:46:46 -04:00
lethosor bf8e65311b Update submodules 2017-06-23 12:43:38 -04:00
lethosor cda5cedacf Fix Gui::refreshSidebar() on topmost z-level 2017-06-23 10:30:16 -04:00
lethosor ae809afde7 Add Gui::refreshSidebar()
This handles feeding CURSOR_DOWN_Z and CURSOR_UP_Z properly, avoiding issues
when on the lowest z-level.
2017-06-23 00:02:21 -04:00
lethosor 0796fafb2a Add new built-in "alias" command
Closes #701
2017-06-19 00:15:20 -04:00
lethosor 27343e3253 Add unit and tile visibility functions 2017-06-10 21:54:08 -04:00
lethosor 9b63c451b1 Expose getUnitsInBox to Lua 2017-06-10 21:03:42 -04:00
lethosor 778ffb0971 More Units module cleanup, modernize getUnitsInBox 2017-06-10 21:02:30 -04:00
lethosor dff94fc97e replacment -> replacement 2017-06-10 19:41:59 -04:00
lethosor 0ed7e60522 getAnyUnit: support viewscreen_layer_unit_relationshipst 2017-06-10 19:06:43 -04:00
lethosor 1321a64613 Remove lots of old/unused functions from the Units module 2017-06-10 17:21:34 -04:00
lethosor ba68683964 Fix ncurses wgetch() on OS X
Ref #731
2017-06-08 13:05:31 -04:00
lethosor 8d23660d55 Expose Gui::getAny* to Lua 2017-06-08 11:21:30 -04:00
lethosor 047a66030b getAnyUnit: add support for viewscreen_unitst, viewscreen_textviewerst 2017-06-07 20:51:40 -04:00
lethosor da98a5054d Make sc-script help more helpful 2017-06-04 19:24:26 -04:00
lethosor 92c2e52e45 Fix MSVC error 2017-06-02 21:22:19 -04:00
lethosor 4eb767c3f0 Expose getDepthAt() to Lua 2017-06-02 15:39:49 -04:00
lethosor ae1aa49089 Add map parameter to Lua paintTile() and use in Painter
Also updated gui/siege-engine.lua
2017-06-02 12:42:51 -04:00
lethosor 9df35dd844 revealInDwarfmodeMap: use map y dimensions 2017-06-02 00:40:59 -04:00
lethosor 43c4a88068 Move some checks in paintTile/readTile after hooks are called 2017-06-02 00:40:14 -04:00
lethosor 346e8b91a9 Use getDwarfmodeViewDims() in getPanelLayout()
Allows C++ hooks to affect Lua scripts as well
2017-06-01 23:36:02 -04:00
lethosor 05f322ca30 Merge remote-tracking branch 'lethosor/lua-dmdims' into develop 2017-06-01 23:34:35 -04:00
lethosor b28742cbd0 Respect script path when running ruby scripts
Fixes #1099
2017-06-01 16:20:26 -04:00
lethosor d41ff4e836 Implement map parameters for Lua paintString() and fillRect(), update docs 2017-06-01 16:17:59 -04:00
lethosor 939aff3231 readTile(): add hook support and map parameter 2017-05-31 12:12:15 -04:00
lethosor f4e18b2d87 Lua: implement to_first argument in dfhack.screen.dismiss()
This was mentioned in Lua API.rst, but never actually implemented.
2017-05-30 09:17:09 -04:00
lethosor e51c5fc2cc Allow key_pen option in some widget text 2017-05-28 23:11:37 -04:00
lethosor f59be2a9a0 Expand focus strings for jobmanagement and workquota_condition viewscreens 2017-05-27 00:57:16 -04:00
lethosor 8600efd06b Make git-describe faster if no git index files have changed
Running "git commit" in core and xml touches .git/index and
.git/modules/library/xml/index, respectively, so if neither of those have
changed, neither has the git information we care about, so avoid running git
entirely (which can be slow sometimes).
2017-05-20 16:27:14 -04:00
lethosor b92095190f Update stonesense, scripts, xml 2017-05-18 20:52:41 -04:00
lethosor 01c6416824 Update submodules 2017-05-13 21:56:08 -04:00
lethosor 787c54d8a7 Remove several unused CMake and Doxygen files 2017-05-11 22:01:57 -04:00
lethosor 9e32269e90 Update xml 2017-05-09 13:52:26 -04:00
lethosor 8bda738466 df_expr_to_ref: support integer array indices 2017-05-07 16:31:30 -04:00
lethosor 55931703ac Designate the correct tile for trees with multi-tile trunks
DF always designates the southeast trunk tile, while plant.pos is the center,
which is sometimes inaccessible (see #1014)
2017-05-05 21:25:25 -04:00
lethosor adb14491d0 Fix loop in Designations::unmarkPlant() 2017-05-05 17:24:51 -04:00
lethosor 81610d0259 Update xml 2017-05-05 14:49:32 -04:00
lethosor d3c496cc2b Add getSelectedPlant() and related functions
Currently only works with the center tile of multi-tile trees
2017-05-05 14:45:46 -04:00
lethosor 1e469453fc Add Designations module, currently supporting plant/tree designations
This makes it easier for tools to properly handle designating and undesignating
trees for chopping and plants for gathering, which changed significantly in
0.40.20.

Ref #531 (?), #656, #1014, #1018, #1030, #1076
2017-05-04 21:47:12 -04:00
lethosor e3258defd7 Expose Gui::revealInDwarfmodeMap() to Lua
Closes #1085
2017-05-04 14:37:14 -04:00
lethosor cd5944689c Use find_package() to find Perl, and run it earlier
Previously, PERL_EXECUTABLE was set manually in library/CMakeLists.txt, which
caused gunzip.pl to fail if was run before that happened.
2017-04-30 17:36:42 -04:00
lethosor 71b553b305 Add a few functions to retrieve unit social activities 2017-04-28 17:25:58 -04:00
Lethosor 318cf92f0b Merge pull request #1079 from Amostubal/patch-1
fix of relations errors.
2017-04-25 21:21:03 -04:00
Amostubal bc47803948 fix of relations errors.
There is a lot more errors in this file, mostly called unk variables... I bet they have names, I've tried to figure out what they were renamed too, but I'm not fully understanding the xml.
2017-04-24 07:07:08 -05:00
lethosor 9d5b69cb20 git-describe.cmake: use 8-digit git commit abbreviations
The length here was previously determined automatically, and jumped from 7 to 8
recently, breaking devel/check-release. Since Git seems to think 8 characters is
better now, specify it explicitly to avoid future breakages.
2017-04-23 18:16:00 -04:00
lethosor 3cfbd735dc Update xml, stonesense, scripts 2017-04-23 17:14:22 -04:00
lethosor 78cb4a31b9 New tweak: condition-material (fixes bug 9905)
http://www.bay12games.com/dwarves/mantisbt/view.php?id=9905
2017-03-28 09:50:38 -04:00
lethosor fa1adbbac4 Allow lua integer writes to accept anything that can be converted to an integer
May address #1044
2017-03-18 17:55:51 -04:00
lethosor 400d22cb76 Update xml (ui_advmode_menu and ui_unit_view_mode) 2017-03-18 00:35:16 -04:00
lethosor 67f39316ce Update xml (assorted viewscreen changes) 2017-03-02 14:05:34 -05:00
lethosor 334817fa1b Add Lua API functions to determine architecture 2017-03-02 14:04:34 -05:00
lethosor 15759808e5 Fix "plug" output width for generated-creature-renamer 2017-03-02 14:04:20 -05:00
lethosor c21b7bf941 Add a Painter:key_string() method 2017-03-01 15:56:50 -05:00
lethosor 19695b4ee7 EventManager/eventful: Pass building ID pointers to event handlers
Previously, there was some disagreement over whether event handlers such as
Buildings::updateBuildings() took building pointers or building IDs shoved
into pointers. It turned out to be the latter, which, unfortunately, did not
compile on x64. Passing building IDs isn't possible in all cases, because
building event handlers can be called for recently-deleted buildings too.
Pointers to building IDs do work reliably, though.

Fixes #1003
2017-02-17 22:53:48 -05:00
lethosor a10d4ae226 Add viewscreen::feed_key method 2017-02-11 16:53:50 -05:00
lethosor f2164d27c9 ls: List scripts outside of hack/scripts
Closes #412
2017-02-05 22:11:35 -05:00
lethosor 34988e53b9 Update supported keys in keybinding help text 2017-02-05 22:03:06 -05:00
lethosor b5c7771b71 Merge remote-tracking branch 'quietust/develop' into develop
Fixes #1061
2017-02-04 15:14:10 -05:00
lethosor 7823d78cd9 Update xml and embark-tools field name 2017-02-04 14:49:21 -05:00
lethosor a8f4833188 internal_memscan: add extra check 2017-02-04 14:49:09 -05:00
Quietust cc02ced0ac Fix RTTI in Win64 - offsets are relative to the current module (e.g. the DLL), so it needs to be looked up explicitly 2017-01-21 15:16:06 -06:00
lethosor 92f890d3c6 Update xml, scripts (#994 and file_compressor fix) 2017-01-04 12:30:42 -05:00
lethosor 61d081849e xml: ui_sidebar_menus.command_line fix 2016-12-30 18:02:51 -05:00
lethosor d18beb8daf xml: Add some linux64 offsets, fix ui_sidebar_menus alignment
Fixes #1053
Fixes #1054
Fixes #1055
2016-12-29 15:33:09 -05:00
lethosor 538b07d214 Update xml and fix knowledge_scholar_category_flag::value() custom method
Allows bitfields within unions (#1047, dfhack/df-structures#169)
2016-12-27 23:24:22 -05:00
Milo Christiansen 8bd92b6a08 Add a Lua module for getting a tile's material (#1031) 2016-12-27 16:49:46 -05:00
lethosor 506d124a98 Update xml
Ref #1047, #1050
2016-12-26 19:41:34 -05:00
lethosor f3e2e5e7d4 Update xml 2016-12-11 18:04:00 -05:00
lethosor 9e0221a44e Merge remote-tracking branch 'dscorbett/bitfield-constructors' into develop 2016-12-11 17:52:00 -05:00
lethosor e8c8953cbb Re-add and update misery plugin
Closes #1037
Ref #1011
2016-12-10 18:22:32 -05:00
lethosor 3bae9d9d65 Lua API: Make bitfield.whole return an integer, not a decimal 2016-12-10 12:27:43 -05:00
David Corbett acdb369aa8 Avoid non-trivial bitfield constructors 2016-12-09 13:41:14 -05:00
lethosor 6e16a7a20c Update xml, scripts 2016-12-09 11:27:44 -05:00
lethosor 8521b830b2 Merge remote-tracking branch 'CannibalVox/job_remove' into develop 2016-12-05 15:24:37 -05:00
Stephen Baynham 595f3857b6 Reverse the param order of these two methods
The current way doesn't match other Job module methods
2016-12-01 20:13:49 -08:00
Stephen Baynham 7920f71517 Bad formatting 2016-11-25 00:25:18 -08:00
Stephen Baynham de0e211e07 Figured I could like test my code. 2016-11-24 23:35:03 -08:00
Stephen Baynham e490afdf00 Rebuilt slightly to offer bool return val
We fail on unknown general ref types now, without modifying the job at
all yet
2016-11-24 22:36:11 -08:00
Stephen Baynham 8b964ca2dc Wipe job_items vector 2016-11-21 06:51:21 -08:00
Stephen Baynham fba32f2e2f Also disconnect the job from its items. 2016-11-17 23:25:48 -08:00
Stephen Baynham 67af9f5e82 Add lua bindings for removeJob 2016-11-17 23:04:48 -08:00
Stephen Baynham 74f5df99db Add job remove method
Job remove eliminates a job's worker & holder references, if any, puts
the worker on cd, if appropriate, removes the job's postings, eliminates
the job from the global linked list, and then finally deletes it.  This
code was tested by incorporating it into autochop and it does make the
plugin work.  However, chop jobs don't have holder building references,
and anyway, with DF being 90% edge case by volume, this could use a heck
of a lot more testing.

I saw elsewhere code that prevented worker removal if the job was a
special job, and that made me feel funny so I made the job remove method
not work if the job is a special job.
2016-11-17 19:54:41 -08:00
lethosor ae59b4f5ad Update xml, scripts 2016-11-10 14:25:05 -05:00
lethosor 04ad7a0a42 Replace some instances of "cmake -E copy_if_different" with a standalone script
@JapaMala reported that CMake < 3.5 doesn't support copy_if_different with
multiple source files.

https://cmake.org/cmake/help/v3.5/release/3.5.html#command-line
2016-11-02 16:23:32 -04:00
lethosor 2c230f0d3e Improve protobuf file regeneration (no longer uses a dummy status.txt file) 2016-10-24 22:51:27 -04:00
lethosor 4fdbba0207 Only touch protobuf generated files if they actually changed 2016-10-24 22:28:51 -04:00
lethosor b19a0b4305 Update scripts, xml
Fixes #1005
2016-10-19 09:53:51 -04:00
lethosor b1e3c1088c Give loadfile() result a better name for tracebacks 2016-10-19 09:53:12 -04:00
lethosor 4c21bbd5ae Add Lua::TableInsert() helper 2016-10-15 14:55:48 -04:00
lethosor 8a138fcc4c Avoid polluting global namespace in MapCache.h 2016-10-15 14:53:10 -04:00
Japa b2424f9a59 Merge branch 'develop' of https://github.com/DFHack/dfhack into develop 2016-10-15 10:32:13 +05:30
Japa 08cc9f3188 Cast size_t to int explicitly to avoid compiler warning C4267 2016-10-15 10:31:38 +05:30
Japa 98ab357df0 Use size_t in both path methods, to avoid warning C4267 2016-10-15 10:17:38 +05:30
lethosor 9f541481ea Fix some warnings with GCC -Wall 2016-10-15 00:37:18 -04:00
Japa 980b6dd12f Update XML again. 2016-10-13 19:42:40 +05:30
Japa d5e8b5eeba Update XML 2016-10-13 19:35:40 +05:30
lethosor e6bb7357df Update xml 2016-10-08 17:09:23 -04:00
lethosor f6a91c2f30 Log architecture on startup 2016-10-08 16:58:08 -04:00
lethosor 70d3c07cdb Initial lua getDwarfmodeViewDims rewrite 2016-10-07 23:51:58 -04:00
lethosor a5338d2f59 Fix rebase_delta type mismatch
See #984. GCC wasn't complaining about this on x64 for some reason.

Also reordered includes.
2016-09-28 20:43:02 -04:00
Quietust 27d2229665 Fix follow_jmp for 64-bit code - skip REX prefix if found 2016-09-25 18:29:57 -05:00
Japa b09ee3407c Merge branch 'v0.43.03' of https://github.com/JapaMala/dfhack into develop
Conflicts:
	library/xml
	plugins/remotefortressreader.cpp
2016-08-29 22:06:37 +05:30
lethosor 41e298bdfc Update submodules 2016-08-27 15:27:57 -04:00
lethosor 85ebbf0e9c Fix df_expr_to_ref for raw userdata 2016-08-24 17:18:55 -04:00
lethosor 6ce470ad57 Add basic lua expression support to memview
Currently just supports basic field accesses (world.x, screen.y.z).
No support for world.x - 4, etc.

Closes #976
2016-08-24 16:26:34 -04:00
lethosor 7487f44fc8 Implement a helper to create lua environments with shortcuts (e.g. scr, unit)
Used in gui/gm-editor and lua

Closes #977
2016-08-23 21:47:41 -04:00
lethosor 2dccd1d0ff Add CheckedArray:__tostring() method 2016-08-22 23:18:30 -04:00
lethosor 1dab45ffed Replace lua_pushnumber with lua_pushinteger in LuaApi.cpp 2016-08-22 23:18:08 -04:00
lethosor e983e66a1a Update xml and scripts 2016-08-21 20:59:24 -04:00
lethosor 70ac99cbfa Fix Buildings::setOwner() persistence
Needed to set bld->owner_id for changes to persist across save/load

Fixes #983, thanks to Quietust
2016-08-21 20:58:40 -04:00
lethosor 98a187ca43 Update xml 2016-08-18 17:28:44 -04:00
lethosor 9e4a6d7591 Update default base address on 64-bit Linux 2016-08-18 17:28:18 -04:00
lethosor 0b6597ddb2 Stop field_offset from crashing due to missing vtables
Now, a pointer to NULL is cast to the type in question, avoiding the need to
call new() or delete() with potentially-misaligned types. Also,
virtual_identity::find has been tweaked to prevent it from crashing on NULL
vtable pointers.

This was suggested by Angavrilov.
2016-08-18 15:59:46 -04:00
lethosor c2997b9c79 Fix save_dir 2016-08-18 15:47:40 -04:00
lethosor de731b0299 Move save_dir back into cur_savegame and update submodules 2016-08-14 12:41:09 -04:00
lethosor e965f5318f Replace many includes with forward declarations in modules/Maps.h 2016-08-13 21:44:01 -04:00
lethosor 576174ea0b Lua: Add lengths of (some) containers to their string representations 2016-08-13 19:52:14 -04:00
lethosor eef6f9bfb7 Add df.new() support for char and unsigned long 2016-08-11 00:01:52 -04:00
lethosor a1ff432bf8 Restore fixed-width types in string representations of lua fields
e.g. tostring(df.new('int16_t')) was returning "<short: 0xaddr>"
2016-08-10 23:58:45 -04:00
lethosor 215afa34f3 Update for 64-bit unit changes
Includes xml, stonesense, scripts

Ref DFHack/df-structures@25cb373
2016-08-10 23:50:00 -04:00
Lethosor 6e741b1a80 Merge pull request #969 from Qartar/win64
Minor fixes/updates for Visual Studio 2015 Win64
2016-08-10 15:15:44 -04:00
lethosor 02eef95147 Fix base address for Darwin x64 2016-08-09 20:00:31 -04:00
lethosor e22b3b1de7 Use non-fixed-width types in integer identity_traits definitions
In some situations (e.g. 32-bit Linux), "intptr_t" is defined as "int", which is
equivalent to "int32_t", leading to issues with duplicate definitions. In other
situations with GCC, "intptr_t" is "long", which isn't covered by any intNN_t
types. Also, definitions for "long" already had to be added on Windows, because
no fixed-width types in MSVC are equivalent to "long".

Switching to non-fixed-width types should hopefully cover all of these
situations. If this doesn't cover any integer types that we need, it will
be caught quickly, e.g. by references to integer_traits<T> in LuaWrapper.cpp.
2016-08-08 11:46:20 -04:00
lethosor 298d16238e Remove a few unneeded includes in DataStaticsFields.cpp 2016-08-08 11:45:00 -04:00
lethosor aeac8b4fef Update xml 2016-08-05 18:04:42 -04:00
lethosor ee7357b60e x86: fix vector validity check 2016-08-05 17:51:08 -04:00
lethosor dde6901534 x86: fix lua address display 2016-08-05 17:50:49 -04:00
Japa 2fda01d90b Add support for site towers. 2016-08-03 10:22:30 +05:30
Japa 9189e3dc7e Send world buildings through remotefortressreader.cpp 2016-08-02 10:30:17 +05:30
Carter Bray 44913609c8 Fix format string warnings 2016-08-01 19:03:26 -07:00
lethosor 79377669a1 Merge remote-tracking branch 'NCommander/dwarfvet' into develop 2016-07-29 16:25:53 -04:00
lethosor 158f18106f Merge remote-tracking branch 'NCommander/vs2015' into develop 2016-07-29 15:30:32 -04:00
lethosor 55970a71ab Fix Lua::Push for enums 2016-07-29 11:06:16 -04:00
lethosor e8fe72826f Add new integer types to memscan and update find-offsets 2016-07-29 00:05:12 -04:00
lethosor dc79e2477b Expose long/[u]intptr_t to lua and fix some integer return values 2016-07-29 00:02:51 -04:00
lethosor b7856fd9f2 Use enable_if for Lua::Push specializations 2016-07-28 22:04:46 -04:00
lethosor 7b7f7a1b79 Fix support for integer fields in Lua 5.3 2016-07-28 16:36:02 -04:00
lethosor 41a81f9021 Fix some more warnings (GCC 4.8) 2016-07-28 11:00:52 -04:00
lethosor 42c620bb9c Download non-broken libstdc++ on OS X 2016-07-27 21:43:38 -04:00
lethosor 828fee532a Switch to downloading zlib.lib and SDLreal.dll on Windows 2016-07-27 21:08:24 -04:00
Vitaly Pronkin 223c83071e win64 fixes: doReadClassName, ParseVersion
cherry-picked from 2f734ae2317060edb83021f17cffc966c435ad7b
2016-07-27 20:21:57 -04:00
lethosor ddd56d7825 Fix (for win64) and avoid duplicating base address 2016-07-27 20:10:03 -04:00
lethosor 50144b60ea A few %08x to %p changes 2016-07-27 19:54:19 -04:00
Vitaly Pronkin 8916aba3bf win64 fixes (partial)
cherry-picked from 2f734ae2317060edb83021f17cffc966c435ad7b
2016-07-27 19:46:49 -04:00
Vitaly Pronkin fe18f176f7 More 64-bit fixes
Cherry-picked from 7eb3ba6
- Lua update already done in e2c6350, 4dd411e
- Excluded library/modules/Buildings.cpp
2016-07-26 23:47:53 -04:00
Vitaly Pronkin 3833ff2e09 proper 64bit address formatting 2016-07-26 23:30:50 -04:00
lethosor a684e1dd0f Merge remote-tracking branch 'lethosor/64-bit' into develop 2016-07-26 22:54:36 -04:00
Michael Casadevall e10397370b Merge branch 'develop' of github.com:DFHack/dfhack into vs2015 2016-07-11 18:59:22 -05:00
Michael Casadevall ed6fb69012 Fix whitespace spacing
Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-07-11 18:54:03 -05:00
lethosor cede0528f2 Merge branch 'develop' of https://github.com/dfhack/dfhack into develop 2016-07-06 21:00:20 -04:00
lethosor 39aa143cfa Update NEWS and submodules 2016-07-06 20:59:49 -04:00
Lethosor 4f96bdd0eb Merge pull request #950 from TC01/linux-system-tinyxml
Support linking against an external tinyxml if EXTERNAL_TINYXML is set
2016-07-06 20:37:28 -04:00
lethosor 2de2e6a983 Update CMakeLists and submodules 2016-07-06 20:30:28 -04:00
lethosor b4063352cf Fix crash in vprinterr due to va_list misuse 2016-07-03 23:33:07 -04:00
lethosor 2455e36510 Initial 64-bit support 2016-07-03 23:32:43 -04:00
lethosor 163207e362 Give more feedback for DF detection failures with mismatched XML versions
This may help address issues where people forget to read the documentation,
don't run "git submodule update", and end up with a df-structures version
that's too old (which is somewhat common, it turns out).
2016-06-30 20:42:27 -04:00
lethosor cfaba3ec71 Update various references to scripts/ and mention old git issues in Compile.rst 2016-06-29 19:38:15 -04:00
lethosor af906d6582 Remove library/scripts submodule 2016-06-29 19:06:00 -04:00
Ben Rosser ae55d2d526 Support linking against an external tinyxml if EXTERNAL_TINYXML is set
As best as I can tell, the copy of tinyxml dfhack uses is unmodified
from whenever it was first bundled. This commit adds an option to CMake,
EXTERNAL_TINYXML, that if set to ON, will attempt to link against a system
tinyxml instead of using the dfhack-bundled one.  It defaults to OFF,
so there is no change in default behavior.

The DFHACK_TINYXML variable is then set to either "tinyxml" or "dfhack-tinyxml"
so the library (and any plugins that need updating) can link against one
or the other.

The FindTinyXML.cmake script was taken from https://github.com/ros/cmake_modules
(licensed under the 3-clause BSD license).

Add license text to new CMake file.
2016-06-29 17:53:16 -04:00
Michael Casadevall d509cf2fb5 It helps when you pop pragmas
Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-06-28 09:39:46 -05:00
Michael Casadevall d49032ef73 Supress a lot of compiler noise in hopes of finding real errors. Right now, a plugin free DFHack can be built with VS2015 2016-06-28 08:34:11 -05:00
Japa b338d0218e Merge branch 'develop' of https://github.com/DFHack/dfhack into develop 2016-06-20 13:22:25 +05:30
Japa 36aafd550b Increased the message size limit in RemoteClient from 8mb to 64mb. 2016-06-20 13:17:30 +05:30
lethosor 6d1c4cd9ce Merge branch 'develop' of https://github.com/dfhack/dfhack into develop 2016-06-16 23:37:21 -04:00
lethosor a7d5c2132a update xml 2016-06-16 23:37:01 -04:00
Japa 0918efd02d fix word_wrap not returning a value. 2016-06-16 20:52:16 +05:30
lethosor 27a84a8246 Move scripts to library/scripts
git can't cope with replacing scripts/3rdparty/* submodules with a single
scripts submodule.
2016-06-15 18:45:08 -04:00
lethosor 9de4550fde Update submodules 2016-06-15 12:11:20 -04:00
lethosor 022a1bf9e8 Wrap script descriptions in `ls` output and remove description length cap 2016-06-14 21:24:27 -04:00
lethosor 4f3a2b39d7 Update xml 2016-06-14 13:21:59 -04:00
lethosor f07bc03c69 Update clsocket and Open()/Listen() usage 2016-06-14 13:21:51 -04:00
Lethosor a2b2c66798 Merge pull request #931 from warmist/advfort2
Advfort2
2016-06-14 09:45:33 -04:00
Michael Casadevall 90c7dc41ec Update where library/xml to point to current master
Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-06-13 17:10:58 -04:00
Michael Casadevall a03b32846a Modify DFHack to handle new produce() prototype. Major thanks to lethosor, and ragundo for their help in this
Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-06-13 16:57:45 -04:00
Michael Casadevall e45fbfc61d Modified dwaftvet plugin to work with latest DFHack
Initial commit of the dwarfvet plugin

Signed-off-by: Michael Casadevall <mcasadevall@ubuntu.com>
2016-06-08 04:14:59 -04:00
lethosor a47a1c83ba Update xml, clsocket 2016-06-07 08:17:40 -04:00
lethosor fa1c589391 Update xml 2016-05-30 16:58:51 -04:00
lethosor d44bc069ad Merge remote-tracking branch 'BenLubar/thread-memory-leak' into develop 2016-05-30 16:24:42 -04:00
lethosor 9fc43cff4d Make const method wrappers possible
Reverts ae3052f
Ref #935
2016-05-28 20:11:42 -04:00
lethosor 113325f885 update xml 2016-05-28 10:29:53 -04:00
lethosor ae3052f79a Make knowledge_scholar_category_flag::value() non-const
const methods can't be wrapped at the moment, at least without changing things
in DataFuncs.h
2016-05-28 10:28:22 -04:00
lethosor 4d3df60470 Update xml (offsets) 2016-05-27 17:51:01 -04:00
lethosor c1ba435058 Update version and xml 2016-05-27 17:41:23 -04:00
Ben Lubar e76258b040 knowledge category flag 2016-05-26 15:15:42 -05:00
Ben Lubar 700392ba55 Fix tinythread memory leak in two ways:
1. update to tinythread version 1.1, which provides a detach method
2. move the thread disassociation to the join function, which allows
attached threads to be joined even after they finish (this was the main
leak)

Also update RemoteServer.cpp to detach threads and delete the thread
objects instead of leaking them (although they are much smaller than the
actual threads).
2016-05-21 19:17:08 -05:00
Warmist 6c64b3441d Fixes to gui/advfort.lua 2016-05-20 13:55:59 +03:00
lethosor d93cf2cd2e Update xml 2016-05-17 23:26:21 -04:00
lethosor b7aa8aca26 Update xml 2016-05-14 22:27:21 -04:00
lethosor 1832e563b7 Update xml 2016-05-14 19:41:41 -04:00
lethosor a89251cdf8 Find job in job screen 2016-05-14 16:07:27 -04:00