Commit Graph

222 Commits (cf54b84fd631d0858b4974f1f3d44b7aac3ac0b0)

Author SHA1 Message Date
Eric Wald 2d5f7e4022 Magic number reduction: Persistent storage
Replaces explicit indices into the ints field of Stockflow persistent storage objects with enumerated values.
2014-05-04 12:55:00 -06:00
Eric Wald 723cfcf28e Attempting to repair an order object leak.
Now frees manager_order objects in the reaction_list when the plugin is disabled or the world unloaded.  However, there may still be orders leaked elsewhere.
2014-05-04 12:35:10 -06:00
Alexander Gavrilov 13584f08c5 Merge remote-tracking branch 'warmist/dev-buildings' into develop 2014-05-04 19:52:01 +04:00
Alexander Gavrilov 63d256c1e9 Adjust siege engine targeting weights.
Stop shooting at leaving caravan guards for one.
2014-04-17 22:10:43 +04:00
Alexander Gavrilov 55cea36c76 Use the new API to produce combat reports for aimed siege engine attacks.
This requires exposing the actual operator unit to lua code.
2014-04-15 19:50:23 +04:00
Eric Wald b9ed7a5cc2 Stockflow plugin v1.0 2014-04-13 15:19:03 -06:00
Warmist eb999cd0ad Another file forgotten 2014-03-07 19:58:27 +02:00
Warmist a52451a97a eventful: added support for custom workshops and a convenience function to interpose side panel generation 2014-03-07 19:41:50 +02:00
Warmist 834350012f building-hacks: added lua convenience function, made impassible tile fix optional. 2014-03-07 19:41:50 +02:00
Warmist 94b5961372 New plugin: building-hacks. Allows workshops to block liquids and consume mechanical power, connect to machines. 2014-03-07 19:41:49 +02:00
expwnent 329741f235 EventManager: added EQUIPMENT_CHANGE event and exposed it to lua. 2013-10-24 19:32:52 -04:00
expwnent e81c060627 Added EVENT_MAX just in case someone wants it. 2013-10-20 15:24:31 -04:00
expwnent 6ef360f4d6 Merge remote-tracking branch 'warmist/dev-EventManager-lua' into 0.34.11-r4 2013-10-20 14:52:40 -04:00
Warmist 0dff26aa23 Added lua interface (in eventful) for EventManager module. 2013-10-20 21:44:07 +03:00
jj 308e7b6820 fix renamed pregnancy_ptr/mystery to pregnancy_genes/caste 2013-08-10 01:57:11 +02:00
Alexander Gavrilov f3e357d161 Fix detection of GET_MATERIAL_FROM_REAGENT results in workflow.
Dereference pointer to strings. Also just return undefined
material instead of skipping the product if it still fails.
2013-04-30 19:42:51 +04:00
Robert Heinrich fd265b37d6 Added lua GUI front-end for autobutcher. 2013-04-24 23:37:05 +12:00
Warmist ab6a993689 friendship.lua: removed debug printing 2013-02-15 20:21:33 +02:00
Warmist bb5d98e895 friendship fixes. 2013-02-15 20:19:55 +02:00
Warmist 1990e2caf7 Small fix to adv site creation, now it's really centered around you 2013-01-07 02:01:59 +02:00
Warmist c22c4d009c Added convenience functions to eventful (see Lua API.rst) 2013-01-03 20:30:51 +02:00
Warmist 08f454cc81 Removed old reactionhooks.lua 2012-12-14 16:41:59 +02:00
Warmist e46d434c25 Missing lua file for eventful. 2012-12-14 16:33:26 +02:00
Warmist ddceabbfb7 Merge branch 'master' of git://github.com/jjyg/dfhack 2012-12-12 18:58:11 +02:00
jj 6bc791d985 follow df-structure rename unit.unknown8 + able_stand_* 2012-12-10 22:50:33 +01:00
Warmist 6c4f163a5e Merge branch 'master' of https://github.com/angavrilov/dfhack
Conflicts:
	NEWS
2012-12-09 14:25:31 +02:00
Kelly Martin 05dce0d2f1 Fix inadvertently prematurely terminated block comment. 2012-11-30 21:24:18 -06:00
Alexander Gavrilov 2cb594ba89 Tweak the workflow lua api: include history in output of listConstraints. 2012-11-30 14:48:05 +04:00
Warmist 57b69da1f0 Merge branch 'master' of https://github.com/angavrilov/dfhack 2012-11-29 12:13:28 +02:00
Warmist 2c9b560872 Made dfusion not stop df on input. 2012-11-28 22:13:28 +02:00
Warmist 2bbcfe912a Site spawner added to adv_tools 2012-11-26 21:04:17 +02:00
Alexander Gavrilov 2953e4c386 Implement a dialog to specify a workflow constraint with all features. 2012-11-17 20:32:39 +04:00
Quietust 55fcb7e3ca One more missed 2012-11-12 08:33:05 -06:00
Alexander Gavrilov c32f85d637 Merge remote-tracking branch 'warmist/master'
Conflicts:
	plugins/Dfusion/include/OutFile.h
