Commit Graph

14110 Commits (eb742a603dcc945a09181662c9ea9138b78f81ba)
 

Author SHA1 Message Date
Myk Taylor 65114d904c fix typo in comment 2020-10-29 11:53:31 -07:00
Myk Taylor 22ac163d55 improve UX between automaterial and buildingplan
solves the confusing behavior when both automaterial and buildingplan
are enabled for constructions. the two plugins now communicate with each
other over the Lua layer to negotiate consistent behavior.

if neither plugin is enabled, the standard DF UI acts as normal

if automaterial is enabled but buildingplan is not, then automaterial
behavior is unchanged.

if buildingplan is enabled and automaterial is not then behavior is
the same as other buildings with buildingplan (no material selection
screen, screen stays on building placement screen after placement).
this commit fixes a bug, though, where buildingplan would only lay
down a single tile of contruction instead of a solid block when a
block is requested.

if both plugins are enabled but buildingplan is not enabled for the
building type then automaterial is unchanged from previous behavior,
execpt for an additional header showing the separation between
automaterial hotkeys and buildingplan hotkeys.

finally, if both plugins are enabled and buildingplan is enabled for the
building type then buildingplan behavior prevails, but the box select and
hollow designations features of automaterial are still usable and
useful. the 'Auto Mat-select', 'Reselect Type', and "Open Placement"
automaterial hotkeys are hidden in the UI and ignored in the feed. This
is because buildingplan takes over material selection, so 'Auto
Mat-select' doesn't make sense. Buildingplan also already stays on the
placement screen after placement, so 'Reselect Type' is not necessary.
And all buildingplan-placed buildings have relaxed placement
restrictions (e.g. they can be built in mid-air) so 'Open Placement' is
also not necessary. The missing options are replaced with blank lines so
the vertical alignment of all other options stays constant.

we also remove a few extra lua_pop() calls that are made superfluous by
the StackUnwinder.
2020-10-29 11:00:49 -07:00
lethosor 9344e41e0a
Update scripts 2020-10-29 00:03:22 -04:00
lethosor 08bb6ca35e
Tweak colors
Ref #1684
2020-10-29 00:03:07 -04:00
lethosor d508ad3c4b
Merge remote-tracking branch 'myk002/buildingplan_building_material_filters' into develop
Conflicts:
	docs/changelog.txt
2020-10-28 23:57:55 -04:00
Myk Taylor 5244ca106b attribute dreamfort updates to the quickfort script 2020-10-27 22:03:14 -07:00
Myk Taylor 556c935e2b update changelog 2020-10-27 22:01:27 -07:00
lethosor cf95c0ee23
Update scripts 2020-10-28 00:29:32 -04:00
lethosor ccfc1f8a53
Use keyboard formatting 2020-10-28 00:19:26 -04:00
lethosor e61839b571
Fix ordered list 2020-10-28 00:01:51 -04:00
lethosor 64114551dd
Merge remote-tracking branch 'myk002/quickfort_docs' into develop 2020-10-27 23:45:39 -04:00
lethosor 3b4d6de454
Merge remote-tracking branch 'myk002/quickfort_building_types' into develop 2020-10-27 23:14:38 -04:00
Myk Taylor 5debc43def add port of Python Quickfort's TheQuickFortress
- some bugs fixed, especially in the query blueprints
- repackaged into a single file for easier distribution
- all blueprints given labels for addressing
- meta blueprints added for blueprints that could be applied as a group
2020-10-26 21:18:22 -07:00
Myk Taylor c1af3e2817 document what happens if no types are allowed 2020-10-26 21:13:11 -07:00
lethosor 3ab9157a2d
Merge remote-tracking branch 'myk002/buildingplan_refactor5_allbuildings_squashed2' into develop 2020-10-26 21:37:41 -04:00
lethosor b723636fe2
Merge remote-tracking branch 'myk002/buildingplan_refactor4_algorithm_squashed2' into develop 2020-10-26 21:24:05 -04:00
Myk Taylor 1a69a9b483 add more important checks for matching items
stolen (with love) from advfort.lua
2020-10-26 16:54:50 -07:00
Myk Taylor 371f68f0a3 update changelog 2020-10-26 16:22:15 -07:00
Myk Taylor 292d40a6ba change hotkeys for adjusting min and max quality
to avoid 'q' and 'w' conflicts with the standard DF UI hotkeys for
roller speed.

