From df3b791665f5cb43b286d2392622d76a75827d3a Mon Sep 17 00:00:00 2001 From: Warmist Date: Sun, 11 Nov 2012 17:19:37 +0200 Subject: [PATCH] Fixed error in dfusion and added some readme. --- NEWS | 8 +++++++- Readme.rst | 22 +++++++++++++++------- plugins/Dfusion/include/OutFile.h | 2 +- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/NEWS b/NEWS index 51321be95..ad340447e 100644 --- a/NEWS +++ b/NEWS @@ -12,11 +12,16 @@ DFHack future - removebadthoughts: add --dry-run option New scripts: - region-pops: displays animal populations of the region and allows tweaking them. + - lua: lua interpreter. + - dfusion: misc scripts with a text based menu. + - embark: lets you embark anywhere. New GUI scripts: - gui/guide-path: displays the cached path for minecart Guide orders. - gui/workshop-job: displays inputs of a workshop job and allows tweaking them. - gui/workflow: a front-end for the workflow plugin. - gui/assign-rack: works together with a binary patch to fix weapon racks. + - gui/gm-editor: an universal editor for lots of dfhack things. + - gui/companion-order: a adventure mode command interface for your companions. Workflow plugin: - properly considers minecarts assigned to routes busy. - code for deducing job outputs rewritten in lua for flexibility. @@ -29,7 +34,8 @@ DFHack future properly designated barracks be used again for storage of squad equipment. New Search plugin by falconne: Adds an incremental search function to the Stocks, Trading and Unit List screens. - + Dfusion plugin: + Reworked to make use of lua modules, now all the scripts can be used from other scripts. DFHack v0.34.11-r2 diff --git a/Readme.rst b/Readme.rst index d9021c7cb..668d8be50 100644 --- a/Readme.rst +++ b/Readme.rst @@ -1611,19 +1611,17 @@ twice. dfusion ------- -This is the DFusion lua plugin system by warmist/darius, running as a DFHack plugin. +This is the DFusion lua plugin system by Warmist, running as a DFHack plugin. There are two parts to this plugin: an interactive script that shows a text based menu and lua modules. Some of the functionality of is intentionaly left out of the menu: + :Friendship: a binary plugin that allows multi race forts (to use make a script that imports plugins.dfusion.friendship and use Friendship:install{table} table should contain list of race names.) + :Embark: a binary plugin that allows multi race embark (to use make a script that imports plugins.dfusion.embark and use Embark:install{table} table should contain list of race names or list of pairs (race-name, caste_id)). -See the bay12 thread for details: http://www.bay12forums.com/smf/index.php?topic=69682.15 +See the bay12 thread for details: http://www.bay12forums.com/smf/index.php?topic=93317.0 -Confirmed working DFusion plugins: - -:simple_embark: allows changing the number of dwarves available on embark. .. note:: * Some of the DFusion plugins aren't completely ported yet. This can lead to crashes. - * This is currently working only on Windows. - * The game will be suspended while you're using dfusion. Don't panic when it doen't respond. + * The game will be suspended while you're using dfusion. Don't panic when it doesn't respond. misery ------ @@ -1836,6 +1834,16 @@ deathcause Focus a body part ingame, and this script will display the cause of death of the creature. +lua +=== +There are three ways to invoke this command: + 1. without any parameters - starts an interactive lua interpreter + 2. -f "filename" or --file "filename" - loads and runs the file indicated by filename + 3. -s ["filename"] or --save ["filename"] - loads and runs the file indicated by filename from save directory. If filename is not supplied it loads "dfhack.lua" + +embark +====== +Allows to embark anywhere. Currently windows only. ======================= In-game interface tools diff --git a/plugins/Dfusion/include/OutFile.h b/plugins/Dfusion/include/OutFile.h index 665a1e132..2ba9ecc80 100644 --- a/plugins/Dfusion/include/OutFile.h +++ b/plugins/Dfusion/include/OutFile.h @@ -105,7 +105,7 @@ public: void GetText(char *ptr); size_t GetTextSize(); void LoadSymbols(); - vSymbol GetSymbols(){LoadSymbols();return symbols;}; + const vSymbol& GetSymbols(){LoadSymbols();return symbols;}; void PrintSymbols(); void PrintRelocations(); protected: