Commit Graph

1376 Commits (ae7bf5aca66b09de6b38b4feeb77a7cf444b39a2)

Author SHA1 Message Date
Warmist 923ea3f4b0 Reactionhooks more usefull and gm-editor minor tweaks (e.g. search in containers) 2012-10-07 20:44:18 +03:00
Alexander Gavrilov 459c69046b Dissolve the World module class into a namespace.
It made accessing persistent data way too cumbersome.
2012-10-06 13:46:20 +04:00
Alexander Gavrilov 696cc4a911 Stop autobutcher and autonestbox crashing if started without world. 2012-10-06 13:07:11 +04:00
Alexander Gavrilov 6fefd09072 Fix re-enabling autobutcher after being disabled. 2012-10-06 12:51:34 +04:00
Alexander Gavrilov 5396a67465 Some tweaking and edited NEWS. 2012-10-06 12:40:46 +04:00
jj cbbb164dad ruby: add MapTile distance_to and spiral_search 2012-10-05 20:44:29 +02:00
Quietust ddcc2ee90d Should use "break" in this construct, not "continue" 2012-10-04 20:20:35 -05:00
Quietust 6b3d85eb0f Don't make teledwarf skip everything after it if there's a problem 2012-10-04 20:17:33 -05:00
Quietust faa131942c Partial rewrite of 'fastdwarf' plugin:
* add "fastdwarf 2" to use DF builtin "turbo speed" debug setting
* use Units::isCitizen() instead of race/civ check
* only scan active units, not all of them
* do both fastdwarf and teledwarf in the same loop
* teledwarf: don't use MapCache - it's faster to do it directly
* teledwarf: don't clear both occupancy flags - check unit 'prone' flag
* teledwarf: set proper unit occupancy flag at destination tile
* teledwarf: if destination tile has standing unit, make dwarf lie down
* cleanup 'fastdwarf' command
* improve help text
2012-10-04 20:14:50 -05:00
Alexander Gavrilov 9f687f64a4 Fix build. 2012-10-03 12:58:05 +04:00
Quietust 7962f24cce Display actual key bindings for Manipulator 2012-10-02 10:20:54 -05:00
jj 150704f1af ruby: raise when using unknown symbols in viewscreen.feed 2012-10-01 16:05:07 +02:00
jj fbc2d85609 ruby: rename building_isitemfree to item_isfree, add trader flag check 2012-10-01 11:14:00 +02:00
jj 4de245d691 ruby: install generated autogen after copying *.rb 2012-09-30 17:08:03 +02:00
jj 6fd002382f ruby: fix cmake dependency on codegen.out.xml 2012-09-29 12:13:04 +02:00
Alexander Gavrilov 7a74088287 Make backspace seek to top left corner in manipulator. 2012-09-29 13:01:11 +04:00
Petr Mrázek 1bac22884e xMerge https://github.com/jjyg/dfhack 2012-09-29 01:58:29 +02:00
jj 12f5e6028c manipulator: avoid NULL deref with unassigned job in unit list 2012-09-29 01:38:32 +02:00
Petr Mrázek 4258d1eb83 Merge branch 'experimental' of https://github.com/expwnent/dfhack 2012-09-29 01:31:12 +02:00
expwnent 0e124bf62b Merge branch 'teledwarf' into experimental 2012-09-28 19:17:56 -04:00
expwnent d41c4849f9 Fixed unit_grounded in teleporting dwarf tile. 2012-09-28 19:17:12 -04:00
expwnent 4b99d096da Merge branch 'teledwarf' into experimental 2012-09-28 19:07:29 -04:00
expwnent 1bde32fa5b Fixed a tile occupancy problem with teleporting dwarves. 2012-09-28 19:06:22 -04:00
jj 44a74ddc38 ruby: remove unused var 2012-09-28 22:58:26 +02:00
expwnent ce7e21f869 Merge branches 'digAll', 'misery' and 'teledwarf' into experimental 2012-09-28 16:44:08 -04:00
expwnent 79ac1a81b9 It was backwards when calling fastdwarf with just one argument. Also made it print the current status of fastdwarf when no arguments are given. 2012-09-28 16:36:37 -04:00
Petr Mrázek 53c6ee4673 Track structures and stonesense 2012-09-28 21:57:12 +02:00
jj 687657f2da manipulator: show full group when navigating labor groups 2012-09-28 19:48:28 +02:00
jj 4a495c2c7f manipulator: make cursor_down_z go to beginning of next group 2012-09-28 19:20:10 +02:00
jj ca0097b910 manipulator: better screen width usage 2012-09-28 19:20:10 +02:00
jj c4f26d0aa8 manipulator: make up/down keys wrap around 2012-09-28 19:20:04 +02:00
Alexander Gavrilov 783b218eec Try a different color scheme when highlighting squad members in tweak. 2012-09-28 18:50:01 +04:00
Alexander Gavrilov ba763b773d New tweaks for the military assign to position screen. 2012-09-28 18:01:17 +04:00
Alexander Gavrilov bd7cd690aa Implement the common suggestion of Shift-Enter in trade screens. 2012-09-28 13:32:41 +04:00
Alexander Gavrilov 164c61b638 Forbid stuff from bins in siege-engine, if forbid ammo standing order set. 2012-09-27 10:43:42 +04:00
jj 7cc29250f8 fix for updated viewlist_petst 2012-09-26 18:22:07 +02:00
jj d975ce5135 ruby: add onstatechange_register_once 2012-09-26 15:08:54 +02:00
Warmist ddc83a0a72 Another dfusion nuking (not much left :) ) 2012-09-25 11:30:38 +03:00
Warmist 0bee8c360e Reaction hooks experimentation. 2012-09-25 10:25:47 +03:00
Warmist bd2f3a9998 Moved lua out of dfusion.
Now lua is a script. supports --file (or -f) flag, usage: lua <command> or lua --file <filename> or just "lua" for interactive interpreter.
2012-09-25 00:24:37 +03:00
jj f628c3732a ruby: avoid smoothing grass/trees 2012-09-24 19:19:34 +02:00
jj a622ee52e9 ruby: fix building_alloc Trap, and init Floodgates as closed 2012-09-24 19:11:42 +02:00
jj a2bb322344 ruby: item_find now works in z/stocks 2012-09-24 15:40:35 +02:00
jj 962a057ffa Merge branch 'master' of git://github.com/angavrilov/dfhack 2012-09-23 23:31:05 +02:00
jj aefedb9887 ruby: MapTile#offset, tweak #dig to check for existing jobs 2012-09-23 23:26:57 +02:00
Alexander Gavrilov 6385128c28 Sort by units.active (arrival), and seek to top/bottom in manipulator. 2012-09-23 16:41:14 +04:00
jj f2199c2951 ruby: fix activity zone_num 2012-09-23 11:44:27 +02:00
jj f7272e4a8f ruby: use cursor as default map_tile_at arg 2012-09-23 10:58:31 +02:00
jj ebd4b94c2d ruby: add onupdate_register_once 2012-09-22 11:57:33 +02:00
Alexander Gavrilov 038d62367e Implement explicit hook priority in vmethod interpose.
This resolves a getName order conflict between power-meter and rename.
2012-09-22 13:14:06 +04:00
jj b115edcf68 ruby: return selected zone in building_find 2012-09-20 19:57:43 +02:00
Alexander Gavrilov e2d6a14720 Make manipulator re-read names and professions if change is suspected.
Namely, if it either invoked View Unit itself, or was queried
(possibly by the rename plugin) via getSelectedUnit.
2012-09-20 12:27:03 +04:00
Alexander Gavrilov 1f7c10252e Support renaming activity zones.
This one required hooking the dwarfmode render method.
2012-09-20 11:48:53 +04:00
Alexander Gavrilov 462bedb757 Fix the rename plugin and script to use the new getSelectedBuilding API. 2012-09-20 11:11:59 +04:00
Alexander Gavrilov c39a337223 Add unit/item/job/building getter hook vmethods to dfhack_viewscreen. 2012-09-20 11:11:20 +04:00
Quietust 1fd0654d63 Restore stonesense to the proper revision 2012-09-19 22:55:38 -05:00
jj e154d5447b ruby: fix building linking more 2012-09-20 01:33:10 +02:00
jj 2d5942d5d7 ruby: fix building linking 2012-09-20 00:33:22 +02:00
Warmist bef9e9af7c Merge branch 'master' of https://github.com/angavrilov/dfhack into experimental-dontmerge 2012-09-19 20:24:38 +03:00
jj b6d9863172 ruby: allow Civzone constants in building_alloc 2012-09-19 19:19:58 +02:00
Alexander Gavrilov a80f574be8 Only initialize siege engine in dwarf mode. 2012-09-19 19:52:57 +04:00
Alexander Gavrilov b5ede66224 Switch some plugins to using world load/unload instead of map.
Otherwise they apply and remove hooks every time fast travel is used.
2012-09-19 19:46:54 +04:00
Quietust 19e1711a2f Several Manipulator updates
* Add documentation to README, cleanup some docs for other plugins
* Preserve existing unit list order and cursor/scroll position
* Adjust mouse input handling, don't move cursor on left-click
2012-09-19 10:20:18 -05:00
jj 27fd3f5fc7 Merge branch 'master' of git://github.com/angavrilov/dfhack 2012-09-19 15:05:42 +02:00
jj 45c057b3d2 ruby: handle ptr-strings in df-structures 2012-09-19 14:25:14 +02:00
Alexander Gavrilov 65a382a2d7 Document some of the new stuff in the readme. 2012-09-19 15:55:08 +04:00
Warmist a02a120e2d Merge branch 'master' of https://github.com/angavrilov/dfhack into experimental-dontmerge
Conflicts:
	dfhack.init-example
	library/xml
	plugins/CMakeLists.txt
