Commit Graph

2824 Commits (9d706854bcb554b427904f7802a1ab2d1cc548f4)

Author SHA1 Message Date
lethosor 2a2ab00ca9 Add "map" parameter to a lot of drawing functions
Ref #746
2015-12-22 11:42:51 -05:00
lethosor c9eab65c96 Fix more produce() calls 2015-12-22 09:54:00 -05:00
Lethosor e3420a5e67 Merge pull request #770 from eswald/instruments
Stockflow repairs
2015-12-19 23:11:55 -05:00
lethosor f0013ced56 tabs to spaces 2015-12-19 11:16:43 -05:00
lethosor 5a1e5e1464 Expose Units::casteFlagSet() 2015-12-19 11:07:35 -05:00
lethosor 15d3815f26 Merge remote-tracking branch 'quietust/develop' into develop 2015-12-19 10:58:38 -05:00
lethosor e7d8f9b2b3 Merge branch 'develop' of https://github.com/dfhack/dfhack into develop 2015-12-18 18:42:39 -05:00
lethosor 55d5706a21 Update structures and fix various issues with plugins producing items
reaction_product::produce() takes a new unidentified vector<void*>*.
Passing a reference to an empty vector appears to work.
2015-12-18 18:40:11 -05:00
Eric Wald 4dc94a565f Adjusting stockflow order numbers where possible.
Loading 0.40 saves in 0.42 results in a different list of reactions.  Fortunately, all but the instruments should still work.
2015-12-18 07:02:29 -07:00
Eric Wald 45625318bb Stockflow reaction list repairs.
Mostly, instruments and their pieces are made through generated custom reactions, instead of as tools.
Depends on df-structures commit e551233 for full potency.
2015-12-17 22:02:30 -07:00
Eric Wald e4de341168 Preparing for MakeInstrument elimination.
Instruments are now made individually, so this type of job no longer happens.  Therefore, it will probably be removed from the job_type enum.
2015-12-17 21:45:43 -07:00
Ben Lubar 270ff61fbd add parentheses around || that should be inside && 2015-12-13 12:23:56 -06:00
Quietust 7ef815afa8 apparently, casteFlagSet is a static function, despite its usefulness... 2015-12-12 17:58:58 -06:00
Quietust eb1092da6e Update strangemood plugin according to actual game code 2015-12-12 13:46:35 -06:00
lethosor 3083b01525 Add new labors to manipulator 2015-12-12 11:26:45 -05:00
lethosor 78d6b92127 Change strangemood permitted skill checks to job checks
permitted_skills was removed in 0.42 (dfhack/df-structures@6e2e8731)
2015-12-12 11:17:00 -05:00
lethosor 817ea5e01c Add new labors to autohauler/autolabor 2015-12-09 20:03:35 -05:00
lethosor 1668984585 UNITJOB_VIEW -> UNITJOB_VIEW_UNIT 2015-12-04 23:12:37 -05:00
Japa 23a5ce69bf Send unit names over remotefortressreader 2015-11-29 00:03:26 +05:30
lethosor df61233774 Merge remote-tracking branch 'PeridexisErrant/new-scripts' into develop 2015-11-26 16:13:27 -05:00
lethosor 55397425ef Only call fix-job-postings automatically when workflow is enabled
Also, don't consider dead postings problematic
2015-11-26 10:34:46 -05:00
lethosor 2700b01765 Ensure that the correct job posting is kept (if there is one) 2015-11-25 23:35:19 -05:00
lethosor 428a0a4cfe fix-unit-occupancy: Handle invalid coordinates instead of crashing
It appears that positions of caged units brought by traders can be
invalid, in particular.
2015-11-25 22:32:54 -05:00
lethosor ff677d12ba Merge remote-tracking branch 'lethosor/confirm-lua' into develop 2015-11-25 20:41:07 -05:00
lethosor 2aeac718cc workflow: Account for job postings correctly and fix existing issues
Without removing postings correctly, it was possible to end up with
multiple workers assigned to a job that workflow had suspended
multiple times, which caused crashes if more than one worker was
assigned to the same job by DF.

