Alexander Gavrilov
14709e5d45
Add an official core lua context, and allow plugins to send events to it.
...
- This context requires core suspend lock and asserts it in a few places.
- Special 'event' objects are introduced. They can be invoked as
functions, in which case they iterate all their fields and call
them as functions. Errors are printed and consumed.
- When a plugin is opened by the core context, events registered in
a special array are linked to it. The system is organized so as to
avoid even trying to pass the event to lua if the module isn't loaded.
2012-04-15 19:09:25 +04:00
Petr Mrázek
c69af6ab9e
Fix missing lua linkage in burrows plugin.
2012-04-15 01:58:02 +02:00
Petr Mrázek
fa063e2936
Track structures, fix trivial problem in zone plugin
2012-04-15 00:35:59 +02:00
Petr Mrázek
45ca8c6ac1
Merge https://github.com/angavrilov/dfhack
2012-04-15 00:13:39 +02:00
Petr Mrázek
c52eb517b0
Merge https://github.com/rh73/dfhack
2012-04-15 00:12:38 +02:00
Petr Mrázek
fa6ecacda9
Merge https://github.com/warmist/dfhack
2012-04-15 00:12:06 +02:00
Robert Heinrich
9f95e67c75
tweak makeown: converts MERCHANT to TRADER (otherwise you can't assign jobs to kidnapped merchants.
...
zone: fixed a bug which could lead to units being assigned to more than one cage and/or accidentally marked for slaughter
2012-04-14 19:06:03 +02:00
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
Petr Mrázek
bbf28eb33d
Disable df2minecraft again.
2012-04-14 14:15:46 +02:00
Robert Heinrich
2100a95ad5
zone: fixed major derp (assign commands would accidentally free caged creatures). tweak: added cheat to kidnap caravan escorts (works fine even for other races, does NOT work for traders because they can't be assigned any labors for whatever reason)
2012-04-14 13:36:22 +02:00
Warmist
a2a47c5d63
Fix to init (no need to add " around). Added experimental (crashy as hell) tools.project
2012-04-14 13:30:48 +03: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
Robert Heinrich
09608467c1
tweak fixmigrant: updated help text
2012-04-12 22:44:53 +02:00
Alexander Gavrilov
2d8611a480
Add core api for moving items between ground and containers.
2012-04-12 18:37:27 +04:00
Robert Heinrich
7331485b46
removed tweak-merchant and tweak-resident, combined both commands into tweak-migrant. added worn items to their uniform so they don't drop their clothes instantly
2012-04-12 14:40:39 +02:00
Robert Heinrich
2caf3fb064
tweak: removed stuff, added new command 'fixmigrants' which will deal with merchants (traders) and other types of bugged migrants. having more than one command for a bug which is basically the same makes no sense.
2012-04-11 22:29:56 +02: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
Robert Heinrich
e8e8f29328
regrass: fix
2012-04-11 17:01:20 +02: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
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
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
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
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
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
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
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
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
Robert Heinrich
e3fb922f53
fixed handling of units in cages who have an invalid map pos.
2012-04-07 06:47:32 +02:00
Robert Heinrich
c5fc8aab9f
autobutcher: now accepts list of races in one command
2012-04-07 05:05:42 +02:00