2012-09-18 23:46:16 +03:00
Quietust 69e8fcce91 Add mouse input to Manipulator, along with column labels 2012-09-18 13:57:06 -05:00
jj b470abed90 ruby: misc tweaks 2012-09-18 18:13:22 +02:00
Alexander Gavrilov a7998f71a2 Add a tweak workaround for the issue with container reactions in advmode. 2012-09-18 17:39:37 +04:00
Alexander Gavrilov f2e7ee4756 Tweak the add spatter plugin. 2012-09-18 13:15:25 +04:00
Alexander Gavrilov d70a79deb9 Follow changes in XML defs. 2012-09-18 13:11:11 +04:00
jj 57d01f0008 ruby: use ui.follow_item/unit in unit_find, show non-english names by default 2012-09-18 10:17:33 +02:00
jj 72141a3c9b ruby: use implicit init-value -1 for ref-target/refers-to in codegen 2012-09-18 10:17:32 +02:00
jj eacca723e0 ruby: fix building subtype/customtype init value 2012-09-18 10:17:32 +02:00
Alexander Gavrilov 36e44c682c Add a plugin implementing 'add spatter to item' reactions. 2012-09-17 21:15:51 +04:00
Alexander Gavrilov 613063cef4 Add a tweak to fix subtractDimension of small amounts. 2012-09-17 17:19:24 +04:00
Alexander Gavrilov 82e870c8dd Move siege engine out of devel. 2012-09-17 14:59:59 +04:00
Alexander Gavrilov f2fde21b10 Implement a slightly more sensible aiming AI in siege engine. 2012-09-17 14:45:22 +04:00
Alexander Gavrilov c1e20c6f05 Follow changes to structures. 2012-09-17 12:47:18 +04:00
Kelly Martin 58fda716e6 Explicit cast is required for MSVC. 2012-09-16 17:06:31 -05:00
Kelly Martin 847dadd3f5 Merge remote-tracking branch 'angavrilov/master' 2012-09-16 16:37:08 -05:00
Kelly Martin 38f920dd65 Merge remote-tracking branch 'q/master' 2012-09-16 16:36:51 -05:00
Warmist b6d9a3c3ad More useless stuff removed 2012-09-16 13:20:55 +03:00
Warmist 2f131178d8 Removed unused triggers folder 2012-09-15 18:05:53 +03:00
Warmist 4f9732bfda Useless files removed, small bugfix 2012-09-15 15:44:15 +03:00
Alexander Gavrilov 000e3baf27 Implement skill-based miss probability in siege engine. 2012-09-14 20:57:03 +04:00
Alexander Gavrilov 811c096c0e Vaporize liquids from barrels, and destroy bin contents in siege engine. 2012-09-14 20:22:49 +04:00
jj 5474ccacb6 Merge branch 'master' of git://github.com/angavrilov/dfhack 2012-09-14 14:30:25 +02:00
jj b05905a0ba ruby: basic stl::set<uint32> support, add Viewscreen.feed_keys 2012-09-14 13:55:22 +02:00
Alexander Gavrilov d22591e240 Fix a file descriptor leak and a crash in linux getMemRanges. 2012-09-14 12:35:55 +04:00
Alexander Gavrilov aaf5d181bd Add yet one more performance-oriented tweak for temperature updates. 2012-09-14 12:14:36 +04:00
Quietust c927623050 Rework handling of column positions, and insert a new "Happiness" column 2012-09-13 15:42:51 -05:00
Quietust 1325b70e41 Cleanup autolabor+cleanowned, fix depends/clsocket 2012-09-13 14:42:17 -05:00
Quietust 1d8c9a6a5f Merge https://github.com/danaris/dfhack 2012-09-13 14:30:44 -05:00
Quietust cae01250ff Merge branch 'master' of https://github.com/angavrilov/dfhack 2012-09-13 14:08:26 -05:00
jj a9ce19b826 ruby: add raw_rtti_classname to read real classname from RTTI info 2012-09-13 19:07:37 +02:00
Alexander Gavrilov 881fed41de Support setting workshop profile for siege engines.
Since can't use built-in viewscreen, UI limited to skills only.
2012-09-13 20:20:56 +04:00
Alexander Gavrilov 5690a26439 On second thought, remove stockpile->engine links; keep only reverse.
Bi-directional links involve the risk of crashes if the plugin
is unloaded, and the engine subsequently deconstructed.
2012-09-13 17:49:41 +04:00
Quietust ae6e0f617d Make it clear that this is from DFHack, and properly name it Dwarf Manipulator 2012-09-13 08:27:28 -05:00
jj 19a150fb38 ruby: fix dig smooth overdigging 2012-09-12 20:59:37 +02:00
Quietust c9d73cb6fb Fix crash bug when using manipulator in Arena mode 2012-09-12 13:42:16 -05:00
Alexander Gavrilov f06f9af6b8 Throw items from bins around in siege engine, like minecarts do. 2012-09-12 20:57:25 +04:00
Alexander Gavrilov 448d7e3633 Support linking siege engines to stockpiles.
Since they can't do that natively, the links object has to
be maintained in dfhack memory, and with dfhack persistence.
2012-09-12 12:15:12 +04:00
jj cda17954c8 ruby: add MapTile.dig(:Smooth) 2012-09-12 01:07:19 +02:00
Alexander Gavrilov b0938d7e0d Allow specifying arbitrary items to use in catapults. 2012-09-11 22:46:17 +04:00
Alexander Gavrilov 3a075f4bc7 Trivial siege engine aiming at units, with logic in lua. 2012-09-11 19:17:24 +04:00
Timothy Collett ccefd02ee3 Merge branch 'master' of git://github.com/angavrilov/dfhack 2012-09-10 11:56:23 -04:00
Timothy Collett 96abc903ab Merge branch 'master' of http://github.com/peterix/dfhack 2012-09-10 11:54:56 -04:00
Timothy Collett 274d6038ad Merge further changes (???) 2012-09-10 09:19:21 -04:00
Timothy Collett 270351f510 Merge branch 'master' of https://github.com/danaris/dfhack 2012-09-10 09:18:24 -04:00
Alexander Gavrilov 8ab615f6d0 Implement unit path prediction in siege engine. 2012-09-09 20:54:12 +04:00
Alexander Gavrilov 9679b7729c Clean up the movement speed calculation function and move into the core. 2012-09-09 17:04:58 +04:00
Alexander Gavrilov ec3d489bda Move curse-affected attribute value getters to the core. 2012-09-09 12:51:08 +04:00
Alexander Gavrilov a36fe25e72 Finish the effective skill computation function, and move to core. 2012-09-09 12:27:40 +04:00
Alexander Gavrilov fb88aad51d Reverse-engineer unit speed computation from DF code. 2012-09-08 21:07:18 +04:00
Alexander Gavrilov 003c3391d1 Implement aiming projectiles at random points in the designated area. 2012-09-08 15:49:46 +04:00
Alexander Gavrilov bfa6ed3e08 Support setting the target area for the siege engine. 2012-09-08 13:46:02 +04:00
Alexander Gavrilov 325e294af2 Start the siege engine plugin with code to highlight obstacles on screen. 2012-09-07 19:54:32 +04:00
Warmist 85fc3384dd Little cleanup and update to gm-editor 2012-09-07 17:25:39 +03:00
Warmist 0db873493a Merge branch 'master' of https://github.com/angavrilov/dfhack into experimental-dontmerge
Conflicts:
	dfhack.init-example
