Commit Graph

5350 Commits (0559af9f1343d5c5be04c03ed26770406f60b6e8)

Author SHA1 Message Date
Myk Taylor 56c8927316
better description string for inspection overlay 2023-02-26 09:49:07 -08:00
Myk Taylor 18ad29dde4
show queue position 2023-02-26 09:49:07 -08:00
Myk Taylor e5c3a2b519
dynamically count available materials when placing 2023-02-26 09:49:07 -08:00
Myk Taylor 0faa160eaa
split buildingplan into a project 2023-02-26 09:49:07 -08:00
Myk Taylor 4b7bc937a4
remove old buildingplan files 2023-02-26 09:49:07 -08:00
Myk Taylor a9d9e0e50c
skeleton for quantity scanning 2023-02-26 09:49:07 -08:00
Myk Taylor 584e891154
more skeleton for inspector 2023-02-26 09:49:07 -08:00
Myk Taylor dd6f71c665
handle stairs and 3 dimensions 2023-02-26 09:49:07 -08:00
Myk Taylor 1c3a5fa170
initial building placement code 2023-02-26 09:49:07 -08:00
Myk Taylor 0cb1c09549
implement skeletons for buildingplan overlays 2023-02-26 09:49:07 -08:00
Myk Taylor b443f81ecd
print out more status info for buildingplan 2023-02-26 09:49:07 -08:00
Josh Cooper 00eb02c1bc Implements plugin: channel-safely v1.2.4
- changes report* lookup in `NewReportEvent()`
  - adds a nullptr check
- adds df::coord bound checking in various places
  - where the `get_*neighbours()` functions are used
  - `simulate_fall()`
  - `is_safe_to_dig_down()` and `is_safe_fall()`
- adds nullptr checks to the `is_*job()` functions
- added todo comments for `is_safe_to_dig_down()`
2023-02-24 15:51:11 -08:00
Myk Taylor f922be8769
fix more autolabor chattiness 2023-02-24 13:25:04 -08:00
Myk Taylor 69b89e9a6b
revert code changes to dig-now (causing lockups) 2023-02-24 12:44:06 -08:00
Myk Taylor 6dbc22350f
log to console instead of announcements 2023-02-23 22:24:32 -08:00
Myk b516c8753e
Merge branch 'develop' into dig-now 2023-02-21 18:59:30 -08:00
Robob27 5244fce469 Fix confirm performance 2023-02-17 18:41:20 -05:00
Kelly Kinkade f73634d009 add missing parameter 2023-02-17 14:03:42 -06:00
Kelly Kinkade 4eb3ae566d unshadow unit size variable 2023-02-17 12:58:48 -06:00
Kelly Kinkade 7e584df040 misc tailor updates related to adamantine cloth 2023-02-17 12:10:23 -06:00
Josh Cooper 1fe0bab9d4 Incorporates code review into dig-now PR 2023-02-17 08:17:35 -08:00
Josh Cooper 249c659006 Adds coord validity check for job scanning in dig-now 2023-02-17 08:17:35 -08:00
Josh Cooper 8beb947c82 Revises job scanning for dig-now 2023-02-17 08:17:35 -08:00
Josh Cooper 1e21f1ece9 Adds validity checks before adding to the dig-now buffer
also adds job cancellation for designation jobs, for testing a solution to issue 2471
2023-02-17 08:17:35 -08:00
Josh Cooper c990def894 Adds a designation buffer in dig-now's processing algorithm
This may fix the issue seen when channeling consecutive layers, needs to be tested
2023-02-17 08:17:35 -08:00
Josh Cooper 838acfdf22 Adds a few log lines to dig-now 2023-02-17 08:17:35 -08:00
Josh Cooper 456020fb38 Adds todo comments to dig-now.cpp for issue #2720 2023-02-17 08:17:35 -08:00
Kelly Kinkade f6df3ff335 remove thing i thought i already removed 2023-02-16 15:39:10 -06:00
Kelly Kinkade 54013b4400 add support for adamantine cloth
off by default because really now

also downgraded "weird cloth item" message from WARN to DEBUG
2023-02-16 15:33:55 -06:00
Kelly Kinkade 4d9deb8eca tailor: try to squash toad clothing bug
this adds a test for an unmapped clothing size which will at least stop the making of toad-sized clothing. a diagnostic is issued when this happens as it is a bug
2023-02-16 14:37:10 -06:00
lethosor 85dfe2a547
Merge remote-tracking branch 'cjhammel/fix-for-Issue-#2864' into develop 2023-02-16 11:49:36 -05:00
Robob27 b4bd806134 Don't enable confirms on plugin enable 2023-02-15 16:10:22 -05:00
Kelly Kinkade 82cc486442 correct autolabor for structure update
df-structures#561 changed def'n of `activity_info` which autolabor used
2023-02-15 06:49:00 -06:00
Christopher J Hammel c4aa936c0d
Update autolabor.cpp 2023-02-14 11:37:22 -05:00
Myk Taylor bc76fd02e2
prevent mouse clicks from bleeding through when a window is dismissed 2023-02-13 17:35:02 -08:00
Myk Taylor 6202b29c56
adapt autolabor to new split game structure 2023-02-13 13:39:28 -08:00
Myk 9c58b22913
Merge pull request #2894 from myk002/myk_autochop
generate names for nameless burrows; check for nil
2023-02-13 13:13:34 -08:00
Myk fbabe5cdb0
Merge pull request #2898 from myk002/myk_showmood
[showmood] show more understandable units for bars and cloths
2023-02-13 13:13:24 -08:00
Myk Taylor 2b3dcee4b0
get strangemood compiling and running 2023-02-13 01:18:45 -08:00
Myk Taylor 68d314c9c0
show more understandable units for bars and cloths 2023-02-13 01:17:57 -08:00
Myk Taylor 766738e102
generate names for nameless burrows; check for nil 2023-02-12 15:21:10 -08:00
Myk 4bc6e1bec0
Merge branch 'develop' into myk_seedwatch 2023-02-12 14:48:40 -08:00
Batt Mush 5c457fc96f [issue-2888] autodump now conditionally removes an item's dump flag and
sets forbid flag IFF the item is successfully dumped. Otherwise, the
item's original flags are kept intact. This avoids impacting any tasks
associated with the item.
2023-02-12 15:49:40 -06:00
Myk Taylor 0c989634ab
properly store the id of seed targets in persisted state 2023-02-12 03:19:31 -08:00
Janeene Beeforth 4b5836b996 Fix for #2871
* Add check for unit->name.nickname field is not an empty string
* Refactor repeated checks for inappropriate and protected units
2023-02-12 16:43:33 +11:00
lethosor 1390e724b6
nestboxes: avoid forbidding non-eggs
The rewrite in #2773 introduced a bug (identified by KMFrench on Discord) where
nestboxes themselves would be forbidden, which prevents egglaying citizens from
using them since the nestboxes would be claimed before use. The previous version
of the plugin handled this by skipping the first item in `contained_items`,
which is the building material (in this case, the nestbox).

This fix limits the `forbid` flag manipulation to egg items only, which should
be a reasonable limitation that still allows the plugin to serve its purpose.
2023-02-10 22:52:01 -05:00
lethosor 588df3eec8
Update stonesense, changelog for dfhack/stonesense#97 2023-02-10 12:57:08 -05:00
Myk Taylor 13f96b9ac8
increase frequency of nestbox scanning 2023-02-10 08:20:11 -08:00
Myk 497d8e1ff7
Merge pull request #2854 from johncosker/fix-autoslab
autoslab: Improve check for existing engraved slab.
2023-02-09 07:59:48 -08:00
John Cosker f6ab1630b1 Cleanup 2023-02-09 08:30:09 -05:00
John Cosker 99aa4c523a Merge branch 'fix-autoslab' of https://github.com/johncosker/dfhack into fix-autoslab 2023-02-09 08:29:17 -05:00
John Cosker 6795a4a2c8 Further simplify check for engraved slabs 2023-02-09 08:28:33 -05:00
John Cosker d27041e206
Remove debug logging 2023-02-08 22:42:28 -05:00
John Cosker 27ff6c9649 Remove debug logging 2023-02-08 22:41:56 -05:00
John Cosker cf51054f86
Merge branch 'develop' into fix-autoslab 2023-02-08 22:39:46 -05:00
John Cosker fed3b4ddb4 Hopefully fix CI linux build 2023-02-08 22:25:35 -05:00
John Cosker 5e09a1cbf1 Change autoslab to use slab's "topic" field to compare historical id of slab instead of using str comp 2023-02-08 22:05:08 -05:00
Myk Taylor a41afb88fc
remove in-progress jobs when protecting fert eggs 2023-02-08 16:37:46 -08:00
Myk 90767b83d2
Merge pull request #2852 from myk002/myk_misery
update misery
2023-02-08 14:22:33 -08:00
Myk Taylor 8bd9853597
make gcc happy 2023-02-08 14:16:11 -08:00
Myk Taylor 4d4e94c449
convert index 2023-02-08 14:06:19 -08:00
Myk Taylor 5c84d18001
update tailor, persist state, use best practices 2023-02-08 14:06:19 -08:00
Myk Taylor 9f76d64e42
update misery; persist state 2023-02-08 14:02:44 -08:00
Eamon Bode 07fd4b25b1
Merge branch 'develop' into automelt-autochop-lua-stack-fix 2023-02-08 15:45:29 -05:00
Eamon Bode 1e4a73007e
Apply suggestions from code review
Whitespace fixes