min quality: 'qw' -> 'QW'
max quality: 'QW' - 'AS'
2020-10-26 16:11:34 -07:00
lethosor 031f2a2feb
Reduce build matrix entries 2020-10-26 01:23:24 -04:00
Myk Taylor 0e2d29cd8d increase readability of lists in dreamfort help 2020-10-25 14:25:02 -07:00
Myk Taylor ebba769a0c blueprint library playtesting fixes
- balance wings of The Saracen Crypts
- add stairs to Whirlpool Housing
- move burial script notes to message()s
2020-10-25 09:37:45 -07:00
Myk Taylor 72b6ac781b on second thought, let UI-related settings reset
no need to have quickfort_mode stay on forever
2020-10-25 02:45:03 -07:00
Myk Taylor 486bf2719b persist global buildingplan settings
this ensures that a player's preferences are saved across map reloads.
this is particularly important for the building material filters, since
item fulfillment tasks are regenerated on map load, and any changes in
settings when buildingplan is reset will change the item vectors that will
be searched for planned buildings. if the settings were allowed to reset,
then a player who thought all walls would be made out of blocks would be
surprised to find boulders and logs being used after the map is reloaded.
2020-10-25 02:37:22 -07:00
Myk Taylor 51f49b1c2c add bedroom and tomb blueprints to the library 2020-10-24 21:17:53 -07:00
Myk Taylor a0c86b8a9b rewrite quickfort user guide into
spend more space highlighting how users can use the blueprint plugin to
avoid learning how to write blueprints themselves
2020-10-24 21:14:09 -07:00
lethosor 58917b03d1
Switch away from CheckDFObject in unprotected calls
See https://github.com/DFHack/dfhack/pull/1674#issuecomment-716028460
2020-10-24 14:27:33 -04:00
Myk Taylor 3e0b0f8078 update changelog 2020-10-24 09:21:18 -07:00
Myk Taylor a2f943e7e5 don't shift UI down for track constructions
automat doesn't have UI there to avoid
2020-10-24 09:19:15 -07:00
Myk Taylor b4498a262c update more dreamfort help, add automation.json 2020-10-23 21:12:04 -07:00
Myk Taylor 83e8755e6d fix typos in quantum alias 2020-10-23 20:26:37 -07:00
Myk Taylor a3bec346a7 clarify text a bit and move stair guide 2020-10-23 20:25:56 -07:00
lethosor 488c5509fc
Merge remote-tracking branch 'myk002/buildingplan_refactor3_lua_squashed2' into develop 2020-10-23 23:07:40 -04:00
Myk Taylor e614d16e0e use Lua::CheckDFObject instead of static cast 2020-10-23 15:30:40 -07:00
Myk 55a52554ee
use CheckDFObject instead of static cast
Co-authored-by: Alan <lethosor@users.noreply.github.com>
2020-10-23 13:55:14 -07:00
lethosor c73a8a05d0
Merge remote-tracking branch 'myk002/buildingplan_refactor2_squashed2' into develop 2020-10-23 13:57:17 -04:00
lethosor 4301252ddf
Merge remote-tracking branch 'myk002/buildingplan_refactor2_squashed' into develop 2020-10-23 13:51:54 -04:00
Myk Taylor 233ce26ab5 update changelog 2020-10-23 09:45:41 -07:00
Myk Taylor bc4dd7b1a3 add walkthroughs for each dreamfort level 2020-10-23 09:41:56 -07:00
Myk Taylor 186f28a94b filters for altars, display cases, and bookcases 2020-10-23 09:11:07 -07:00
Myk Taylor 0f517f38f8 don't conflict with automaterial plugin
shift buildingplan text down so we don't overwrite each other
2020-10-22 22:01:45 -07:00
Myk Taylor 7e78d8802e migrate qf's buildings_use_blocks to buildingplan
- remove buildings_use_blocks setting from quickfort config file
- add a new Buildingplan Global Settings dialog to house global settings
- move Quickfort Mode (for legacy Python Quickfort) into that dialog
- add four settings to control how generic building materials are matched:
  - blocks
  - boulders
  - logs
  - bars
- ajust the buildingplan algorithm to register duplicate tasks for
  building material item filters, one for each type. since we track how
  many items we've matched for a filter, the first matched item will
  "win" and the extras will get detected as invalid and popped off the
  queue.
- ensure boulders, logs, and bars are scanned last, and in that order
- more global settings planned for the future! see
  http://www.bay12forums.com/smf/index.php?topic=176889.msg8202679#msg8202679
2020-10-22 21:37:49 -07:00
lethosor fa70c829ad
Merge remote-tracking branch 'lethosor/github-actions-plugins' into develop 2020-10-21 20:23:41 -04:00
lethosor a0ff7c393b
Give artifacts a unique name 2020-10-21 20:14:16 -04:00
lethosor 9357c9f888
Only upload test artifacts if tests ran 2020-10-21 20:13:50 -04:00
lethosor 00f012d334
GitHub Actions: add alternative plugin builds 2020-10-21 17:58:17 -04:00
lethosor 26505acb70
Add some cross-references and clean up 2020-10-20 01:18:25 -04:00
lethosor 2bd0e938ad
Move pathable to Lua API docs 2020-10-20 01:11:01 -04:00
lethosor 84973d1fb8
Sort plugins in Lua API.rst 2020-10-20 01:06:47 -04:00
lethosor 3a200fcd92
Expand `probe` documentation 2020-10-20 01:01:02 -04:00