2012-09-07 17:24:38 +03:00
Alexander Gavrilov d0e630d4c3 Move steam engine out of devel, since it should be fully functional. 2012-09-06 17:10:58 +04:00
Alexander Gavrilov d5ea05ebb8 Implement a pressure plate sensitive to machine power.
When built next to a gearbox, it will monitor its powered state.
2012-09-06 12:37:29 +04:00
Warmist 3dcaee7cb9 Merge branch 'master' of https://github.com/angavrilov/dfhack into experimental-dontmerge 2012-09-05 21:55:17 +03:00
Warmist 6fc10fc268 Fixed embark anywhere to use more sane code segment search 2012-09-05 21:52:54 +03:00
jj e09b98216f ruby: fix vector[length+50] = 0 segfault 2012-09-05 20:39:13 +02:00
Alexander Gavrilov 8d876cc7d9 Support renaming some buildings, and arbitrary units, via gui script. 2012-09-05 21:27:42 +04:00
jj afbace8af6 ruby: alloc_building(:Furnace, :Smelter) 2012-09-05 19:18:21 +02:00
Alexander Gavrilov 9c6fcee9a9 Add steam engine documentation, and use barrel quality in efficiency calc. 2012-09-05 11:23:00 +04:00
Kelly Martin 96fec768c7 Merge remote-tracking branch 'angavrilov/master' 2012-09-04 12:05:05 -05:00
Alexander Gavrilov aa449a2180 Add a tweak to work around the endless temperature update bug.
This obsoletes fix/stable-temp.lua, which only fixes items once.
2012-09-03 21:11:35 +04:00
Alexander Gavrilov 1618ccf5bb Fix steam-engine build on msvc, and add a script for listing mem ranges. 2012-09-03 10:28:17 +04:00
Alexander Gavrilov 2249cb14fa Require level 3 both for water & magma, and indicate level 5 by brightness. 2012-09-02 18:57:10 +04:00
Alexander Gavrilov 3b08ee44d1 Vary the internal power consumption of the engine depending on quality. 2012-09-02 17:32:44 +04:00
Alexander Gavrilov 67630776ee Tweak steam engine raws. 2012-09-02 17:17:18 +04:00
Alexander Gavrilov 9c3843c1d4 Use new API in steam engine; always explode if destroyed with steam inside. 2012-09-02 14:59:13 +04:00
Alexander Gavrilov 3713c5ea9e Add some APIs required by steam engine to the core. 2012-09-02 14:10:58 +04:00
jj a4c028b3b7 ruby: buildings tweaks 2012-09-02 01:38:58 +02:00
Warmist 2574bb1e3d embark anywhere upgrade. 2012-09-01 21:58:01 +03:00
Alexander Gavrilov 8536785d1d Boilers made out of unsuitable materials should explode! 2012-09-01 20:46:34 +04:00
Alexander Gavrilov bae85ac77d Make the steam engine consume liquids from Z level below. 2012-09-01 17:52:51 +04:00
Alexander Gavrilov 74501d3197 Try preventing "boiling water" from freezing, and dump steam on destroy. 2012-09-01 14:42:19 +04:00
Warmist 532839a4d5 Embark anywhere ported 2012-09-01 10:54:45 +03:00
Alexander Gavrilov f158e1894d Further work on steam engine.
- Display water inside as 'boiling' by hooking item_liquid_miscst.
- Store current power in flags to avoid mess if items disappear etc.
- Suspend/unsuspend stoke jobs depending on steam level.
- Implement intelligent steam use rate and boiler capacity cap.
- Modify appearance of special tiles to display status.
2012-09-01 11:29:05 +04:00
jj acdf0ffb42 ruby: fix create building map occupancy 2012-09-01 03:35:47 +02:00
Quietust c68afdaad2 Display command key helper for Manipulator on Unit List, various tweaks 2012-08-31 20:35:35 -05:00
jj dcc9498dbc ruby: tweak apis 2012-09-01 03:22:48 +02:00
Warmist 262233aa33 Merge branch 'master' of https://github.com/angavrilov/dfhack into experimental-dontmerge 2012-08-31 23:53:31 +03:00
Alexander Gavrilov ece0833c93 Prototype steam engine workshop :)
Very broken and incomplete still.
2012-09-01 00:22:55 +04:00
jj ce608e4f6a ruby: yield announcements for further customization 2012-08-31 19:16:13 +02:00