Co-authored-by: Myk <myk.taylor@gmail.com>
2023-02-08 15:44:55 -05:00
Josh Cooper 5d8d378917 Implements plugin: channel-safely v1.2.3
- Revises a few log lines
- Adds d_assert macro to replace assert usage
  - prints an error to indicate d_assert failed in Release builds as well as Debug builds
  - could be added to the Debug utilities to allow use of assertions on necessary code without needing to buffer the results for use in the assert statement
- Fixes bug wherein designations are never put into marker mode (related to the assert statements)
2023-02-08 12:03:40 -08:00
pre-commit-ci[bot] bf0b3f8845 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-02-08 19:06:35 +00:00
eamondo2 02a249fdee Fixes the lua stack smashing issue 2023-02-08 14:01:32 -05:00
eamondo2 be0cec9520 Current attempt to fix lua stack smashing 2023-02-08 01:59:57 -05:00
Roxy 0043e05895 enable autonestbox 2023-02-06 16:47:50 -05:00
Myk 190b5003c8
Merge branch 'develop' into myk_logo_hide 2023-02-06 09:17:48 -08:00
Myk 448598e391
Merge pull request #2823 from myk002/myk_hotkey_guards
implement some Gui module hotkey guards
2023-02-06 09:17:18 -08:00
Myk 149d7f7795
Merge branch 'develop' into myk_keybindings 2023-02-06 09:17:02 -08:00
Myk 0fc7341ce7
Merge pull request #2825 from myk002/myk_focus_strings
support focus paths for overlay widgets
2023-02-06 09:16:37 -08:00
Myk 408e14d441
Merge pull request #2826 from myk002/myk_cleanowned
[cleanowned] don't print out how many items there are in the world
2023-02-06 09:16:27 -08:00
Myk 6933306255
Merge pull request #2827 from myk002/myk_autobutcher
[autobutcher] tweak defaults, load initial races immediately
2023-02-06 09:16:15 -08:00
Myk 1e03582fee
Merge pull request #2828 from myk002/myk_best_practices
update auto plugin example, use new best practices
2023-02-06 09:16:05 -08:00
Myk Taylor c0cd37ff6f
protect against NULLs and invalid stockpiles 2023-02-06 09:04:50 -08:00
Myk Taylor 6dbf7b83bd
update auto plugin example, use new best practices 2023-02-06 04:02:18 -08:00
Myk Taylor e285ee31a4
tweak defaults, load initial races immediately 2023-02-06 03:28:19 -08:00
Myk Taylor 397a64c4b5
don't print out how many items there are in the world 2023-02-06 02:58:11 -08:00
Myk Taylor bf91ffb1fe
support focus paths for overlay widgets
and migrate existing widgets to use them
2023-02-06 02:37:32 -08:00
Myk Taylor 5747e9f3f0
set up some keybindings that are ready to go
and reinstate autodump-destroy-item
2023-02-06 01:23:52 -08:00
Myk Taylor 9e318842a4
implement some Gui module hotkey guards
and clean up focus string matching logic
2023-02-06 00:58:57 -08:00
Myk d6c4d4417e
Add dig to the build
Ref: #2743
2023-02-05 21:11:07 -08:00
Myk Taylor 09e7c14210
hide DFHack logo when it's in the way 2023-02-05 18:27:31 -08:00
Robob27 52fed5d9ad Update options command 2023-02-05 19:04:21 -05:00
Robob27 c09690bb5c Remove newline in debug 2023-02-05 19:04:21 -05:00
Robob27 300692750a Add missing ; 2023-02-05 19:04:21 -05:00
Robob27 89761bca0c Remove unnecessary screen params 2023-02-05 19:04:21 -05:00
Robob27 b5e6da3568 Remove unused import 2023-02-05 19:04:21 -05:00
Robob27 edbc9300d8 Remove unused function 2023-02-05 19:04:21 -05:00
Robob27 4e57464f21 Single line debug message 2023-02-05 19:04:21 -05:00
Robob27 c621c33b93 Initialize paused to false, cleanup comments 2023-02-05 19:04:21 -05:00
Robob27 8a08878fd6 Less messy pause display 2023-02-05 19:04:21 -05:00
Robob27 717b133d58 Move unpause detection back to feed 2023-02-05 19:04:21 -05:00
Robob27 d5ada27ed4 Remove unused variable 2023-02-05 19:04:21 -05:00
Robob27 6657fb59e5 Fix pausing and warnings 2023-02-05 19:04:21 -05:00
Robob27 2bf9b86c7b Fix getCurFocus lua, use where appropriate in c++ 2023-02-05 19:04:21 -05:00
Robob27 36e4bba779 Fixup prefix matching 2023-02-05 19:04:21 -05:00
Robob27 1c08b56a89 Proper prefix matching in hotkeys? 2023-02-05 19:04:21 -05:00
Robob27 14f1e4b52f Per confirm pause maybe? 2023-02-05 19:04:21 -05:00
Robob27 a5de0fb0de Add stockpile removal confirm 2023-02-05 19:04:21 -05:00
Robob27 576fcfbeab Clean up some nesting 2023-02-05 19:04:21 -05:00
Robob27 a14de11a13 Clean up artifacts during render 2023-02-05 19:04:21 -05:00
Robob27 0c80eff087 Remove unnecessary using 2023-02-05 19:04:21 -05:00
Robob27 86b57380a6 fixup unnecessary changes, remove unnecessary stuff 2023-02-05 19:04:21 -05:00
Robob27 3da1964c53 Fix another warning, test force_full_display_count 2023-02-05 19:04:21 -05:00
Robob27 59db67e654 Remove unnecessary invalidate 2023-02-05 19:04:21 -05:00
Robob27 2cb9830404 Fix default mouse_button value 2023-02-05 19:04:21 -05:00
Robob27 4a0d542b5e Add more confirms 2023-02-05 19:04:21 -05:00
Robob27 6e442a26ca More WIP 2023-02-05 19:04:21 -05:00
Robob27 a770a4cae4 WIP 2023-02-05 19:04:21 -05:00
Myk Taylor 2daf1ceca5
make automelt resistent to morphed building ids
i.e. that no longer refer to valid stockiples, which can happen if the
persisted data is from another game
2023-02-04 12:56:19 -08:00
Myk Taylor 43d1a1563b
fix param parsing for setting targets 2023-02-03 15:27:01 -08:00
Myk Taylor f2521c4a5c
protect against bad tree data 2023-02-03 12:52:50 -08:00
Myk Taylor 972df67eee
add more instrumentation to autochop 2023-02-03 12:26:01 -08:00
Myk Taylor 6831b1a1ae
reset the saved frame counter on new world
this allows the plugins to function normally even after one world is
exited and a different world with a lower frame counter is loaded
2023-02-03 00:08:38 -08:00
Myk Taylor 49246a60f3
properly cast for unsigned comparisons 2023-02-02 23:57:52 -08:00
Myk Taylor 8c7be9a8c2
don't use negative plant indices
and clean up the Kitchen module a bit more
2023-02-02 23:33:24 -08:00
Myk Taylor aa2339d2aa
add cxxrandom back to the build
and mark channel-safely as tested
2023-02-02 19:42:19 -08:00
Myk 987597e0af add autolabor warning overlay widget 2023-02-02 15:37:36 -06:00
Myk 4df7898d18 link autolabor to lua for the overlay 2023-02-02 15:37:36 -06:00
Kelly Kinkade 16e6114a86 autolabor: realign labors, improve tick handling
realigned the labor table to v50
changed onChange handler to run every 60 in-game ticks instead of every 60 render frames (no reason to run while paused lol)
2023-02-02 15:37:36 -06:00
Kelly Kinkade d780dc6847 reenable autolabor for testing
minimum required to make work:
* realign the job table
* add code to flip/flop the work detail enable flag
2023-02-02 15:37:36 -06:00
Rose 6e200b831e
Update plugins/autoclothing.cpp
Co-authored-by: Myk <myk.taylor@gmail.com>
2023-02-02 13:33:30 -08:00
Rose b36e5e1dff
Update plugins/autoclothing.cpp
Co-authored-by: Myk <myk.taylor@gmail.com>
2023-02-02 13:33:20 -08:00
Rose 840f728c66 Merge remote-tracking branch 'DFHack/develop' into Autoclothing
# Conflicts:
#	docs/changelog.txt
2023-02-02 13:14:50 -08:00
Rose ea22a23ab7 Clean up autoclothing for release. 2023-02-02 13:06:14 -08:00
Myk Taylor 5a1c3c7aa8
remove unused vars copypastad from seedwatch 2023-02-01 22:30:56 -08:00
Myk c312a88bea
Merge pull request #2773 from myk002/myk_nestboxes
[nestboxes] update and simplify; persist state
2023-02-01 17:50:07 -08:00
Myk Taylor fd4b0d7233
update and simplify nestboxes; persist state 2023-02-01 04:58:23 -08:00
Myk Taylor febb2bf030
use actual item and unit positions 2023-02-01 04:24:42 -08:00
Myk Taylor be40d55e64
update seedwatch 2023-02-01 04:03:28 -08:00
Myk 18da23af09
Merge pull request #2755 from ab9rf/autohauler
remove autohauler
2023-01-29 20:04:14 -08:00
Myk a0b3656c45
Merge pull request #2737 from johncosker/merge-autoslab
Implement autoslab engraving feature
2023-01-29 19:46:41 -08:00
Kelly Kinkade 40e69bfa3f remove autohauler
autohauler just doesn't make sense in v50
2023-01-29 20:38:39 -06:00
John Cosker 3f9f785589 Update doc and remove unused enum 2023-01-29 21:34:47 -05:00
Rose c9ddb4d943 There was one more place for autoclothing to crash. 2023-01-29 17:51:10 -08:00
Rose c79b95ec33 Don't crash autoclothing if a dwarf has a broken inventory item. 2023-01-29 17:48:23 -08:00
Myk Taylor 2b3160b1b9
fix typos 2023-01-29 17:39:48 -08:00
Myk Taylor 61f3325860
update sample plugin code
status -> config
don't make cycle ticks configurable. nobody does that
2023-01-29 17:35:02 -08:00
Rose 75c560d9e1 Add in a strictness parameter to Autoclothing. It's not used yet. 2023-01-29 17:19:21 -08:00
Myk 274e995790
Merge pull request #2747 from myk002/myk_on_off
Add new on/off icons
2023-01-29 16:55:01 -08:00
Myk Taylor f1e8ee1b0a
use new API in autochop 2023-01-29 16:28:56 -08:00
John Cosker 26f6820198 Address review comments, hopefully fix linux build 2023-01-29 18:16:26 -05:00
Myk Taylor 2a3710202a
use new icons in pathable 2023-01-29 00:35:34 -08:00
gearsix 339e742471 Merge branch 'develop' into getplants-fixes 2023-01-28 22:09:30 +00:00
Myk 5f90756677
Merge pull request #2734 from myk002/myk_tiletypes
Expose tiletype setting from the tiletypes plugin to lua
2023-01-28 11:55:04 -08:00
John Cosker 09c71bceeb Fix dig plugin and enable building it 2023-01-28 10:06:48 -05:00
John Cosker b9b8b36652 Sort header includes per guidelines 2023-01-27 20:08:33 -05:00
John Cosker 37b5be1f35
Implement autoslab engraving feature (#1)
* Initial autoslab implementation
2023-01-27 19:46:56 -05:00
Myk Taylor f700ef90b8
expose tiletype setting to Lua 2023-01-27 13:38:49 -08:00
gearsix 6726b567a1 issue #2043 - `designate` now marks trees (regardless of if ripe).
The `ripe` call was returning false on tree tiles, resulting in an
inability to designate trees for chopping with `getplants`.
This change adds a check to see if the tile is a tree or not and
if it is, then the ripe check is ignored.
2023-01-27 14:48:24 +00:00
gearsix 6e1ab8d67b issue #1805 - made getplants input case-insensitive
Now `toUpper` is called on user input when it's added to `plantNames`
to ensure it matches the ID fields which are all in upper-case.
2023-01-27 14:44:32 +00:00
Myk Taylor 998a63a979
allow overlay widgets to specify a default enabled state
and make relevant library widgets enabled by default
and remove the default overlay.json config file
2023-01-26 00:53:57 -08:00
Myk 5283cb1e72
Merge pull request #2716 from myk002/myk_channel_safely
fix build errors with channel-safely
2023-01-24 19:01:46 -08:00
Myk Taylor 4e35895cf4
fix build errors with channel-safely 2023-01-24 18:48:23 -08:00
Kelly Kinkade cbcd68317d tailor: increased check frequency
do bookkeepers work faster now? could be
2023-01-24 19:28:17 -06:00
Myk 25658592cb
Merge pull request #2472 from cppcooper/channel-safely
Updates Channel safely
2023-01-24 17:05:40 -08:00
Josh Cooper 739263eb59 Re-introduces channel-safely plugin to the build 2023-01-24 16:25:41 -08:00
Myk 83c89cfaa9
Merge pull request #2705 from myk002/myk_zscreen_redux
Implement new ZScreen semantics
2023-01-24 11:14:43 -08:00
Kelly Kinkade f640d15355 tailor: avoid bad key exception in std::map 2023-01-23 22:40:54 -06:00
Myk Taylor 8b98ba5042
allow windows to be defocused instead of pinned 2023-01-23 17:40:16 -08:00
Josh Cooper 89eefd006f Implements plugin: channel-safely v1.2.2
minor changes only
The largest change is moving a df::map_block* declaration to an outer loop
2023-01-23 14:24:24 -08:00
Josh Cooper ae8291b952 Implements plugin: channel-safely v1.2.1
- Removes insta-dig feature (too many problems, rarely worked)
- Fixes a segmentation fault introduced in v1.2
- Improves manage_group readability/nesting
- Improves manage_one readability/nesting

Update docs/plugins/channel-safely.rst

Co-authored-by: Myk <myk002@yahoo.com>

Fixes some formatting consistency
2023-01-23 14:24:23 -08:00
Josh Cooper a4bf266770 Implements plugin: channel-safely v1.2
- Updates rst documentation
  - Adds feature: risk-averse
- Revises ChannelManager::manage_group
  - Now performs analysis of group designations
    - If any designation has fall space, designations are analyzed for accessibility (a weighted score of how many ways it can be accessed)
    - If a designation has no fall space, but cannot be accessed it will be "dig_now"'ed
    - accessibility scores are stored for the management phase
  - Management loop has been extended
    - iff no cave-in candidates exist, then perform simple management (as requested)
    - if candidates do exist, then we must check if our current position is one
      - if the current position is a cave-in candidate it must also be within range (+2) of the least access
        - if the candidate is in range or on the dignow queue, then we activate the designation and modify the dig priority according to distance from least_access
      - if not a candidate, or the other checks failed, then we set the designation to marker mode
2023-01-23 14:24:23 -08:00
Josh Cooper 540faff88f Implements plugin: channel-safely v1.1.2b
- Updates rst documentation
  - Adds troubleshooting section
  - Renames the monitor feature to monitoring
- Adds cave-in helper functions
  - ChannelJobs::has_cavein_conditions()
  - ChannelJobs::possible_cavein()
  - find_dwarf() ~ finds the nearest dwarf or the first one that has a path to a position
- Moves dignow/resurrect to inlines.h
- Improves management of regular dig designations
- Adds df::job* tracking back into ChannelJobs to simplify cancellations
- Updates/improves debug logging
  - Switches unordered structures with ordered in some locations to have ordered debugging information
- Simplifies ChannelManager::manage_group()
- Fixes up ChannelManager::manage_one()
  - the return value is now useful even if unused
2023-01-23 14:24:23 -08:00
Eamon Bode 8750707948
Update plugins/automelt.cpp
Co-authored-by: Myk <myk.taylor@gmail.com>
2023-01-23 16:32:47 -05:00
eamondo2 c5ce1b1766 Fix build complaints 2023-01-23 16:20:37 -05:00
eamondo2 386546126e fix GH suggest, cache found building 2023-01-23 16:14:49 -05:00
Eamon Bode fc861f1328
Merge branch 'develop' into automelt 2023-01-23 14:20:48 -05:00
eamondo2 7536426929 trailing whitespace trim 2023-01-23 13:36:12 -05:00
eamondo2 6592cadc09 Bugfixes, resolved CTD issue. 2023-01-23 13:35:26 -05:00
Myk Taylor 38e6e0a747
ensure orders overlay is on the correct panel
even when the total screen size is very small
2023-01-23 08:01:45 -08:00
Myk Taylor d7e0dcfcf8
use new frames for hotkey hotspot 2023-01-23 04:03:41 -08:00
Myk Taylor 9aaa55cd7f
add textures and frames for various use cases 2023-01-23 03:58:51 -08:00
eamondo2 44d8ce2bdc whitespace fix 2023-01-23 01:58:57 -05:00
eamondo2 78c6b3683e Changes as per GH suggestions. Doc updates. 2023-01-23 01:56:33 -05:00
eamondo2 8f7788ec20 Merge branch 'develop' into automelt 2023-01-22 20:32:43 -05:00
Myk f2c2fffac5
Merge branch 'develop' into myk_click_logo 2023-01-22 17:10:27 -08:00
Myk ab10b84de4
Merge pull request #2693 from myk002/myk_revert_always_enabled
remove unused always_enabled attribute for overlays
2023-01-22 17:10:04 -08:00
Myk Taylor f0d44342d8
first attempt at a manager orders overlay 2023-01-22 03:08:36 -08:00
eamondo2 9bcd9c27bf Fix build failure 2023-01-22 04:55:14 -05:00
eamondo2 2e6ba64f56 Hopefully fix end-of-file-fixer complaint 2023-01-22 04:46:35 -05:00
eamondo2 84f7fc85da trim trailing whitespace 2023-01-22 04:44:33 -05:00
Eamon Bode e5cbc7fd3c
Merge branch 'develop' into automelt 2023-01-22 04:40:10 -05:00
eamondo2 969f8162a8 Further updates from comments/review. 2023-01-22 04:39:41 -05:00
eamondo2 6585055ed2 fixes, global item counts 2023-01-22 04:13:23 -05:00
Myk Taylor b84bce719d
remove unused always_enabled attribute for overlays
it was made for gui/pathable, but that became a ZScreen
this option made me uncomfortable for overlays. it didn't seem like the
right user experience
2023-01-22 01:07:30 -08:00
Myk Taylor 76822ac7b7
remove orphan fortplan.lua file 2023-01-22 00:59:27 -08:00
Myk Taylor 5a4d61e7fc
don't close the hotspot menu if the logo is clicked
some people click the logo by mistake. this shouldn't close the menu
2023-01-22 00:43:10 -08:00
eamondo2 4c9da4046f Merge branch 'automelt' of github.com:eamondo2/dfhack into automelt 2023-01-21 18:23:03 -05:00
eamondo2 0fbf17f1c8 refactor/fix as per GH suggest 2023-01-21 18:22:15 -05:00
20k 598354d9d4 getbiometype naming, docs 2023-01-21 20:33:40 +00:00
pre-commit-ci[bot] 50c3bea84b [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-01-21 07:20:19 +00:00
eamondo2 0a66f41152 fix newline pre-commit.ci complaint 2023-01-21 02:15:35 -05:00
eamondo2 e4e4cae5e6 fix check failures 2023-01-21 02:08:58 -05:00
eamondo2 3fc4d056c3 initial automelt 2023-01-20 17:58:48 -05:00
Myk Taylor acf2b8b319
use newly narrowd relations vector 2023-01-20 14:30:48 -08:00
Myk 15ba54eea9
Merge pull request #2643 from RosaryMala/Autoclothing
Autoclothing
2023-01-20 14:08:01 -08:00
Myk 064f2834a9
Merge pull request #2669 from ab9rf/5005-alpha2-tailor
tailor: add support for using undyed cloth
2023-01-20 14:06:53 -08:00
Myk 310940e1a2
Merge branch 'develop' into Autoclothing 2023-01-20 14:05:26 -08:00
Kelly Kinkade e8f67c7b62 add support for using undyed cloth
also improved debugging messages
2023-01-20 15:21:45 -06:00
Myk Taylor e138ac1da5
update stonesense 2023-01-20 12:23:02 -08:00
Myk Taylor eae2cec22f
use keyboard cursor
and adapt to a "bad" cursor not being equal to -30000 anymore
2023-01-20 09:31:44 -08:00
Myk Taylor 4183bace4d
update autodump, only commands, add hotkeys 2023-01-20 09:31:44 -08:00
Myk 116f9bf8e6
Merge pull request #2641 from myk002/myk_buildingplan
minimal implementation of buildingplan
2023-01-20 09:28:26 -08:00
Myk d24f88d32b
Merge pull request #2654 from ab9rf/5005-alpha2-tailor
tailor: reenable and improve logging
2023-01-18 15:52:23 -08:00
Myk 4e88a9f562
Merge pull request #2658 from ab9rf/autofarm-5005-alpha2
autofarm: fix repetition in status output
2023-01-18 15:51:36 -08:00
Myk Taylor 2cf0d0769c
fix reference to renamed var 2023-01-18 15:44:47 -08:00
Kelly Kinkade a813bcb769 use slightly more succinct idiom 2023-01-18 16:54:30 -06:00
Kelly Kinkade 1a283eaf47 autofarm: fix repetition in status output
because C++ std::map is not the same as a ruby table
2023-01-18 16:26:16 -06:00
Kelly Kinkade b598b38891 tailor: reenable and improve logging
reenable plugin
remove `using std;`
switch to standard logger and add some debug and trace level log messages
2023-01-18 14:49:38 -06:00
Myk Taylor 653e09c322
make gcc happy 2023-01-18 00:08:21 -08:00
Myk Taylor 7d8066f3c7
allow buildingplan to be "always on" 2023-01-17 21:55:27 -08:00
Myk Taylor acd2256900
restore orders library functionality 2023-01-17 21:26:33 -08:00
Myk Taylor bc42f7c73c
get buildingplan minimally functional for quickfort 2023-01-17 04:05:17 -08:00
Myk Taylor a96ddcec80
add buildingplan skeleton 2023-01-16 23:55:39 -08:00
Myk Taylor d6b69ca8fc
move useful functions from uicommon to MiscUtils 2023-01-16 23:46:47 -08:00
Myk Taylor bb3f640afa
silence check for usefulness. it's useful. i get it 2023-01-16 17:43:00 -08:00
Myk Taylor 50cc6d965d
update to new save directory structure 2023-01-15 23:13:58 -08:00
Myk Taylor 86ddf43230
add hotkey for launching the quickstart guide from the hover menu 2023-01-15 20:17:23 -08:00
Myk Taylor 1eb5dd9a4f
fix incorrect function name for setting targets 2023-01-14 18:30:44 -08:00
Myk Taylor 9606f7bf4f
remove ones that don't work, mark as tested those that do 2023-01-14 09:50:17 -08:00
Myk Taylor dbc26f0d37
enable next batch of plugins to test 2023-01-14 01:28:33 -08:00
Rose 87c54c8716 Added amount of available clothing to autolabor reports. 2023-01-14 01:28:13 -08:00
Myk 8d58347b10
Merge pull request #2598 from 20k/develop
Update fortress reader for structures change
2023-01-14 01:26:05 -08:00
Myk 5a0dcf6d8e
Merge pull request #2600 from myk002/myk_blueprint
add blueprint back to the build (dig and build phases only)
2023-01-14 01:09:47 -08:00
Rose 0e021e392d Added a report to autoclothing, as well as some changes to DFHack::Units to enable it. 2023-01-13 21:20:01 -08:00
Myk Taylor 8f434bf9a6
add blueprint back to the build (dig and build phases only) 2023-01-13 12:36:16 -08:00
Myk Taylor 807f3f6327
update behavior of hotspot menu
- disappears on click outside its borders
- disappears on r-click
- mouse over the help panel counts as "over the menu" (so the menu
  doesn't close if the player moves the mouse to the help text)
- menu panels appear next to the logo hotspot instead of over it,
  allowing players to avoid clicking on the wrong item if they
  intend to click on the logo
2023-01-13 12:18:18 -08:00
Myk Taylor cc0ff6a93d
raise trigger lock screens (if possible)
so they don't get stuck under new viewscreens and become lost (and
therefore overlay will be forever locked)
2023-01-13 12:16:49 -08:00
Myk Taylor 99350bdb73
add xlsxreader back to the build 2023-01-13 09:45:33 -08:00
20k 3af91e1572 update fortress reader for structures change 2023-01-13 11:48:07 +00:00
Myk 6b03a47b4f
Merge pull request #2594 from myk002/myk_if_it_compiles_then_ship_it
enable a batch of compilable plugins for community testing
2023-01-12 17:14:26 -08:00
Myk Taylor 9910c2610e
clarify the identity of the icons 2023-01-12 14:43:46 -08:00
Myk Taylor 49cd82a9b8
enable a batch of compilable plugins for testing 2023-01-12 13:48:58 -08:00
Myk Taylor 6e4a994364
"1 trees" to "1 tree(s)" 2023-01-11 20:02:13 -08:00
Myk Taylor ad4ce706f1
enable fastdwarf (no changes) 2023-01-10 00:46:52 -08:00
Myk Taylor 60170f252f
add regrass plugin back in (no changes) 2023-01-10 00:42:37 -08:00
Myk Taylor 7cf703ef23
turn down Ruby support 2023-01-09 23:59:55 -08:00
Myk c33274ef11
Merge pull request #2575 from myk002/myk_autochop
Update and validate autochop
2023-01-09 23:51:56 -08:00
Myk bb90ff0b32
Merge pull request #2566 from ab9rf/5005-autofarm
reenable autofarm and add persistence support
2023-01-09 23:48:35 -08:00
Kelly Kinkade 81a8a6047b persistence fixes, other tweaks 2023-01-09 20:04:13 -06:00
Myk Taylor 3938721df0
enable seedwatch (no changes) 2023-01-09 16:25:01 -08:00
Kelly Kinkade e649255c8e rework autofarm persistence 2023-01-09 18:05:15 -06:00
Kelly Kinkade f0aa7a76de reenable autofarm and add persistence support
note that persistence does not appear to work properly right now so this hasn't been fully tested
2023-01-09 18:05:15 -06:00
Myk Taylor 3518a13dea
add cleanowned back to the build (no changes) 2023-01-09 15:45:45 -08:00
Myk Taylor 2da3510ade
add stonesense to the build (if configured); docs
the `overlay` command option has been removed
2023-01-09 14:59:38 -08:00
Myk 2efd77fb6b
Merge pull request #2578 from myk002/myk_orders
enable orders plugin
2023-01-09 13:13:54 -08:00
Myk Taylor 3cf3e3f5b6
enable orders, no updates needed 2023-01-09 02:03:55 -08:00
Myk 80cdb08594
Merge pull request #2571 from RosaryMala/probe
Enabled probe, and fixed the one thing preventing it from compiling.
2023-01-09 01:48:39 -08:00
Myk Taylor 5310cfadca
represent cookable with 'z' to match the hotkey 2023-01-09 00:13:00 -08:00
Myk Taylor c647ae33d8
make gcc-4.8 happy 2023-01-08 23:49:04 -08:00
Myk Taylor 2877f87d78
implement new autochop 2023-01-08 23:28:06 -08:00
Kelly Kinkade 46a4222de6
fix stupid typo in reveal 2023-01-08 15:57:38 -06:00
Myk Taylor 92489ef27d
get things to compile with the recent structure updates 2023-01-08 11:33:14 -08:00
Rose 60a2f615c0 Enabled probe, and fixed the one thing preventing it from compiling.
Before this can be considered updated, it would need to be able to find the currently selected building or creature from the game, but it does work as-is when the keyboard cursor is enabled in the game.
2023-01-07 21:06:47 -08:00
Rose 95223d8197 Got archery target direction back, and cleaned up a few things. 2023-01-07 14:37:44 -08:00
Rose 1808cfc51b Merge remote-tracking branch 'DFHack/develop' into develop 2023-01-06 19:53:41 -08:00
Rose cc4a42a901 Re-comment out the UI stuff. 2023-01-06 19:43:54 -08:00
Rose e62fa8fe0d Merge remote-tracking branch 'DFHack/develop' into develop
# Conflicts:
#	library/xml
#	plugins/remotefortressreader/adventure_control.cpp
#	plugins/remotefortressreader/dwarf_control.cpp
2023-01-06 19:25:19 -08:00
Kelly Kinkade 5e9ddd9a36 reveal: vertical whitespaec 2023-01-06 14:34:59 -06:00
Kelly Kinkade 779e159512 enable reveal
`reveal demon` is disabled due to double popup bug
`reveal` also has guidance text that appears if the player is in graphics mode explaining the limitations of the new renderer
2023-01-06 13:56:19 -06:00
Myk Taylor 3969262e44
update submodule refs 2023-01-05 17:50:49 -08:00
Myk Taylor 845391f4e6
fix overzealous "ui" -> "plotinfo" replacement
some comments were just talking about the UI..
2023-01-05 17:46:30 -08:00
Myk Taylor c4a2bdd08e
update lua too 2023-01-05 17:35:33 -08:00
Myk Taylor 5e5775f5e3
rename globals according to structures update 2023-01-05 17:11:01 -08:00
Myk 78be3a6463
Merge pull request #2548 from myk002/myk_logo
Display DFHack logo for the hotkeys overlay widget
2023-01-04 19:06:05 -08:00
Rose 0d18dd508a Merge remote-tracking branch 'DFHack/develop' into develop
# Conflicts:
#	library/xml
2023-01-04 15:02:33 -08:00
Rose 67b95bf35f Compile Remote Fortress Reader 2023-01-04 15:01:46 -08:00
Myk Taylor 8e62a46009
display new logo for the hotkeys overlay widget 2023-01-04 13:30:33 -08:00
Myk Taylor 898e23d6a5
use lookup instead of hardcoding texpos 2023-01-03 12:08:09 -08:00
Myk Taylor 1b1bfc40e7
move default hotspot pos one tile to the right
so it doesn't overlap with screen borders
2023-01-03 12:07:40 -08:00
Myk f72b3524ae
Merge pull request #2545 from myk002/myk_autobutcher
update autobutcher to work with v50
2023-01-02 20:43:21 -08:00
Myk bb1a165d5b
Merge pull request #2544 from myk002/myk_hotkeys_revamp
comment out most keybindings and revamp hotkeys widget
2023-01-02 20:43:06 -08:00
Myk 3b572b9a9d
Merge pull request #2541 from myk002/myk_pathable
Update pathable plugin to support v50 maps
2023-01-02 20:42:12 -08:00
Myk Taylor 2119d4fb2a
attach hotkeys widget to all viewscreens
and introduce new snazzy logo
2023-01-01 17:21:35 -08:00
Myk Taylor 09e240b412
allow overlay widgets to 'all' viewscreens 2023-01-01 17:20:06 -08:00
Myk Taylor bebecec1e5
update autobutcher to work with new zoo structures 2023-01-01 16:32:56 -08:00
Myk Taylor a123452eba
use dims from DwarfmodeDims now that they're fixed 2022-12-31 23:20:46 -08:00
Myk Taylor 11333e3872
update pathable plugin to support v50 maps 2022-12-31 21:05:03 -08:00
Myk Taylor c401154393
widgets inherit from Panel and can be perma-enabled 2022-12-31 21:02:00 -08:00
Rose b8f4da65bb Merge remote-tracking branch 'DFHack/develop' into develop 2022-12-28 16:06:21 -08:00
Myk Taylor ec0b4a9b68
don't let anchor graphics poke through the hotkeys widget 2022-12-27 17:01:39 -08:00
Rose 6783075ff2 Get RFR to actually compile. Many structure changes so it doesn't work yet. 2022-12-27 00:46:04 -08:00
Rose 5f70a26803 Comment out the dwarf mode UI for now. (Forever?) 2022-12-26 17:15:12 -08:00
Rose b1ea3e8f02 Remove a few things from building_reader that haven't been updated yet. 2022-12-26 17:05:06 -08:00
Rose 947863750e Comment out all adventure mode stuff. The game doesn't support it anymore anyway, and it will sureley change when it does. 2022-12-26 16:57:19 -08:00
Myk Taylor e781cc5141
add new viewscreens to overlay 2022-12-20 20:18:00 -08:00
Myk Taylor e8a1e10272
build wave 1 and 2 plugins
but don't enable anything by default yet
2022-12-19 13:43:33 -08:00
Myk Taylor a1110ec894
also don't build stonesense, isoworld, dev plugins 2022-12-18 17:31:54 -08:00
Myk Taylor 990f9f6061
comment out all plugins and default tool init
until we can prove things work in v50
2022-12-18 17:25:18 -08:00
Myk Taylor 37aa3dfced
fix build of kittens dev plugin on msvc 2022-12-10 23:52:36 -08:00
Myk Taylor 1c5bc23120
update HEAD for stonesense 2022-12-10 23:51:43 -08:00
myk002 e88b1fdfe5
move script-manager into core 2022-12-10 21:59:51 -08:00
myk002 0d4d10de08
rename init to reload 2022-12-10 21:59:51 -08:00
myk002 a872cdbcd4
no onChangeState fn, let scripts attach themselves 2022-12-10 21:59:51 -08:00
myk002 426a538e30
refactor overlay to use script-manager code 2022-12-10 21:59:51 -08:00
myk002 b3c8d85637
new plugin: script-manager
scans all scripts and discovers onStateChange and isEnabled functions
2022-12-10 21:59:51 -08:00
Myk Taylor facdb61e42
explicitly declare namespaces and proto versions 2022-12-10 18:06:53 -08:00
myk002 dec6d3d379
Revert "update google protobuf to 3.21.10"
This reverts commit 9dabf51ac7.
2022-12-07 11:59:48 -08:00
myk002 9dabf51ac7
update google protobuf to 3.21.10 2022-12-07 11:59:15 -08:00
myk002 6fc62946e4
remove obsolete fix_job_postings command 2022-12-06 16:22:39 -08:00
myk002 7e6b8618ea
remove command-prompt 2022-12-04 15:56:11 -08:00
myk002 1547d527b7
fix off-by-one error in dwarfmonitor.misery widget 2022-12-04 15:34:00 -08:00
Myk fb42951afe
Merge pull request #2464 from myk002/myk_cleanup
remove unused "plugin" file
2022-12-03 18:47:04 -08:00
Myk 017d473903
Merge pull request #2460 from myk002/myk_buildingplan
move buildingplan into subdir
2022-12-03 18:46:42 -08:00
myk002 8d9fba665e
remove unused "plugin" file 2022-12-02 17:04:18 -08:00
myk002 fa9a3fcbbf
add missing CMakeLists file 2022-12-02 16:32:21 -08:00
Kelly Kinkade d62514b201 fix stupid typo in cmakefile 2022-12-02 17:08:17 -06:00
Kelly Kinkade 231b521c02 INFO -> TRACE in autolabor
sorry about that
2022-12-02 17:05:26 -06:00
myk002 e0aff474f3
move buildingplan into subdir 2022-12-02 14:22:48 -08:00
Myk ed52c4cd6e
Merge pull request #2374 from wolfboyft/movement-timer-api
Action timer API
2022-12-02 09:31:13 -08:00
Myk 08f267955c
Merge pull request #2454 from cppcooper/channel-safely
Implements plugin: channel-safely v1.1.1b
2022-12-01 16:49:32 -08:00
Josh Cooper e316b7aa75 Implements plugin: channel-safely v1.1.1b 2022-12-01 16:36:32 -08:00
Tachytaenius 0836962007 Rename [xyz]CategoryActionTimers to [xyz]GroupActionTimers in action timer API 2022-12-01 23:24:04 +00:00
Myk e7ca1cb0c1
Merge pull request #2452 from lethosor/dwarfmonitor-cursor-widget-config
Dwarfmonitor cursor widget config
2022-12-01 11:49:17 -08:00
Kelly Kinkade 437335454d make autohauler not be a chatty cathy
INFO -> TRACE
2022-12-01 09:00:50 -06:00
Tachytaenius f863b9807a Add action timer API input validation 2022-12-01 13:34:54 +00:00
Tachytaenius 7f54a77ed9 Continue work on unit action timer API 2022-12-01 13:34:54 +00:00
Tachytaenius 16ef4f8313 Rename action_type_group to unit_timer_action_type_group 2022-12-01 13:34:54 +00:00
Tachytaenius fa589b5764 Make progress with action timer API 2022-12-01 13:34:54 +00:00
Tachytaenius 0f8ce360ac Make first pass of action timer API 2022-12-01 13:34:54 +00:00
lethosor 40f3a3333e
Make Cursor widget prefix and coordinate types configurable
e.g. the old behavior can be restored with "coords_type": "mouse_ui" and
"coords_short": true
2022-12-01 00:08:56 -05:00
Kelly Kinkade 9b5a693637 death to whitespace 2022-11-30 21:46:35 -06:00
Kelly Kinkade cea9e144c6 switch autolabor & autohauler to debugging api
might need to change some of the message levels, time will tell
2022-11-30 21:46:35 -06:00
Kelly Kinkade 8d95d20852 remove stray whitespace 2022-11-30 21:43:56 -06:00
Kelly Kinkade 9fcb20888f realign autohauler and autolabor with each other
also clean up C++ code smells in both
2022-11-30 21:43:56 -06:00
myk002 ce1ef15bb2
reduce hotspot visuals to a single exclamation mark 2022-11-30 18:13:19 -08:00
myk002 1851a82fe1
close the hotkey menu if the mouse "flicks" onto it
also initialize the selected item properly if the widget is anchored to
the bottom of the screen
2022-11-30 18:11:02 -08:00
lethosor 3b7206777e
spectate: avoid printing or taking action on load when disabled 2022-11-30 20:31:59 -05:00
Myk 760fbf7b8f
Merge pull request #2434 from cppcooper/channel-safely
Implements plugin: channel-safely v1.1b
2022-11-30 08:28:08 -08:00
Myk Taylor 8900bc84d8
fix crash in buildingplan
when a player cancels out of placing a building type with plan mode
enabled and then immediately switches to placing a different building
type where plan mode is not enabled, the placement errors array would be
erroneously cleared and allow placement of the building. this would
cause DF to crash if there were no materials available to build the
building with.
2022-11-30 04:51:11 -08:00
Kelly Kinkade bc502f8132 correct QUERN construct labor 2022-11-29 18:32:57 -06:00
myk002 f5d20c99a3 prep for usage by gui/overlay 2022-11-29 15:12:02 -08:00
myk002 9d17be84a8 set width to something representative on init
so if the widget is enabled in gui/overlay without ever being resized with real data,
it won't be truncated
2022-11-29 15:12:02 -08:00
Josh Cooper 3999ed5c72 Implements plugin: channel-safely v1.1b 2022-11-28 17:10:55 -08:00
myk002 23e467deaf
use consistent bounds checking style in hotkeys 2022-11-28 15:50:05 -08:00
myk002 4e7b4dc554
show hotkeys bound to number keys, F11, and F12 2022-11-28 15:37:01 -08:00
Myk 344ed4312b
Merge pull request #2111 from cppcooper/channel-safely
Channel safely
2022-11-23 12:41:50 -08:00
Myk e943b4ed31
Merge pull request #2413 from myk002/myk_resume
Turn down resume plugin
2022-11-23 11:29:56 -08:00
Myk a900b1789a
Merge pull request #2414 from myk002/myk_mouse_buttons
Make mouse button event behavior conform to docs
2022-11-23 11:29:20 -08:00
Josh Cooper c6b15b1ccb Implements plugin: channel-safely v1.2a 2022-11-22 11:03:28 -08:00
myk002 24dc879888
adapt library code to newly correct mouse events 2022-11-21 17:36:46 -08:00
myk002 cb338e4257
remove resume plugin
all functionality has been migrated to unsuspend
2022-11-21 15:27:40 -08:00
Josh Cooper 8a0999ffdc Implements plugin: channel-safely v1.1a 2022-11-21 12:39:26 -08:00
Josh Cooper 5352649b88 Implements plugin: spectate v1.0.3b
test
2022-11-21 12:26:40 -08:00
Josh Cooper 4a0abd1915 Implements plugin: spectate v1.0.2b 2022-11-21 12:26:40 -08:00
Josh Cooper b99e948b8a Implements plugin: spectate v1.0.1a 2022-11-21 12:26:40 -08:00
Josh Cooper 40cbe4fe88 Implements plugin: spectate v1.0a 2022-11-21 12:26:40 -08:00
Josh Cooper ec6cd8d53a Implements plugin: spectate v0.5
Fixes spectate not starting with the first job

Updates spectate.cpp

- refactors features/settings to under a `Configuration` struct with a global variable `config`
- refactors existing `config` => `pconfig`
- moves plugin logic, mostly, to namespace SP (spectate plugin)
- utilizes debugging log macros
- updates status format
- refactors status print code into a separate function
2022-11-21 12:26:27 -08:00
Josh Cooper 9959ef1b36 Implements plugin: channel-safely v1.0.1a 2022-11-21 09:26:55 -08:00
Josh Cooper 6c68e72295 Implements plugin: channel-safely v1.0a 2022-11-21 09:26:55 -08:00
Josh Cooper c4e55f1cc9 Implements plugin: channel-safely v0.6.1.3 2022-11-21 09:26:55 -08:00
Josh Cooper 3cb186a62f Implements plugin: channel-safely v0.6.1.2 2022-11-21 09:26:55 -08:00
Josh Cooper 8847ed23b4 Implements plugin: channel-safely v0.6.1.1 2022-11-21 09:26:55 -08:00
Josh Cooper a9f0021927 Implements plugin: channel-safely v0.6.1 2022-11-21 09:26:55 -08:00
Josh Cooper 92537bc459 Implements plugin: channel-safely v0.6 2022-11-21 09:26:55 -08:00
Josh Cooper fcd6696768 Implements plugin: channel-safely v0.5.3 2022-11-21 09:26:55 -08:00
Josh Cooper 84ffeef092 Implements plugin: channel-safely v0.5.2 2022-11-21 09:26:55 -08:00
Josh Cooper 9db0d809fa Implements plugin: channel-safely v0.5.1 2022-11-21 09:26:55 -08:00
Josh Cooper e5dbaac85d Implements plugin: channel-safely v0.5 2022-11-21 09:26:55 -08:00
Josh Cooper c2d346fc84 Implements plugin: channel-safely v0.4 2022-11-21 09:26:55 -08:00
Josh Cooper a8dcfeead9 Implements plugin: channel-safely v0.3.1 2022-11-21 09:26:55 -08:00
Josh Cooper b7ee01108e Implements plugin: channel-safely v0.3 2022-11-21 09:26:55 -08:00
Josh Cooper 3a6205d19e Removes extra EOF lines 2022-11-21 09:26:55 -08:00
Josh Cooper bd6c748d00 Implements plugin: channel-safely v0.2 2022-11-21 09:26:55 -08:00
Josh Cooper 22414f26fa Implements plugin: channel-safely v0.1 2022-11-21 09:26:55 -08:00
myk002 5967e5c9e0
fix up cleanowned status message
print unit id instead of raw pointer and display "wear level" instead of
just "wear"
2022-11-20 16:03:08 -08:00
Myk ff447d46bd
don't overcount units for misery widget
addendum to #2366
2022-11-20 09:45:23 -08:00
Kelly Kinkade 2bc2dd8f5b remove unnecessary 'const'
wouldn't it be nice if there was a single C++ standard that all compilers adhered to?
2022-11-20 10:21:32 -06:00
Kelly Kinkade 2453b34194 refactor common labor state map table
eliminates code duplication
2022-11-20 10:09:52 -06:00
Kelly Kinkade aa78c626f9 collect autolabor plugins into one directory
these plugins all share code, moving them into a common directory will make refactoring the code shared between them more straightforward
2022-11-20 01:58:08 -06:00
Kelly Kinkade 99f919c3dc autofarm: insert missing output flushes
insert calls to std::flush as appropriate

fixes #2365
2022-11-15 20:00:27 -06:00
Kelly Kinkade d191993376 autolabor/autohauler: add labor entries for 241-243
add missing entries for jobs 241, 242, and 243

this was fixed in labormanager in PR #1566 (see #1561) but was never addressed in autolabor or autohauler

should close #1994
2022-11-15 13:13:33 -06:00
Myk 35cea1b5e1
Merge pull request #2371 from myk002/myk_overlay_hotkeys
[hotkeys] implement hotspot menu widget
2022-11-14 16:50:30 -08:00
myk002 6635b6489b
handle commands like ':lua <something>' 2022-11-14 16:46:03 -08:00
myk002 bdf201c670
ensure keybinding shows up in hotkeys command
not overlay
2022-11-14 16:46:03 -08:00
myk002 47d7c477b3
show menu hotkey for list but not on the menu 2022-11-14 16:46:02 -08:00
myk002 a2efc41fef
use new anywhere hotkey and filter out own hotkey 2022-11-14 16:46:02 -08:00
myk002 de20603080
implement CLI commands 2022-11-14 16:46:02 -08:00
myk002 1fc30493c0
right align hotkeys for list items
and combine hotkeys for identical commands
and don't hide the menu until the mouse has left the frame
and start the widget one tile closer to the edge so the mouse is already
on the list instead of on the frame
2022-11-14 16:46:02 -08:00
myk002 8bf987e7db
use a more natural ordering for modifier keys 2022-11-14 16:46:02 -08:00
myk002 2b73d6e8e9
allow hotkeys to be invoked as a hotkey
also ensure keybindings are always cleaned up
2022-11-14 16:46:02 -08:00
myk002 66d3409a65
solve concurrency issues 2022-11-14 16:46:01 -08:00
myk002 5d29da31b0
rework hotkeys plugin to support the widget 2022-11-14 16:46:01 -08:00
myk002 c630a71c73
click on arrow to launch gui/launcher with command 2022-11-14 16:46:01 -08:00
myk002 d8c86fd0b1
allow commands with hotkey guards to work 2022-11-14 16:46:01 -08:00
myk002 fb7b55fb11
open gui/launcher with the command on right arrow 2022-11-14 16:46:01 -08:00
myk002 ae2d9008ef
add frames around menu panels 2022-11-14 16:46:00 -08:00
myk002 6e005d4a8d
implement basic logic for hotspot menu 2022-11-14 16:46:00 -08:00
myk002 e3498f275f
fix dwarfmonitor weather widget 2022-11-14 16:45:08 -08:00
myk002 9ce9d2001c
adapt dwarfmonitor widgets to new API 2022-11-14 16:45:07 -08:00
myk002 2cf6767589
migrate dwarfmonitor widgets to overlay v2 2022-11-14 16:45:07 -08:00
myk002 19289bf3c8
clean up docs and code 2022-11-14 16:40:36 -08:00
myk002 208e96c1b7
bounds check overlay_onupdate_max_freq_seconds 2022-11-14 16:40:35 -08:00
myk002 56cf7e945c
use anywhere hotkey so the overlay can be invoked 2022-11-14 16:40:35 -08:00
myk002 9bdc995f20
write docs and make implementation match the docs
added ability to enable/disable all
added showing current widget configuration
added moving widget back to default coordinates
2022-11-14 16:40:35 -08:00
myk002 ffc09ff25d
record explicitly triggered widget screens 2022-11-14 16:40:35 -08:00
myk002 6e0a583e8d
enable overlay from init scripts; self-enable bad
loading other plugin modules during plugin_init results in those other
plugin modules not getting initialized properly. specifically, their
DFHACK_PLUGIN_LUA_FUNCTIONS and commands don't get added to their lua
module namespaces.
2022-11-14 16:40:35 -08:00
myk002 1ebf58ff83
rewrite conf management according to discord convo
move non-user-editable state into the widget config
remove registry json files
all user-editable state is now in a single overlay.json file
2022-11-14 16:40:35 -08:00
myk002 94c6bc8063
refactor generic lua function caller to Lua ns 2022-11-14 16:40:35 -08:00
myk002 6e6e174c31
implement CLI interface 2022-11-14 16:40:34 -08:00
myk002 a76c04c9ec
load overlay widget configuration 2022-11-14 16:40:34 -08:00
myk002 bd318b7a21
implement basic overlay event logic 2022-11-14 16:40:34 -08:00
myk002 d7fba5c720
add stub lua layer for overlay 2022-11-14 16:40:34 -08:00
lethosor 2d40626912
Change other instances of "0x%p" to "%p"
Followup to c0f9488b61
2022-11-10 16:02:28 -05:00
myk002 c0f9488b61
fix double "0x" when printing address in probe 2022-11-10 10:48:04 -08:00
Myk eac7fac8e9
Merge pull request #2389 from myk002/myk_gui_anywhere
[Gui] add "anywhere" keybinding guard
2022-11-09 15:48:04 -08:00
myk002 8cd9c88981
use new standard "anywhere" hotkey in Gui 2022-11-09 14:34:39 -08:00
myk002 d95a5ac238
add string_to_int to MiscUtils.h 2022-11-09 11:55:29 -08:00
Myk 8a47c103fc
Merge pull request #2379 from myk002/myk_overlay_reset_and_simplify
[overlay] reset implementation and simplify with lovely preprocessor macros
2022-11-09 10:32:15 -08:00
myk002 dce312b83b
Revert "use preprocessor foreach to reduce boilerplate"
This reverts commit 5e845ec7983555a3577e583038da824902dbf477.
not compatible with our MSVC toolchain. we can revert this revert once
we update MSVC for the steam release
2022-11-09 09:37:51 -08:00
myk002 69673c2472
remove unused (and unusable) instance fields 2022-11-09 09:37:43 -08:00
myk002 2f81c3a696
use preprocessor foreach to reduce boilerplate 2022-11-09 09:37:43 -08:00
myk002 78e5c072e5
reset overlay code to skeleton 2022-11-09 09:37:43 -08:00
myk002 3a713c6368
update devel plugins 2022-11-07 17:52:39 -08:00
myk002 5b9c18fc3c
migrate string fns from uicommon to MiscUtils
and clean up some leaky usings
2022-11-07 15:36:16 -08:00
Myk 1e31cc197d
Merge branch 'develop' into spectate 2022-10-26 12:30:58 -07:00
Myk c7f4f57367
Merge pull request #2360 from myk002/myk_automaterial_render
[automaterial] fix render errors with box boundaries
2022-10-26 12:25:48 -07:00
Myk e60cbfc743
Merge pull request #2361 from myk002/myk_zjump_twbt
[mousequery] fix z-level jumps when clicking quickly
2022-10-26 12:25:40 -07:00
Josh Cooper 9dc199dac3
Apply suggestions from code review 2022-10-25 15:01:57 -07:00
Josh Cooper 48e0b53adc
Fixes logical error in new failsafe 2022-10-24 17:59:29 -07:00
Josh Cooper 606f204b82
Apply suggestions from code review 2022-10-24 17:57:14 -07:00
myk002 7b2119c4d1
remove debug statement that doesn't help 2022-10-24 17:03:28 -07:00
myk002 8b61a17009
prevent z-level from changing after box select
if the player clicks the mouse too fast after finishing a selection
2022-10-24 12:46:31 -07:00
myk002 01c46f7a7e
fix z-level jumps when clicking quickly
this happens when TWBT is enabled and multilevel is > 0
getDepthAt() returns inconsistent values for the same position, leading
to a mismatch when we "unshift" the coordinates to account for render
depth
2022-10-24 12:44:25 -07:00
myk002 6a57cc4450
fix render errors with automaterial box boundaries 2022-10-24 12:41:17 -07:00
Josh Cooper a39d3f20a7 Replaces unsigned integer for freq map's value to ensure reasonable p's 2022-10-21 00:02:42 -07:00
Josh Cooper f0baaff9db Merge remote-tracking branch 'origin/spectate' into spectate 2022-10-20 23:53:20 -07:00
Josh Cooper f66dd6f404 Implements change requests
- removes redundant `if (df::global::ui)` checks; and tested to ensure no segfaults cropped up like in the past times I've removed these
- removes useless `if (pause_lock)` pause lock is set when plugin initializes, even if pause lock was left null (since we technically don't need it, and that was the point of the null check) it still would be a useless check (actually an impediment preventing functionality)
- removes disabled interpose code
- removes lua linkage
- updates doc

extra:
- surrounds user input for tick frequency with `std::abs()` not that we would have ended up with a negative value, but it was probably a typo and this is easier than printing an error or letting it underflow past max int (on most systems)
2022-10-20 23:52:30 -07:00
Josh Cooper fd747525d0
Removes atomic_bool from pause.h
this is 99% for triggering CI
2022-10-15 22:58:21 -07:00
Josh Cooper 851ff10959 Fixes uninitialized warning 2022-10-14 18:23:48 -07:00
Josh Cooper 9b1541add5 Merge branch 'develop' into spectate 2022-10-14 17:41:34 -07:00
Josh Cooper 45ac340f37 Finalizes spectate update
- Fixes for state transitions that were found broken. eg. plugin disabled -> enable auto-unpause feature -> enable plugin (auto-unpause will not truly be enabled; similar transitions were broken)
- Adds a commented out lock for if the pause code is ever adopted into the core API, as to enable many mods to use the `World::SetPauseState()` without walking over each other, and in the case of `reveal hell` also be able to avoid needing to set the state every tick in onupdate
- Revises the usage docs with `enable|disable|set` syntax
2022-10-14 17:02:43 -07:00
Josh Cooper 736313d16b Extends pause api 2022-10-14 15:55:44 -07:00
Josh Cooper aa64dea61d Revert "Includes pause.h in spectate's cmake"
This reverts commit 2c9ce5f316.
2022-10-14 15:44:52 -07:00
Josh Cooper d53746ed48 Fixes various state transition edge cases 2022-10-14 15:43:39 -07:00
myk002 20c0b75f8b
reduce size of overlay button 2022-10-14 13:20:50 -07:00
myk002 fea0ce0718
fix cvs quoting 2022-10-14 13:11:26 -07:00
Josh Cooper 7c769ebb9c Disables pause locking and announcement manipulation code in spectate 2022-10-14 12:42:20 -07:00
Josh Cooper ff072bf0c2 Updates spectate's pause locking 2022-10-14 12:41:36 -07:00
myk002 b1bf80e585
support "group" file split strategy for blueprint 2022-10-14 12:27:24 -07:00
Josh Cooper ffed499057 Swaps static variable instantiation order in pause.cpp 2022-10-13 23:22:51 -07:00
Josh Cooper c9165f8999 Adds the pause.h World::Update() to onupdate, to keep settings locked 2022-10-13 11:57:05 -07:00
Josh Cooper 2c9ce5f316 Includes pause.h in spectate's cmake
as to.. "changes to the header file will trigger recompliation"
2022-10-13 11:52:39 -07:00
myk002 b4986aad97
create meta bp only if it will reduce the bp count 2022-10-12 17:49:37 -07:00
myk002 c52138b168
generate meta blueprints 2022-10-12 17:42:36 -07:00
myk002 f411ba76ba
record accurate room sizes in blueprints 2022-10-12 16:33:06 -07:00
myk002 80d993e734
split rooms phase from query and record names 2022-10-12 16:01:54 -07:00
Josh Cooper e5b8de55ef Adds missing newlines 2022-10-12 14:44:51 -07:00
Josh Cooper 8d8ef023fd Merge branch 'develop' into spectate 2022-10-12 14:40:56 -07:00
Josh Cooper cd4c6489dc Changed spectate auto-disengage to only trigger when unpaused 2022-10-12 14:39:49 -07:00
Josh Cooper 303599222c Revert "Revises nopause in reveal with pause API in World module"
This reverts commit 318dd4c7db.
2022-10-12 14:15:11 -07:00
Josh Cooper 63e9192367 Moves specate and pause-api to plugins/spectate/ 2022-10-12 14:13:09 -07:00
myk002 b78af72403
record built constructions in blueprint 2022-10-12 13:31:46 -07:00
Josh Cooper ddf7850d90 Merge branch 'develop' into spectate 2022-10-12 11:33:55 -07:00
Josh Cooper a49538695d Ensures consistent formatting and improves some comments 2022-10-12 11:21:59 -07:00
myk002 598f2c4b12
support --smooth option for blueprints 2022-10-12 10:10:53 -07:00
myk002 cc61d4a82a
use rendered help instead of hard-coded 2022-10-10 17:03:57 -07:00
myk002 33816b8bc2
optionally process only the cur z-level and below 2022-10-05 14:01:09 -07:00
myk002 39acd3e992
don't display overlay on trade goods screen
so it doesn't overlap the trade value label
2022-09-21 08:59:36 -07:00
myk002 2481676370
fix mouse pos offset and output 'X' at screen edge 2022-09-19 11:13:47 -07:00
Myk Taylor 8fd86f6e56
fix typo in kittens.cpp 2022-09-18 08:40:22 -07:00
Myk Taylor 215a5b0a24
add Gui::getMousePos() that always gets map coords 2022-09-18 08:19:02 -07:00
Myk Taylor 3b89f482d1
use the new Screen::getMousePos() implementation 2022-09-18 08:18:08 -07:00
myk002 dc5010c2e2
don't block text on the new region screen 2022-09-16 22:05:08 -07:00
myk002 d0a5db2a0d
set sentinel value used by TWBT 2022-09-16 21:56:05 -07:00
myk002 3feca2ae58
make the overlay work with TWBT 2022-09-16 21:56:04 -07:00
myk002 4800037ad3
in dwarf mode, we must use lbut_down 2022-09-16 21:56:04 -07:00
myk002 8ab2f063df
hook remaining df screens 2022-09-16 21:56:04 -07:00
myk002 ad7de34d3f
add clickable overlay to title screen 2022-09-16 21:56:04 -07:00
myk002 170d7b9b51
typo fix in infiniteSky docs 2022-09-16 15:24:18 -07:00
myk002 040d018b8e
fix order of tree designation in autochop 2022-09-07 10:34:56 -07:00
myk002 86e1a8d59c
When smoothing walls, connect to doors and fgates 2022-09-07 10:11:51 -07:00
Josh Cooper 15c3e2eae8 Fixes multi-platform/build support of print line format specifier 2022-09-04 19:32:42 -07:00
Josh Cooper d28e4e31d8 Fixes print line format specifier 2022-09-04 16:29:05 -07:00
Josh Cooper 37c4de1ad6 Removes stderr prints from spectate 2022-09-03 18:35:04 -07:00
Josh Cooper 1d5ae827df Fixes segmentation fault 2022-09-03 17:58:40 -07:00
Josh Cooper a260e6992e Reorders spectate code blocks, and adds persisting configuration 2022-09-03 17:02:57 -07:00
Josh Cooper 1edcaf4ca8 Fixes type warning build errors 2022-09-03 11:41:29 -07:00
Josh Cooper b6c97214ca Adds more features to spectate 2022-09-03 11:18:46 -07:00
Josh Cooper d90d0f86af Removes spectate usage from cpp file 2022-09-02 21:38:48 -07:00
Josh Cooper ed73d370fc Adds placeholder for feature to disengage the plugin on player input 2022-09-02 21:12:27 -07:00
Josh Cooper a4515daed4 Removes useless and redundant code from spectate 2022-09-02 20:52:14 -07:00
Josh Cooper 318dd4c7db Revises nopause in reveal with pause API in World module 2022-09-01 16:55:43 -07:00
Josh Cooper 24fe4da6ba Replaces spectate:auto-unpause with pausing API in World module 2022-09-01 16:53:26 -07:00
Josh Cooper 33b92e6f69 Implements auto-unpause feature for spectate plugin 2022-09-01 16:53:26 -07:00
Josh Cooper 3ef4654966 Adds unpause code to spectate 2022-09-01 16:45:05 -07:00
myk002 df9c37a8b7
Merge branch 'develop' into docs 2022-08-15 17:09:36 -07:00
myk002 b2a4f10c22 output onupdate log messages by default
but include info on how to make it stop
2022-08-15 16:15:41 -07:00
myk002 f400ee50f8 refine docs, logging, help text 2022-08-15 16:15:41 -07:00
myk002 a28cf6d444 remove all lua integration from the examples 2022-08-15 16:15:41 -07:00
myk002 a4c8535977 add argparse int checking methods, more docs 2022-08-15 16:15:41 -07:00
myk002 43dfd27bb4 create several use-case-focused plugin examples 2022-08-15 16:15:41 -07:00
myk002 0bbbacf161 extend the docs and examples in skeleton.cpp 2022-08-15 16:15:41 -07:00
myk002 2f9021a3a0 move examples to the examples folder 2022-08-15 16:15:41 -07:00
myk002 9f648d532e modify seedwatch all to actually watch all seeds 2022-08-15 16:11:13 -07:00