2012-11-12 10:50:48 +04:00
Warmist ce8ada4419 More bug fixing 2012-11-11 22:14:00 +02:00
Warmist 3eb852a43b Added cheat commands to companion-order, (including rumrushers) 2012-11-11 21:18:59 +02:00
Alexander Gavrilov d5c31942b5 Add a way to only count locally-made items in workflow. 2012-11-11 15:56:31 +04:00
Warmist 0e4df55364 Merge branch 'master' of https://github.com/angavrilov/dfhack 2012-11-11 12:46:55 +02:00
Warmist 33f674eee2 Removed dfusion lua files. Updated plugins. 2012-11-11 12:33:54 +02:00
Warmist f1d4eac700 Pre-class remove 2012-11-11 11:58:43 +02:00
Alexander Gavrilov eb936c4ce0 Support milking and shearing in workflow. 2012-11-10 17:06:54 +04:00
Warmist 6be65690f7 Merge branch 'master' of https://github.com/angavrilov/dfhack into experimental-dontmerge 2012-11-02 20:29:27 +02:00
Warmist 5295be5fdb More work done. Only bin-plugs left (and docs) 2012-11-02 20:28:08 +02:00
Warmist 296d1cf090 More scripts for dfusion. Only fixes left, and updating bin-plugins (friendship and migrants(??)) 2012-11-02 00:50:20 +02:00
Warmist ba071468dc New way of doing things!
Now using a class for menus, also no (non script) way to use bin-plugins.
2012-11-02 00:28:16 +02:00
Warmist 209d593f21 Another day, another commit. 2012-11-01 16:00:00 +02:00
Alexander Gavrilov 79d2cb1a5c Remove the C++ version of the job output deduction code and switch to lua. 2012-10-25 12:44:23 +04:00
Alexander Gavrilov 8eebfa007c Tweak the workflow gui script to make the UI operate smoother. 2012-10-25 12:15:18 +04:00
Alexander Gavrilov 59ec9b304e Implement adding workflow constraints from gui/workflow. 2012-10-24 21:49:30 +04:00
Alexander Gavrilov 09f8e8e419 Start working on gui for workflow. 2012-10-23 21:42:03 +04:00
Warmist a3f6e9e305 Small error fix 2012-10-21 13:46:12 +03:00
Warmist 86ec66c0fb More work on dfusion. Embark anywhere script separated. 2012-10-21 13:42:55 +03:00
jj 1f7a01d685 follow rename unit.military.squad_index to squad_id in df-structures 2012-10-20 22:35:39 +02:00
Warmist da92fb9a1c Start of dfusion module. Fixed small error in memscan.lua and start of custom embark command. 2012-10-17 21:43:44 +03:00
Alexander Gavrilov ba763b773d New tweaks for the military assign to position screen. 2012-09-28 18:01:17 +04:00
Warmist 0bee8c360e Reaction hooks experimentation. 2012-09-25 10:25:47 +03:00
Alexander Gavrilov f2fde21b10 Implement a slightly more sensible aiming AI in siege engine. 2012-09-17 14:45:22 +04: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 3a075f4bc7 Trivial siege engine aiming at units, with logic in lua. 2012-09-11 19:17:24 +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
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
Alexander Gavrilov 8d876cc7d9 Support renaming some buildings, and arbitrary units, via gui script. 2012-09-05 21:27:42 +04:00
Alexander Gavrilov 41ad42d0fd Expose the liquids plugin engine to lua, and make a wrapper gui script. 2012-08-25 10:37:03 +04:00
Alexander Gavrilov b992b04f0b Remove stuff that shouldn't be in the core, and expose to lua what's left.
Specifically, any "if (verbose) { Core::printerr("blah") }" kind
of stuff definitely doesn't belong in the common API functions.
Also, ref->getUnit() is very expensive.

On the other hand, checks for crash-inducing conflicts with the
ui should be in the core api, and not in client plugins.
2012-05-20 21:57:45 +04:00
Alexander Gavrilov 4aa6dbdd00 Support sorting items in the trade screens.
Caveat: sorts items in containers independently from the container.
2012-05-18 19:18:49 +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 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 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