Alexander Gavrilov
cb49c92b99
Allow plugins to export functions to lua with safe reload support.
...
- To ensure reload safety functions have to be wrapped. Every call
checks the loaded state and locks a mutex in Plugin. If the plugin
is unloaded, calling its functions throws a lua error. Therefore,
plugins may not create closures or export yieldable functions.
- The set of function argument and return types supported by
LuaWrapper is severely limited when compared to being compiled
inside the main library.
Currently supported types: numbers, bool, std::string, df::foo,
df::foo*, std::vector<bool>, std::vector<df::foo*>.
- To facilitate postponing initialization until after all plugins
have been loaded, the core sends a SC_CORE_INITIALIZED event.
- As an example, the burrows plugin now exports its functions.
2012-04-14 19:44:07 +04:00
Alexander Gavrilov
7a34a89f53
Add burrow subcommands to modify burrow unit and tile sets.
2012-04-14 14:12:59 +04:00
Alexander Gavrilov
2f54a48e63
Add a plugin that makes selected burrows auto-grow on digging.
2012-04-13 21:41:42 +04:00
Alexander Gavrilov
37cfb1fdcd
Add unit position and container api.
2012-04-13 16:10:19 +04:00
Alexander Gavrilov
2d8611a480
Add core api for moving items between ground and containers.
2012-04-12 18:37:27 +04:00
Alexander Gavrilov
38a8c43a25
Reverse-rebase the vtable pointers printed to stderr.log.
2012-04-12 11:21:25 +04:00
Alexander Gavrilov
583ccdcc0c
Support pre-initializing vtable pointers from symbols.xml
2012-04-12 10:54:53 +04:00
Petr Mrázek
d874c3b538
Track stonesense
2012-04-11 21:33:45 +02:00
Robert Heinrich
42e4fa79c7
tweak clear-merchant, clear-resident: mark the clothes the migrants wear as "owned" (they still drop them, though. needs more fixes)
2012-04-11 21:07:54 +02:00
Robert Heinrich
09aad951a6
Merge branch 'master' of git://github.com/angavrilov/dfhack
2012-04-11 18:23:01 +02:00
Robert Heinrich
2cf078419b
cprobe: list items worn by unit and checks if they are owned or not
2012-04-11 18:22:39 +02:00
Alexander Gavrilov
5d5502ae34
Update the item owner modification api and export it to lua.
2012-04-11 20:10:31 +04:00
Alexander Gavrilov
0c2b78b96b
Add api for manipulating burrows to the core.
2012-04-11 19:42:05 +04:00
Robert Heinrich
e8e8f29328
regrass: fix
2012-04-11 17:01:20 +02:00
Alexander Gavrilov
61245711f7
Export a few maps functions to lua.
2012-04-11 16:20:16 +04:00
Robert Heinrich
ae7ce9e5d7
zone: fixed assigning to pit/pond. regrass: look for grass events in the map block, increase amount of grass at map position instead of simply changing the tile type
2012-04-11 14:08:47 +02:00
Alexander Gavrilov
c7b922250b
More maps api refactoring and renaming.
...
getBlockAbs is a very confusing name; getTileBlock is better.
2012-04-11 12:01:27 +04:00
Alexander Gavrilov
59ddbfacb7
Implement item occupancy tracking in MapCache.
2012-04-10 20:19:41 +04:00
Alexander Gavrilov
b15d2da819
Get rid of some obsolete api functions, and restructure MapCache.
2012-04-10 18:21:19 +04:00
Robert Heinrich
7d0cfb7e80
Merge branch 'master' of git://github.com/angavrilov/dfhack
2012-04-10 10:18:38 +02:00
Alexander Gavrilov
249be0c1a0
Change SC_MAP_LOADED handling: only NULL/not NULL change is meaningful.
2012-04-10 12:11:00 +04:00
Alexander Gavrilov
93c795cfc3
Job module api tweaks: add a namespace to match others and some funcs.
2012-04-10 11:43:36 +04:00
Robert Heinrich
f8123c3b40
zone: can now assign to and from built cages. autobutcher: fixed initializing when getting SC_MAP_LOADED event while a map is currently running
2012-04-10 09:15:38 +02:00
Alexander Gavrilov
0e0740fddf
Stop printall(df.global) from breaking if there are unknown addresses.
2012-04-10 10:34:03 +04:00
Robert Heinrich
b2d976b06b
zone tool: added new filter 'nograzer'
2012-04-10 04:10:07 +02:00
Robert Heinrich
674337e3ae
added tweak clear-resident which fixes bugged migrants and makes them proper members of the fortress. added tweak clear-merchant which assimilates merchants who linger at the map edge into the fortress. updated readme.rst
2012-04-10 00:22:38 +02:00
Robert Heinrich
e26fbd4e4c
minor: updated readme.rst
2012-04-09 18:46:43 +02:00
Robert Heinrich
37f3056fdd
autobutcher: fixed behaviour of keywords 'all' and 'new'. (didn't work properly with watch, unwatch and forget)
2012-04-09 18:36:01 +02:00
Robert Heinrich
64a7168b83
added a usage example for 'autobutcher unwatch' to readme.rst
2012-04-09 16:19:06 +02:00
Robert Heinrich
8ae774fbd5
fixed wrong description of the behaviour for using keyword 'all' in autobutcher (affects all races on the watchlist, not all races in your fort)
2012-04-09 16:02:03 +02:00
Robert Heinrich
27c195995f
minor: updated readme.rst
2012-04-09 15:51:27 +02:00
Robert Heinrich
eb4aa44697
minor: replaced some tabs with spaces in readme.rst
2012-04-09 15:47:27 +02:00
Robert Heinrich
afba284283
autobutcher: added a forgotten ';'
2012-04-09 15:35:25 +02:00
Robert Heinrich
b6adfaaf0a
Merge branch 'master' of git://github.com/peterix/dfhack
2012-04-09 15:09:39 +02:00
Robert Heinrich
a9ff1d0423
autonestbox and autobutcher store settings in the savegame. added command list_export to autobutcher which prints the current settings and watchlist in a batch file format (to allow importing settings to other savegames). updated readme.rst
2012-04-09 15:03:26 +02:00
Petr Mrázek
585de77489
Track structures
2012-04-09 00:59:57 +02:00
Petr Mrázek
9bba09b78c
Fix digv command in init script example
2012-04-09 00:59:22 +02:00
Petr Mrázek
e5213d77f6
Merge https://github.com/angavrilov/dfhack
2012-04-09 00:55:31 +02:00
Robert Heinrich
f609aa0db7
zone: can now search for merchants (to allow pitting them). autobutcher: ignore merchant animals, ignore war/hunting creatures, fixed autowatch, stop spamming the console if there is nothing to report. updated readme.rst
2012-04-08 12:51:03 +02:00
Kelly Martin
53118bc986
Merge remote-tracking branch 'rossm/master'
2012-04-08 01:45:16 -05:00
Kelly Martin
ad657c68a3
Leave merchant stuff alone, even if they're certainly dwarfs.
2012-04-08 01:07:29 -05:00
Kelly Martin
de960e65f5
Stealing animals from traders is bad.
2012-04-07 23:25:40 -05:00
Kelly Martin
2e6ee0ac84
Don't assign dead animals to pastures.
2012-04-07 20:36:29 -05:00
Kelly Martin
dac84080c0
Exclude grazing units from autonestbox to avoid starving da poor boids
2012-04-07 20:26:56 -05:00
Kelly Martin
c89416a3f8
Merge remote-tracking branch 'rh73/master'
2012-04-07 12:23:31 -05:00
Kelly Martin
a52eda04c9
Merge remote-tracking branch 'origin/master'
...
Conflicts:
library/xml
plugins/stonesense
2012-04-07 12:13:10 -05:00
Kelly Martin
f931060dd9
Exclude worn items from counts for workflow
2012-04-07 12:11:53 -05:00
Alexander Gavrilov
45ae2ed67f
Pull a few utility functions into the core and publish to lua.
2012-04-07 19:08:30 +04:00
Alexander Gavrilov
e74788cb26
Add a generic facility for object finalization during stack unwind.
...
Supports two modes of finalization:
- try {...} finally {...}
- try {...} catch { ...; throw }
Argument passing discipline is designed with vararg tail calls in mind.
2012-04-07 14:21:38 +04:00
Robert Heinrich
55e059c40f
autobutcher: added keywords 'all' and 'new' for handling the whole watchlist. added option 'autowatch' which will put all new tame animal races onto the watchlist using the current default settings
2012-04-07 11:15:49 +02:00