This adds an additional command, fix-job-postings, that runs
automatically when loading a world and fixes:
- Multiple job postings that point to the same job
- Job postings that point to a job where posting_index == -1
  (i.e. jobs that should have no posting assigned)

Fixes #741
2015-11-25 20:33:13 -05:00
lethosor af92b3ae1f Fix some confirm plugin issues and add a simple configuration UI
- Detect null pointers in trade-related functions
- Fix typo/issues pointed out by @dscorbett
- Reorder includes
2015-11-21 20:58:49 -05:00
lethosor b7dd93b6e8 Implement most of the confirm plugin in Lua
This should make resolving future issues easier, although implementing
new confirmations in lua isn't possible yet (each one requires a line
in confirm.cpp).

This also resolves an issue with note-delete and route-delete, with
dfhack/df-structures@1bc4f61
2015-11-21 19:01:35 -05:00
lethosor 67aed56183 Allow adding plugins temporarily without modifying plugins/CMakeLists.txt
Useful to avoid issues when switching between branches that modify
plugins/CMakeLists.txt
2015-11-17 17:42:03 -05:00
PeridexisErrant 842b9c5191 Implement feature as a script, add magma option
Functionality is exactly equivalent to the plugin, but with a new option
for players who want to enable magma furnaces without spoilers.
2015-11-17 16:43:56 +09:30
PeridexisErrant 2ba9ef04e3 Replace drybuckets plugin with a script
Also closes #248, by checking job and building flags.
2015-11-17 13:55:43 +09:30
lethosor 9c4fc64ac5 Fix display issue in tweak max-wheelbarrow 2015-11-16 21:47:29 -05:00
lethosor 16b2140dec Merge remote-tracking branch 'lethosor/fix-unit-occ-speed' into develop 2015-11-16 21:39:46 -05:00
PeridexisErrant 5f8f0c72aa Remove dwarfexport plugin (obsolete)
The Runesmith utility has long been replaced by Dwarf Therapist, and
it's attribute-editing functions are very well supported directly by
DFHack.
2015-11-17 11:13:22 +09:30
PeridexisErrant 836e1a3a37 Remove mapexport plugin (obsolete)
It's been disabled for more than a year, and nobody misses it.  If that
changes, it'll still be in the git history!
2015-11-17 11:13:21 +09:30
PeridexisErrant 291787a019 Remove df2mc plugin (obsolete)
It's still got it's own repo, but it hasn't been compatible with
Minecraft for years and shouldn't be in the DFHack repo.
2015-11-17 11:13:20 +09:30
PeridexisErrant 80e4b8d3df Remove DFusion plugin and script system
It's been four years since meaningful updates, and in that time
alternatives have emerged to almost everything.  Any remaining
functionality to replace is on the issue tracker.

