Alexander Gavrilov
2303a25bde
Implement unconstructed building instance creation and linking into world.
...
For more flexibility, the base api is split into 3 phases:
alloc, setSize, and construct. No support for non-actual
buildings like stockpiles and activity zones at the moment.
2012-04-29 21:07:39 +04:00
Alexander Gavrilov
82a0e52a3e
Add api to check the walkable cache, and update flow_forbid in liquids.
2012-04-26 18:51:39 +04:00
Alexander Gavrilov
16ee049664
Split off the burrows api from Maps and Units.
2012-04-26 12:56:28 +04:00
Alexander Gavrilov
6ab270d129
Retrieve unit noble position info, and use it in getProfessionName.
2012-04-26 12:03:56 +04:00
Alexander Gavrilov
23a0b17ff3
Make liquids and tiletypes force rebuild of pathfinding data.
2012-04-25 18:38:43 +04:00
Alexander Gavrilov
1cd802d426
Implement unit sorting for the pen zone assignment interface.
2012-04-25 18:28:00 +04:00
Alexander Gavrilov
763a301b4f
Add a few more lua api functions, documentation, and unit sort orders.
...
Units::getProfessionName appears to work correctly for
everything except nobles.
2012-04-23 21:30:53 +04:00
Alexander Gavrilov
125cd6622a
Support sorting units in many more ui contexts.
2012-04-22 19:22:00 +04:00
Alexander Gavrilov
4af051bab3
Add a few more unit orderings, and a way to reverse direction.
2012-04-21 16:53:17 +04:00
Alexander Gavrilov
3282ac3db2
Add a hotkey command that sorts units in lists using lua comparators.
2012-04-21 15:43:52 +04:00
Alexander Gavrilov
adbd351462
Rename units.other[0] to units.active.
2012-04-21 12:46:55 +04:00
Alexander Gavrilov
0a6982f404
Enable warnings correctly on linux and fix a lot of them.
2012-04-20 13:30:37 +04:00
Alexander Gavrilov
0b32d374db
Implement SOIL/STONE substitution logic, and add compat in mapexport.
2012-04-19 23:02:30 +04:00
Alexander Gavrilov
4b87f1bcac
Refactor MapCache: make it parse everything that is known re tiles & mats.
2012-04-19 19:17:07 +04:00
Alexander Gavrilov
f655a0986d
Sync to changes in the data structure definitions.
2012-04-19 11:03:29 +04:00
Petr Mrázek
c17529a794
Track stonesense
2012-04-18 05:09:22 +02:00
Petr Mrázek
6d53ab37e0
Mass fixage
...
Updated readme.rst
Fixed up some help strings of plugin commands
Moved catsplosion and regrass to normal plugin folder
Fixed tiletypes and liquids not keeping command history properly
2012-04-18 04:12:11 +02:00
Petr Mrázek
d0e9ab49e7
Merge https://github.com/jaxad0127/dfhack
2012-04-17 21:46:57 +02:00
Petr Mrázek
bdd697f1a0
Merge https://github.com/rh73/dfhack
2012-04-17 21:46:40 +02:00
Robert Heinrich
299510f0d9
zone: don't assign to cages which are designated but not yet placed (minor fix, it's not like bad things happen without it)
2012-04-17 18:11:14 +02:00
Robert Heinrich
40f36c1912
minor stuff, use building->is_room instead of building->isRoom() which returns unexpected values
2012-04-17 16:57:41 +02:00
Jared Adams
ebd21e9249
Fix some issues with last commit
2012-04-16 20:48:08 -06:00
Petr Mrázek
7946cafc86
Merge https://github.com/jaxad0127/dfhack
2012-04-16 22:37:07 +02:00
Petr Mrázek
d2dde361ad
Merge https://github.com/rh73/dfhack
2012-04-16 22:35:46 +02:00
Petr Mrázek
ccf10a1428
Merge https://github.com/warmist/dfhack
2012-04-16 22:30:55 +02:00
Robert Heinrich
6d180d61c4
autopasture: only process domesticated own units to avoid problems with wild animals forgetting their training and going on a rampage
2012-04-16 21:37:48 +02:00
Petr Mrázek
45f9f756f0
Merge https://github.com/rh73/dfhack
...
Conflicts:
plugins/stonesense
2012-04-16 20:33:30 +02:00
Petr Mrázek
862fa9d675
Track stonesense
2012-04-16 20:19:45 +02:00
Robert Heinrich
70ebd26e6c
Merge branch 'master' of git://github.com/ab9rf/dfhack
2012-04-16 17:37:09 +02:00
Kelly Martin
43e4814147
Mod workflow to properly handle custom reactions that produce CRAFTS
2012-04-16 10:34:12 -05:00
Robert Heinrich
9560fc641c
zone: mass-assign nicknames, assign units to multiple cages inside a pasture. autobutcher: some fixes regarding autowatch and butchering caged units.
2012-04-16 16:31:12 +02:00
Robert Heinrich
e6ed81508d
autobutcher: only ignore built cages which are defined as rooms/zoos.
...
zone: allow mass-assigning of nicknames (to protect a pasture/cage from autobutcher)
2012-04-16 10:15:37 +02:00
Robert Heinrich
9c67250729
regrass: pick random grass event if tile is soil instead of always using the first one found
2012-04-16 07:03:27 +02:00
Robert Heinrich
e58a46b42b
zone: fixed filter 'trained' so it now finds war/hunting creatures (who strangely don't have a training level)
2012-04-16 03:31:49 +02:00
Robert Heinrich
4b3c8d46c1
zone: don't assign owned pets to a cage. the owner will release them, resulting into infinite hauling (df bug)
2012-04-15 23:21:36 +02:00
Robert Heinrich
7aefae17d1
autonestbox: don't assign to nestboxes which are already claimed or contain eggs.
...
bprobe: look a bit closer at nestboxes
2012-04-15 21:45:15 +02:00
Alexander Gavrilov
a1756a864c
Implement a way to do prompts from core context.
...
The trick obviously is doing it without forcing DF to wait suspended.
Fortunately, lua has built-in coroutine support, so the interactive
prompt can simply yield and rely on the external loop to do the job.
To use this however the REPL had to be replaced with lua code.
2012-04-15 21:50:22 +04:00
Robert Heinrich
6197c4e739
zone: added keyword 'not' which negates the filter followed by it (e.g. 'not grazer')
2012-04-15 19:49:50 +02:00
Robert Heinrich
8bbd43f2c9
zone: added filters to search for creatures who can be trained for war/hunting
2012-04-15 17:40:39 +02:00
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
Jared Adams
f3c7a685f5
Make tiletypes more useful
...
* Paint, filter, and brush state is now saved between calls.
* Added 'all' paint option to set material, shape, special, and variant at
the same time.
* Added tiletypes-here (like liquids here, except is uses the saved brush
settings)
* Added tiletypes-here-point (like liquids here, always only the tile under
the cursor)
* Added tiletypes-command: runs tiletypes commands seperated by ';' tokens
(affects saved state)
* Make the internal workings match liquids a bit more
* Give brush objects a descriptor string
* Make Core::cheap_tokenise available
2012-04-15 08:40:19 -06:00
Robert Heinrich
be580592ce
Merge branch 'master' of git://github.com/ab9rf/dfhack
2012-04-15 16:07:43 +02:00
Kelly Martin
005658a9cd
Add noegglayer zone filter
2012-04-15 09:04:19 -05:00
Robert Heinrich
cf0d45be78
merged stuff from peterix
2012-04-15 12:32:25 +02: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