Warmist
80521d1bb1
add onGetSelectedBuilding to workshop overlay
...
This will make other stuff that depends on dfhack.gui.getSelectedBuilding work with workshop overlay
2016-04-10 12:28:15 +03:00
lethosor
49863a9f32
Add a file-like lua JSON wrapper
2016-04-08 17:40:14 -04:00
lethosor
b97d33ca28
moveToBuilding improvements
...
- Don't set in_building by default when use_mode is 0 (consistent with most vanilla DF items)
- make use_mode optional and default to 0 (including in Lua API)
Resolves #885
2016-04-05 11:43:02 -04:00
lethosor
d9e368cab4
Update xml
2016-04-03 21:10:02 -04:00
lethosor
e0ae7bde79
Add Lua primitives: ptr-string, pointer, ptr-vector, bit-vector, bit-array
...
These are most useful with df.reinterpret_cast, but df.new can also be used for
most of these (except ptr-string)
2016-04-03 20:48:57 -04:00
lethosor
37c81df21c
Add reverse vtable name lookup
2016-04-03 20:45:44 -04:00
lethosor
a49f313f84
update xml
2016-04-03 13:34:52 -04:00
lethosor
ec5e91bd6a
Update xml
2016-03-28 21:00:27 -04:00
lethosor
b115fdc73f
Load script paths from dfhack-config/script-paths.txt
2016-03-27 15:56:23 -04:00
lethosor
866d31f121
Update xml
2016-03-26 11:12:06 -04:00
lethosor
af4a3428a6
Split DataStaticsFields into multiple compilation units
2016-03-22 17:34:25 -04:00
lethosor
b8bbf5f545
field_offset: Use actual type instances instead of reinterpret_cast(type, 1)
...
ui_build_selector is a virtual class as of 0.42.06, so reinterpret_cast-ing it
with bad addresses will crash. 'df.new(df.ui_build_selector)' works just fine.
2016-03-22 17:27:53 -04:00
Japa
a3ddc63836
Merge branch 'develop' of https://github.com/DFHack/dfhack into develop
...
Conflicts:
plugins/remotefortressreader.cpp
2016-03-20 16:30:49 +05:30
lethosor
e505bf0a58
Update xml
2016-03-18 17:05:59 -04:00
lethosor
76793045a9
Only block keyboard events in OS X SDL_PollEvent hook without focus
...
Blocking all events causes issues with window manager controls when the window
is not focused - for example, DF doesn't resize certain screen buffers, leading
to flickering in OpenGL print modes.
2016-03-13 10:33:25 -04:00
expwnent
f8ff447cb5
Add a check to the histfig fix and tweak NEWS.
2016-03-10 08:50:03 -05:00
expwnent
fd132d3fe7
Fix persistent histfig crashbug.
2016-03-10 08:38:55 -05:00
lethosor
cbb4275a44
Update xml
2016-03-09 14:54:24 -05:00
sv-esk
dd9f1bf759
make world friend of machine and building handlers to allow use their
...
protected constructor
2016-03-09 13:03:16 +02:00
lethosor
c700847bcf
Remove a couple unneeded includes
2016-03-04 20:23:00 -05:00
lethosor
c595f7908a
Update xml
2016-03-04 20:22:09 -05:00
sv-esk
9da79544de
fix Units::isCitizen
...
fixes a lot of issues where plugins ignore non-dwarf citizens and work
with dwarf mercenaries and bards, where it shouldnot
2016-03-04 22:48:33 +02:00
lethosor
8eb39cc1d0
Merge branch 'develop' of https://github.com/dfhack/dfhack into develop
2016-03-03 23:19:03 -05:00
lethosor
0db3c72557
Update xml
2016-03-03 23:18:36 -05:00
sv-esk
d508028bcc
fix job-duplicate (do not clone posting_index)
...
if job cannot be done right now, game puts it in df.global.world.job_postings
when job finally can be done, game removes job from postings and clears posting_index
that index should not be cloned by job-duplicate(new jobs(added by vanilla way) have that value -1 always anyway)
cloning posting_index into the new job causes that job to be ignored
2016-03-03 21:32:16 +02:00
lethosor
5334bd8a6a
Bump version to 0.42.06-alpha0 and update xml
2016-02-28 11:18:27 -05:00
lethosor
5bb19a230f
getKillCount: also search kills->events
2016-02-25 15:34:56 -05:00
lethosor
25507a10f9
Add Units::getKillCount() and expose it to Lua
2016-02-25 15:21:14 -05:00
lethosor
3e44aabf12
Expose Units::getSquadName to lua
2016-02-25 15:19:35 -05:00
lethosor
297bbd6f20
Merge remote-tracking branch 'warmist/develop' into develop ( closes #772 )
2016-02-24 17:24:03 -05:00
sv-esk
83c70ccb0f
forbid manipulator editing non-citizens
2016-02-11 13:31:52 +02:00
lethosor
fafe1e9ce1
Update xml
2016-02-03 23:19:41 -05:00
Warmist
d4988c5faf
Add no handler version of lua event.
2016-02-01 22:22:12 +02:00
James Gilles
0a670bb0db
Implement #804 , move some functions to Units, colorize zone output, a
...
little cleanup
2016-02-01 11:12:06 -05:00
lethosor
2d23a848cc
git-describe: Add git xml information
2016-02-01 10:30:53 -05:00
lethosor
77466f01e0
Merge remote-tracking branch 'BenLubar/benlubar-valgrind' into develop
2016-01-31 14:52:04 -05:00
lethosor
248331a196
buildingplan: Support floodgates, grates, bars
...
See #808
2016-01-31 14:50:07 -05:00
Ben Lubar
ea9261f5b5
allow dfhack to run inside valgrind
...
valgrind replaces the readlink system call, but not the open system
call. By calling readlink first, we guarantee that /proc/self/exe is the
actual Dwarf Fortress executable and not the valgrind executable.
See also: https://bugs.kde.org/show_bug.cgi?id=86921
2016-01-31 13:34:07 -06:00
lethosor
80fd2270db
Merge branch 'develop' of https://github.com/dfhack/dfhack into develop
2016-01-31 14:22:57 -05:00
Ben Lubar
a316dfa074
set floodgate flags correctly when allocating it in lua or c++
...
https://github.com/DFHack/dfhack/blob/0.42.04-alpha2/plugins/ruby/building.rb#L63
2016-01-29 14:50:50 -06:00
lethosor
80ecbbd369
get rid of "private" comment in BitArray.h
2016-01-21 16:49:16 -05:00
Ben Lubar
675d173266
set civzone number when constructing a civzone
2016-01-18 14:46:39 -06:00
lethosor
0b2ba377be
Update xml
2016-01-18 11:49:37 -05:00
lethosor
ab8cce2a86
Update xml
2016-01-18 10:13:16 -05:00
lethosor
0bcc8dc443
exportlegends: fix day/month issues more reliably
...
Fixes #783 , #791
2016-01-09 19:28:12 -05:00
lethosor
d670ee8ab4
New tweak: block-labors
...
Prevents labors that can't be used from being toggled
Suggested at http://www.bay12forums.com/smf/index.php?topic=121451.msg6719464#msg6719464
2016-01-08 19:27:11 -05:00
lethosor
93fe222c35
Revert #719
...
No plugins built prior to the symbol naming change in 4fc6cb6f
can
be loaded in DFHack for v0.42.
2016-01-01 11:20:54 -05:00
lethosor
d0c28d3f50
Prevent plugins with active viewscreens from being unloaded
...
This requires plugins to pass plugin_self to Screen::show(), but
avoids the need to implement special checks in plugin_onstatechange
for the SC_BEGIN_UNLOAD event.
2016-01-01 11:15:29 -05:00
lethosor
ef62c044a3
Update NEWS, xml
2016-01-01 10:30:02 -05:00
lethosor
31745f4a36
Fix a couple exportlegends issues and update xml
2015-12-31 14:32:31 -05:00
lethosor
090787e927
Update xml
2015-12-31 13:41:46 -05:00
lethosor
2079093d5a
Fix new addresses in export-dt-ini
2015-12-28 23:19:02 -05:00
lethosor
22283066ca
Update xml
2015-12-28 17:30:05 -05:00
lethosor
39086acf64
Merge export-dt-ini changes from splintermind/Dwarf-Therapist
2015-12-28 15:46:42 -05:00
lethosor
c23ac50250
Always run dfhack.init-example if dfhack.init doesn't exist
...
This previously only happened if no files matching *dfhack*.init
existed
2015-12-27 16:39:10 -05:00
lethosor
e075a06486
Add search controls to all viewscreen_petst subpages
2015-12-27 15:49:10 -05:00
lethosor
d087f4f741
Expose process MD5/PE to Lua (useful in export-dt-ini)
2015-12-27 14:59:18 -05:00
lethosor
a977f274b1
Update xml
2015-12-26 20:00:09 -05:00
lethosor
fabff1ddfb
Fix df::occupation usage
2015-12-26 19:59:54 -05:00
lethosor
5263d425a2
Merge remote-tracking branch 'BenLubar/benlubar-init-args' into develop
2015-12-26 13:47:58 -05:00
Ben Lubar
106891f6e0
vim-style +-args. for example, "./dfhack +echo foo" would be equivalent to running ./dfhack and then typing "echo foo" into the console. uses shell argument splitting, so "./dfhack +somecommand 'foo bar' baz" does the right thing. See DFHack#755.
2015-12-26 12:10:44 -06:00
lethosor
9a82f59518
Merge remote-tracking branch 'BenLubar/benlubar-init-args' into develop
2015-12-26 11:49:45 -05:00
lethosor
05926d9734
New tweak: title-start-rename
...
Adds a safe rename option to the title screen "Start Playing" menu
2015-12-26 11:47:58 -05:00
lethosor
64d861bf6b
Add support for viewscreen_locationsst to various gui functions
2015-12-25 11:09:13 -05:00
lethosor
25e808be38
Update xml
2015-12-23 17:45:08 -05:00
lethosor
e3e68a8df9
Add a search option to the location occupation menu
2015-12-23 16:57:43 -05:00
lethosor
14f1e6b06c
Improve prerelease warning somewhat
2015-12-22 19:34:54 -05:00
lethosor
2a2ab00ca9
Add "map" parameter to a lot of drawing functions
...
Ref #746
2015-12-22 11:42:51 -05:00
lethosor
10c72a3d5d
Fix produce() call in modules/Items.cpp
2015-12-22 09:46:01 -05:00
lethosor
e4ff4fe64c
Update xml
2015-12-22 09:43:17 -05:00
lethosor
ef27018545
Update xml
2015-12-20 15:19:32 -05:00
lethosor
eeb0fc7a0f
update xml
2015-12-19 23:12:26 -05:00
lethosor
eb1ae54d63
Add ui_lever_target_type scan to find-offsets
2015-12-19 17:09:29 -05:00
lethosor
ea79fc692a
Update xml
2015-12-19 11:07:42 -05:00
lethosor
5a1e5e1464
Expose Units::casteFlagSet()
2015-12-19 11:07:35 -05:00
lethosor
ca29f60518
update xml
2015-12-18 23:09:27 -05:00
lethosor
55d5706a21
Update structures and fix various issues with plugins producing items
...
reaction_product::produce() takes a new unidentified vector<void*>*.
Passing a reference to an empty vector appears to work.
2015-12-18 18:40:11 -05:00
lethosor
347a112aa1
Add support for 11-argument function wrappers
...
Needed by item::addImprovementFromJob() as of 0.42:
dfhack/df-structures@f6361e2
2015-12-18 17:45:23 -05:00
Ben Lubar
9bccf457c5
Check for ui_sidebar_menus being null before using it.
2015-12-17 10:54:19 -06:00
Ben Lubar
80ec5ab043
vim-style +-args. for example, "./dfhack +echo foo" would be equivalent to running ./dfhack and then typing "echo foo" into the console. uses shell argument splitting, so "./dfhack +somecommand 'foo bar' baz" does the right thing. See DFHack#755.
2015-12-13 14:03:25 -06:00
lethosor
78d6b92127
Change strangemood permitted skill checks to job checks
...
permitted_skills was removed in 0.42 (dfhack/df-structures@6e2e8731 )
2015-12-12 11:17:00 -05:00
lethosor
1329acc516
Update xml
2015-12-11 20:34:48 -05:00
lethosor
83603fcf45
Add prerelease build flag and warning script
2015-12-11 20:27:46 -05:00
lethosor
571df39878
Update submodules
2015-12-11 16:35:42 -05:00
lethosor
7e9d6fba86
Update xml
2015-12-09 20:03:14 -05:00
lethosor
448e367d4d
Update xml
2015-12-08 17:32:13 -05:00
lethosor
a3d6d16757
Update xml
2015-12-07 17:14:46 -05:00
lethosor
02d2405d1f
Update xml
2015-12-07 16:34:47 -05:00
lethosor
49ad153d4b
Update xml
2015-12-06 17:12:46 -05:00
lethosor
3b2ace95f8
Make SDL_UpperBlit hook check core status first
2015-12-05 20:07:54 -05:00
lethosor
b63270162d
Update xml
2015-12-04 23:12:49 -05:00
lethosor
7a69b90277
Update xml
2015-12-02 16:27:51 -05:00
lethosor
8b406cc0b3
Make a separate copy of DF's SDL library to link against on OS X
...
Linking to any library with ".framework" in its path on OS X causes
that directory to be included in the include path (with -F), which
causes all of the DFHack core to be rebuilt unnecessarily when
changing DF folders.
2015-12-01 17:35:39 -05:00
lethosor
2aeac718cc
workflow: Account for job postings correctly and fix existing issues
...
Without removing postings correctly, it was possible to end up with
multiple workers assigned to a job that workflow had suspended
multiple times, which caused crashes if more than one worker was
assigned to the same job by DF.
This adds an additional command, fix-job-postings, that runs
automatically when loading a world and fixes:
- Multiple job postings that point to the same job
- Job postings that point to a job where posting_index == -1
(i.e. jobs that should have no posting assigned)
Fixes #741
2015-11-25 20:33:13 -05:00
lethosor
df4fb70be2
Provide more suggestions for unrecognized commands
2015-11-25 20:22:14 -05:00
lethosor
610170b0b0
Add hooks for getDwarfmodeViewDims and getDepthAt (new)
2015-11-15 11:54:34 -05:00
lethosor
1ff9277e12
Remove plugin export functionality (unused)
2015-11-15 11:54:34 -05:00
lethosor
fcfffd1cb6
Track state of gui hooks
...
Also fix a bug in drawborder() and expand color-dfhack-text to test
multiple hooks
2015-11-15 11:54:34 -05:00
lethosor
fff9072b07
Add initial support for hooking into Gui-related functions
2015-11-15 11:54:34 -05:00
lethosor
875ecf7827
Update Core::top_viewscreen before calling state change handlers
...
This was previously done right before SC_VIEWSCREEN_CHANGED events
were handled, meaning that code handling earlier events that used
top_viewscreen (rather than getCurViewscreen()) could refer to an
invalid viewscreen, i.e. in the tick after it was deleted.
Fixes #747
2015-11-14 21:48:51 -05:00
lethosor
2882422a3e
Don't require short script help to start with a space
...
Ref #742
2015-11-09 22:58:46 -05:00
lethosor
3fb2628921
Add a Lua implementation of next_enum_item()
2015-11-07 15:22:30 -05:00
lethosor
051244c8d6
Fix GCC compile error
2015-11-06 20:05:14 -05:00
lethosor
d1cd5df314
Merge remote-tracking branch 'DoctorVanGogh/automats-floorfix' into develop
2015-11-06 19:54:06 -05:00
DoctorVanGogh
e9be1aa657
Fix for construction over existing construction & on top of walls
...
Fix to allow constructions on top of (natural) down stairs
2015-11-06 19:00:43 +01:00
lethosor
867b733a04
Fix a few GCC warnings on Linux (GCC 4.6)
2015-11-05 21:48:13 -05:00
lethosor
8412a496dd
Remove extra check for "type" command
2015-11-05 19:09:14 -05:00
lethosor
23b02ebcf2
Update xml
2015-11-05 16:17:52 -05:00
lethosor
e2a1658124
Update xml
2015-11-04 21:42:04 -05:00
Lethosor
14707e7d81
Merge pull request #719 from DoctorVanGogh/r3compat
...
Allow loading (external) plugins compiled against r3
2015-10-31 19:12:07 -04:00
DoctorVanGogh
c6220c9703
Remove tabs/trailing whitespaces
2015-10-31 23:43:57 +01:00
Lethosor
6e5d9c23e5
Merge pull request #715 from DoctorVanGogh/webfix
...
Add 'undisturbed' flag to job item checks
2015-10-31 11:28:25 -04:00
lethosor
7da3c65079
Fix display of arrows in lua filtered list widgets
...
Fixes #718
2015-10-30 19:16:29 -04:00
lethosor
83991d2a22
plug: Don't color loaded plugins
2015-10-30 18:45:55 -04:00
lethosor
ac71fa8070
Add isValidLabor() to Units module
...
Closes #711 and could avoid potential issues when editing units from
other civs with manipulator.
2015-10-30 18:41:09 -04:00
lethosor
1250bb5204
type: Provide more useful information (script paths, plugin names)
2015-10-27 17:34:32 -04:00
DoctorVanGogh
4e0f426bba
Fix code formatting
2015-10-26 02:37:44 +01:00
DoctorVanGogh
ba53f3c035
Add 'undisturbed' flag to job item checks
2015-10-26 02:19:41 +01:00
DoctorVanGogh
fb4d16f477
Enable loading of r3 plugins
2015-10-25 00:04:49 +02:00
lethosor
8de710f1c1
Add Renderer module - safer way to install custom renderers
2015-10-21 17:18:39 -04:00
lethosor
c44ac8ec6e
Improve handling of fatal errors and errors in dfhack.lua
...
* Several fatal errors that occurred during core initialization didn't
stop initialization or set 'errorstate' properly, which caused
update hooks and other code to crash later. This has been fixed and
should address crashes like the one mentioned in #470 .
* Errors when loading dfhack.lua now cause Lua::Open() to fail, which
triggers a fatal error in Core::Init()
* Failure to initialize the console no longer results in a call to
fatal() (since it didn't actually stop initialization previously)
2015-10-17 21:18:04 -04:00
lethosor
5387c03ea0
DFHackVersion: Expose whether the built commit is tagged
2015-10-17 15:35:40 -04:00
lethosor
d3dbc6225a
Implement getViewscreenByType() in lua
2015-10-17 15:11:04 -04:00
lethosor
96df70fe0b
Use TCSADRAIN when disabling raw mode as well
2015-10-14 15:58:27 -04:00
lethosor
632a809d6f
Update xml
2015-10-11 11:39:16 -04:00
lethosor
c2267013b4
plug: List enabled state
2015-10-03 13:42:20 -04:00
lethosor
3f5c002634
Pass virtual_identity by reference
2015-10-03 09:27:24 -04:00
lethosor
d343dfd8a0
Add a function to find viewscreens (or parents) of a given type
...
This makes it possible for some plugins to detect the game state more
reliably - for example, prospector would previously fail when
embarking if the viewscreen_choose_start_sitest instance had any
children.
2015-10-02 21:50:55 -04:00
expwnent
e95aea90e0
Fix CMake warning over INTERFACE_LINK_LIBRARIES / policy CMP0022.
2015-09-27 04:30:46 -04:00
lethosor
b16e59b91c
Check for existence of save folder before attempting to log events
...
cur_savegame.save_dir can be populated when the save directory does
not yet exist after world generation (since the game can be aborted
at that stage without saving).
2015-09-26 14:26:44 -04:00
lethosor
fa60ccdd52
Don't find scripts from the last loaded world's raw/scripts folder
2015-09-26 14:26:13 -04:00
lethosor
b679a0c482
Update xml
2015-09-26 13:45:51 -04:00
lethosor
2bcf74d74c
Merge branch 'develop' of https://github.com/dfhack/dfhack into develop
2015-09-26 10:46:45 -04:00
lethosor
ec17685041
CMake: Add compiler checks and GCC version checks
2015-09-26 10:46:29 -04:00
expwnent
dfe9ec90f2
Update XML.
2015-09-25 19:43:14 -04:00
expwnent
a188b9d567
Merge branch 'third-party-scripts' into develop
2015-09-25 17:48:25 -04:00
expwnent
5bcff42800
Add third party scripts.
2015-09-23 23:46:26 -04:00
lethosor
788860efb6
Log more information about version information on startup
...
May help address #653
2015-09-22 20:01:05 -04:00
lethosor
91a1836439
Fix a few issues with init file variations
...
* GCC does not allow std::string instances or enums without a base
type to be passed as varargs
* Fixed path concatenation issue causing dfhack.init to not be loaded
2015-09-21 18:57:58 -04:00
expwnent
2c9b268184
Merge pull request #689 from expwnent/develop
...
Generalize dfhack.init so it looks for more files in more places, for onload, onunload, etc.
2015-09-21 17:33:52 -04:00
expwnent
af90d14cb2
Use shenanigans to make a certain table const.
2015-09-21 17:24:51 -04:00
lethosor
051a1f9661
Update xml
2015-09-19 18:00:59 -04:00
lethosor
a56a427d12
Make Filesystem::is* functions handle nonexistent paths properly
...
If stat() failed, these functions could read from an uninitialized
stat struct and return "true" for paths that didn't exist.
2015-09-19 17:34:58 -04:00
expwnent
5bf3093139
Now it looks for dfhack*.init instead of just dfhack.init, onLoad*.init instead of just onLoad.init, etc.
2015-09-15 07:27:42 -04:00
lethosor
d696832efa
Merge branch '3rd-party-scripts' into develop
2015-09-14 16:52:13 -04:00
lethosor
9eb86c7e38
Support additional script search paths
...
These can currently be added/removed from C++ or through the Lua API.
2015-09-06 16:23:02 -04:00
lethosor
66c7a461fd
Don't attempt to copy non-files into dfhack-config
2015-09-03 15:02:51 -04:00
lethosor
9eac4585b1
keybinding: support 0-9, F10-F12
2015-09-02 15:56:53 -04:00
lethosor
949e4d42cf
Remove MacPool.*
2015-08-29 19:42:32 -04:00
lethosor
906fba9b54
Update xml
2015-08-26 16:41:04 -04:00