Simpler is better, for users and developers, and removing a legacy
system makes it easier to understand how DFHack works.
2015-11-17 11:13:19 +09:30
lethosor 7ea0e198b3 fix-unit-occupancy: Only check unit list once
Fixes #749
2015-11-16 17:25:21 -05:00
lethosor 610170b0b0 Add hooks for getDwarfmodeViewDims and getDepthAt (new) 2015-11-15 11:54:34 -05:00
lethosor fcfffd1cb6 Track state of gui hooks
Also fix a bug in drawborder() and expand color-dfhack-text to test
multiple hooks
2015-11-15 11:54:34 -05:00
lethosor fff9072b07 Add initial support for hooking into Gui-related functions 2015-11-15 11:54:34 -05:00
lethosor 928bcb6d95 military search: Don't try to pass selection in empty list to DF
Fixes #748
2015-11-15 11:15:05 -05:00
lethosor 9273c177c1 Add "confirm uniform-delete" 2015-11-11 23:14:58 -05:00
lethosor 07a310b0f2 Prevent "confirm squad-disband" from triggering unnecessarily 2015-11-11 23:14:30 -05:00
lethosor e7c3b03ada Misc. confirm plugin cleanup
This avoids the need to list newly-added classes in multiple places
(which could be extended to the search plugin) and gets rid of a few
ugly macros, along with a few other minor changes.
2015-11-11 23:00:20 -05:00
lethosor 7663a9a7a7 confirm haul-delete: Additional UI state restrictions
Fixes #744
2015-11-10 17:24:10 -05:00
lethosor 97e9312d2a Update stonesense 2015-11-08 21:17:07 -05:00
Japa 79e1c4982e Merge branch 'develop' of https://github.com/DFHack/dfhack into develop 2015-11-08 13:54:14 +05:30
Japa 4db05cc8eb Add Unit size info to remotefortressreader.cpp 2015-11-08 13:05:25 +05:30
lethosor 047168b702 Fix workshop/furnace sidebar events 2015-11-07 16:15:37 -05:00
lethosor 8117549175 Merge remote-tracking branch 'warmist/patch-6' into develop
Add furnace to fillsidebarmenu hook
2015-11-07 16:04:05 -05:00
lethosor e176c3ea05 Merge remote-tracking branch 'PeridexisErrant/docs-again' into develop 2015-11-07 15:50:11 -05:00
lethosor ba0ae9e487 Merge remote-tracking branch 'PeridexisErrant/init-flags' into develop 2015-11-07 15:23:17 -05:00
PeridexisErrant 0bb203e7c9 Replace initflags plugin with scripts
Progress towards #722
2015-11-07 23:42:14 +11:00
lethosor 3ebe59859b box-select: Fix "tiles to fill" count 2015-11-06 20:04:54 -05:00
lethosor d1cd5df314 Merge remote-tracking branch 'DoctorVanGogh/automats-floorfix' into develop 2015-11-06 19:54:06 -05:00
PeridexisErrant 7f212178ca Move unused docs to plugin source files
This way they can easily be restored when the plugins are reactivated,
but don't confuse users until then.
2015-11-07 10:13:21 +11:00
DoctorVanGogh e9be1aa657 Fix for construction over existing construction & on top of walls
Fix to allow constructions on top of (natural) down stairs
2015-11-06 19:00:43 +01:00
lethosor 5c4e28dbff Fix initial cursor position with initial entry 2015-11-05 19:09:35 -05:00
lethosor ac8038fa79 Update stonesense 2015-11-04 20:06:35 -05:00
lethosor cbf31dcb37 Merge remote-tracking branch 'PeridexisErrant/NEWS-cleanup' into develop 2015-11-04 19:54:13 -05:00
Japa ea38404727 Added bridge direction. 2015-11-03 22:38:07 +05:30
Warmist 0fa35aef3c Update eventful.cpp
Fix furnace hook not being called.
2015-11-03 18:01:41 +02:00
Warmist a503e54484 Add furnaces to sidebar fill event 2015-11-03 17:59:24 +02:00
Japa 3fd4b01829 Merge branch 'develop' of https://github.com/DFHack/dfhack into develop 2015-11-03 18:50:00 +05:30
Japa f5ca3f9e7b Made the direction info more meaningful. 2015-11-03 18:49:17 +05:30
DoctorVanGogh d692458038 Formatting 2015-11-03 10:07:27 +01:00
Lethosor f7a5574e9a Merge pull request #726 from DoctorVanGogh/zone-typo
zone: Fix typo in help text
2015-11-02 22:20:15 -05:00
DoctorVanGogh 923ce36323 zone: Fix typo in help text 2015-11-03 03:55:04 +01:00
Japa b4b90465c2 Added building direction to remotefortressreader.cpp for those buildings that have it in a meaningful way. 2015-11-02 23:22:58 +05:30
DoctorVanGogh a7fe1d9d73 Formatting 2015-11-02 05:05:17 +01:00
DoctorVanGogh 092979f362 Prevent building floor on top of constructed floor (mostly) 2015-11-02 02:51:52 +01:00
PeridexisErrant e11ce3bff4 Merge develop 2015-10-31 15:46:41 +11:00
lethosor ac71fa8070 Add isValidLabor() to Units module
Closes #711 and could avoid potential issues when editing units from
other civs with manipulator.
2015-10-30 18:41:09 -04:00
lethosor ff4f7203c5 Update stonesense 2015-10-30 17:08:39 -04:00
lethosor daf20c16bd Indicate development builds 2015-10-24 14:52:00 -04:00
lethosor 8de710f1c1 Add Renderer module - safer way to install custom renderers 2015-10-21 17:18:39 -04:00
lethosor 757c05db86 buildingplan-lib: depend on dfhack 2015-10-18 17:46:37 -04:00
lethosor dd32954cce Make buildingplan-lib a static library
This avoids building buildingplan-lib.cpp multiple times
2015-10-18 13:08:48 -04:00
lethosor c44ac8ec6e Improve handling of fatal errors and errors in dfhack.lua
* Several fatal errors that occurred during core initialization didn't
  stop initialization or set 'errorstate' properly, which caused
  update hooks and other code to crash later. This has been fixed and
  should address crashes like the one mentioned in #470.
