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