* Errors when loading dfhack.lua now cause Lua::Open() to fail, which
  triggers a fatal error in Core::Init()
* Failure to initialize the console no longer results in a call to
  fatal() (since it didn't actually stop initialization previously)
2015-10-17 21:18:04 -04:00
lethosor 38be023d5d Fix TiletypeMaterial/tiletype_material comparison 2015-10-10 13:06:14 -04:00
Japa 46f6afada7 Merge branch 'develop' of https://github.com/DFHack/dfhack into develop 2015-10-09 23:35:39 +05:30
Japa 30c14ed914 send stockpile and civzone extents in remotefortressreader.cpp 2015-10-09 23:35:12 +05:30
lethosor 5580a255f5 Update stonesense 2015-10-03 14:42:52 -04:00
lethosor 45d095cbab Replace translate_socket_error() implementations with DescribeError() 2015-10-03 10:37:48 -04:00
lethosor d343dfd8a0 Add a function to find viewscreens (or parents) of a given type
This makes it possible for some plugins to detect the game state more
reliably - for example, prospector would previously fail when
embarking if the viewscreen_choose_start_sitest instance had any
children.
2015-10-02 21:50:55 -04:00
Japa 449e0c7578 Merge branch 'develop' of https://github.com/DFHack/dfhack into develop 2015-09-28 10:07:23 +05:30
Japa 5e43b6b2a6 Add buildigs to remotefortressreader.cpp 2015-09-28 10:06:04 +05:30
expwnent e95aea90e0 Fix CMake warning over INTERFACE_LINK_LIBRARIES / policy CMP0022. 2015-09-27 04:30:46 -04:00
lethosor 62c903b7be search: Fix crash when disabling a stockpile category
Closes #678
2015-09-21 19:25:20 -04:00
expwnent b532a56790 Merge remote-tracking branch 'dfhack/develop' into develop 2015-09-21 17:48:34 -04:00
expwnent 47378d4b85 Merge branch 'luasocket' into develop 2015-09-21 17:46:47 -04:00
expwnent fabcfcd921 Fixed trailing whitespace. 2015-09-21 17:42:30 -04:00
Japa 129218d5f8 fix whitespace. 2015-09-16 23:29:21 +05:30
Japa ed07a8478b Merge branch 'develop' of https://github.com/DFHack/dfhack into develop 2015-09-16 23:27:04 +05:30
Japa e49272854c Add basic army info to RemoteFortressReader.proto 2015-09-16 23:26:52 +05:30
Japa 5ce6fceacc Send the center with the world map, based off current embark if available, otherwise adventurer position. 2015-09-16 23:25:23 +05:30
Warmist 80fd4b1365 Some additions and fixes.
Added new functions: select, set(non)blocking, isBlocking.
Set default to non-blocking. Added "would block" to ignored errors.
2015-09-16 09:57:22 +03:00
expwnent f9fce7e6a1 Convert tab to spaces in RemoteFortressReader.proto. 2015-09-15 03:21:09 -04:00
lethosor b58ccc9e55 Fix embark-tools title alignment 2015-09-12 20:28:42 -04:00
lethosor a852ca10d7 Merge remote-tracking branches 'warmist/luasocket' and 'warmist/advfort' into develop 2015-09-12 19:59:53 -04:00
Japa 3b36a23404 Add soldier state to remotefortressreader.cpp 2015-09-07 22:41:24 +05:30
Japa 07c601be99 Merge branch 'develop' of https://github.com/DFHack/dfhack into develop
Conflicts:
	plugins/remotefortressreader.cpp
2015-09-05 15:00:03 +05:30
Japa 1a78cabd7c Add profession color and unit flags to remotefortressreader 2015-09-05 14:54:12 +05:30
lethosor 1ea2da511b Fix whitespace 2015-09-02 15:53:13 -04:00
Japa 44a670db4d Merge branch 'develop' of https://github.com/DFHack/dfhack into develop 2015-09-03 00:14:31 +05:30
Japa 6881aeac70 Enable sending of creature_raw in remotefortressreader.cpp 2015-09-03 00:13:48 +05:30
lethosor 7437400c18 command-prompt: Prevent unloading when prompt is active 2015-08-29 19:38:41 -04:00
lethosor c6ae3e11fd Rename remotefortressreader to RemoteFortressReader 2015-08-26 16:40:59 -04:00
lethosor 8292f56f63 New tweak: embark-profile-name 2015-08-25 10:12:31 -04:00
lethosor ec4a3bda54 Merge branch 'develop' into plugin-manager 2015-08-17 08:17:56 -04:00
warmist 7639420455 Update luasocket.lua 2015-08-17 10:07:20 +03:00
Japa bf7fc42710 Made remotefortressreader.cpp get the elevations from the next region over for the last line. 2015-08-17 00:11:52 +05:30
Japa f60b3e8117 Added a function to get region tiles from remotefortressreader.cpp 2015-08-16 20:28:52 +05:30
Warmist 5bb69cfe04 Add luasocket to CMakeLists.txt 2015-08-15 15:12:13 +03:00
Warmist d9c50d677f A lua interface for csockets in a spirit of luasocket 2015-08-15 15:09:12 +03:00
lethosor 735498c3f9 Fix merge conflict 2015-08-14 16:23:39 -04:00
lethosor 4fc6cb6f17 Several PluginManager improvements
* load/unload/reload are no longer restricted to plugins that exist
  on startup
* Names passed to DFHACK_PLUGIN must match the plugin's filename
  (remotefortressreader vs RemoteFortressReader, counters vs probe)
* "plug" output lists all plugins and state/command information
* Deleted plugins can be reloaded again if they are replaced
* load/unload/reload don't fail silently with broken plugins
* Built-in commands are recognized internally (e.g. "help help"
  does not display "help is not a recognized command"), although help
  for them is not yet implemented
* New command: "type" (bash-like) - shows where/how a command is
  implemented
* "plug" can accept multiple plugin names
* "ls" displays more information about unloaded/unrecognized plugins
* "load all" changed to "load -all" (or "load --all", "load -a", ...)
2015-08-14 16:11:23 -04:00
Japa a71a6d45cc Added a function to pull the world map from remotefortressreader.cpp 2015-08-14 15:36:36 +05:30
Japa 22374e6d86 Fixed remotefortressreader.cpp DF version detection. 2015-08-13 15:59:15 +05:30
Japa e4ac25d1e0 Merge branch 'develop' of https://github.com/DFHack/dfhack into develop 2015-08-13 11:26:33 +05:30
Japa a60c8d8e7c Added conditionals to remotefortressreader.cpp to make compiling for v 0.24.11 easier. 2015-08-13 11:25:59 +05:30
lethosor 05f36856f4 fix-unit-occupancy: Always provide feedback when running command 2015-08-10 11:30:21 -04:00
lethosor 9b5f42e3a9 tweak farm-plot-select: Only show controls when plots are fully built
Fixes #521
2015-08-10 10:41:47 -04:00
lethosor fcd15bfd73 Move vshook plugin to title-version and enable by default 2015-08-09 13:37:26 -04:00
lethosor bce9d98633 New plugin: fix-unit-occupancy (fixes bug 3499) 2015-08-07 14:33:38 -04:00
lethosor 44287fc3a0 remotefortressreader: Check map validity before reading map info
Fixes JapaMala/armok-vision#5
2015-08-06 13:42:13 -04:00
lethosor 090f542d49 Allow for per-plugin compile flags 2015-08-06 13:33:53 -04:00
Lethosor bc5b46dce0 Merge pull request #660 from lethosor/jsoncpp
Replace jsonxx with jsoncpp
2015-08-06 12:37:51 -04:00
lethosor e02815dc30 Fix manipulator crash when selecting from empty custom profession list 2015-07-31 16:46:00 -04:00
lethosor 01e04c24c5 Use a separate lua state in dwarfmonitor render hook 2015-07-31 14:25:33 -04:00
lethosor d02e67267a Replace jsonxx with jsoncpp 2015-07-29 15:50:33 -04:00
lethosor a90f3c3d67 stockpiles: Restrict characters in filenames when saving
Previously, it was possible to save outside of the stocksettings
directory or fail to save in a nonexistent subdirectory (e.g. when
a stockpile name had slashes in it).

Resolves #621
2015-07-29 14:17:14 -04:00
lethosor 4e45cc5bbb stocks: Use ^ and $ to match the beginning/end of item names
Closes #624
2015-07-29 13:44:32 -04:00
lethosor 7fc682b199 Fix dismissal of current screen when zooming to items 2015-07-29 11:22:38 -04:00
lethosor 825d46af51 Move ListColumn class to a separate header 2015-07-28 21:48:00 -04:00
lethosor dd7c20c848 Add safer helpers to get STRING_X keys from interface_key sets
A few plugins were using input->rbegin() previously, which crashes
if input is empty and isn't strictly guaranteed to return a
STRING_X key.
2015-07-28 18:34:29 -04:00
lethosor b73e859a37 Reorganize stocks viewscreen to fit a 25-row resolution 2015-07-28 14:37:49 -04:00
lethosor 5ca5feb855 Stop embark-tools from crashing on unload
Also enable sand indicator and mouse controls by default and refactor
2015-07-27 21:38:53 -04:00
lethosor c3c625e7bd Remove embark-tools nano (implemented in 0.40.24) 2015-07-27 18:22:18 -04:00
lethosor 889c76b147 buildingplan: Don't assume building and item type names match
There are a few building types (e.g. hatch covers) where this is not
the case.

Fixes #604
2015-07-27 14:10:55 -04:00
lethosor 6352a6e266 Expand confirm plugin and improve safety of adding/removing hooks
* New option: trade-select-all: Prompts when selecting all goods
  when some goods are already selected
* Improved trade confirmation message depending on selected goods
* Made seize and offer confirmations only display when goods in the
  appropriate columns are selected
* States of each option are now listed by "confirm help"
2015-07-27 12:03:29 -04:00
lethosor ed3cbe2e60 Add several trade-related confirmations 2015-07-27 10:05:59 -04:00
lethosor 35f229c578 Add confirmations for hauling route/stop deletion and depot removal 2015-07-27 10:05:59 -04:00
lethosor 175edf501a Add "confirm" plugin - implements a few confirmation dialogs
See #577
2015-07-27 10:05:59 -04:00
lethosor f1a6e5fbe9 tweak farm-plot-select: Don't require crops to be discovered
Crops whose seeds haven't been discovered are still listed in
menus as of 0.40.10
2015-07-24 11:17:04 -04:00
lethosor 6c55164be4 Fix a potential crash in tweak farm-plot-select
Related to #396
2015-07-24 10:54:59 -04:00
Japa 867e78b6fd Correctly identify ice material. 2015-07-04 09:22:41 +05:30
lethosor 87b1524aec search: give text input priority over cursor keys 2015-06-30 16:45:45 -04:00
lethosor 8058472dd9 Check for null pointers in several places in the search plugin
Fixes #650 (and a few other potential issues)
2015-06-30 16:20:01 -04:00
lethosor 2c734233eb New tweak: kitchen-keys
Fixes an issue where HOTKEY_KITCHEN_* bindings aren't used by DF:
http://www.bay12games.com/dwarves/mantisbt/view.php?id=614

See #526
2015-06-27 11:02:26 -04:00