stats button toggle working

This commit is contained in:
Hash Borgir 2024-04-19 14:17:43 -06:00
parent 4600940fbc
commit b2f9685c20
82 changed files with 257 additions and 254 deletions

View File

@ -2,7 +2,7 @@
<Project>
<ProjectOutputs>
<ProjectOutput>
<FullPath>D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\D2tweaks.dll</FullPath>
<FullPath>D:\Diablo II\MODS\ironman-dev\D2tweaks.dll</FullPath>
</ProjectOutput>
</ProjectOutputs>
<ContentFiles />

Binary file not shown.

View File

@ -1,28 +1,5 @@
 client.cpp
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets(517,5): warning MSB8004: Output Directory does not end with a trailing slash. This build instance will add the slash as it is required to allow proper evaluation of the Output Directory.
autosort_client.cpp
auto_gold_pickup_client.cpp
auto_item_pickup_client.cpp
damage_display_client.cpp
item_drop_message_client.cpp
item_move_client.cpp
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\item_move\item_move_client.cpp(99,33): warning C4018: '<': signed/unsigned mismatch
loot_filter.cpp
loot_filter_settings_menu.cpp
loot_filter_settings_toggle_menu.cpp
trader_update_client.cpp
transmute_client.cpp
autosort_server.cpp
auto_gold_pickup_server.cpp
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\auto_gold_pickup\auto_gold_pickup_server.cpp(51,33): warning C4018: '>': signed/unsigned mismatch
auto_item_pickup_server.cpp
damage_display_server.cpp
identify_on_pickup_server.cpp
item_drop_message_server.cpp
item_move_server.cpp
trader_update_server.cpp
transmute_server.cpp
server.cpp
main.cpp
D2Template.cpp
DllNotify.cpp
D2tweaks.vcxproj -> D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\D2tweaks.dll
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\autosort\autosort_client.cpp(1163,13): warning C4244: 'argument': conversion from 'time_t' to 'unsigned int', possible loss of data
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\autosort\autosort_client.cpp(1168,32): warning C4244: '=': conversion from 'ULONGLONG' to 'long', possible loss of data
D2tweaks.vcxproj -> D:\Diablo II\MODS\ironman-dev\D2tweaks.dll

View File

@ -1,63 +1,63 @@
D:\VSCode\D2tweaks_src_17.04.2024\src\common\asm_code.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\common\asm_code.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\common\config.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\common\config.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\common\hooking.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\common\hooking.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\common\ini.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\common\ini.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\common\string_utils.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\common\string_utils.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\autosort\autosort_client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\autosort\autosort_client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\auto_gold_pickup\auto_gold_pickup_client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\auto_gold_pickup\auto_gold_pickup_client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\auto_item_pickup\auto_item_pickup_client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\auto_item_pickup\auto_item_pickup_client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\client_module.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\client_module.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\damage_display\damage_display_client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\damage_display\damage_display_client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\item_drop_message\item_drop_message_client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\item_drop_message\item_drop_message_client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\item_move\item_move_client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\item_move\item_move_client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\loot_filter\loot_filter.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\loot_filter\loot_filter.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\loot_filter\loot_filter_settings.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\loot_filter\loot_filter_settings.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\loot_filter\loot_filter_settings_menu.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\loot_filter\loot_filter_settings_menu.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\loot_filter\loot_filter_settings_toggle_menu.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\loot_filter\loot_filter_settings_toggle_menu.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\small_patches\small_patches.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\small_patches\small_patches.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\test\test.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\test\test.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\trader_update\trader_update_client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\trader_update\trader_update_client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\client\modules\transmute\transmute_client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\client\modules\transmute\transmute_client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\common\asset_manager.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\common\asset_manager.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\common\common.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\common\common.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\autosort\autosort_server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\autosort\autosort_server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\auto_gold_pickup\auto_gold_pickup_server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\auto_gold_pickup\auto_gold_pickup_server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\auto_item_pickup\auto_item_pickup_server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\auto_item_pickup\auto_item_pickup_server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\damage_display\damage_display_server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\damage_display\damage_display_server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\identify_on_pickup\identify_on_pickup_server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\identify_on_pickup\identify_on_pickup_server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\item_drop_message\item_drop_message_server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\item_drop_message\item_drop_message_server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\item_move\item_move_server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\item_move\item_move_server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\server_module.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\server_module.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\test\test.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\test\test.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\trader_update\trader_update_server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\trader_update\trader_update_server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\modules\transmute\transmute_server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\modules\transmute\transmute_server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\server\server.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\server\server.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\ui\controls\button.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\ui\controls\button.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\ui\controls\checkbox.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\ui\controls\checkbox.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\ui\controls\group.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\ui\controls\group.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\ui\controls\image.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\ui\controls\image.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\ui\controls\label.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\ui\controls\label.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\ui\menu.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\ui\menu.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\d2tweaks\ui\ui_manager.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\d2tweaks\ui\ui_manager.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\d2client.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\d2client.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\d2cmp.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\d2cmp.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\d2common.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\d2common.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\d2game.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\d2game.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\d2gfx.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\d2gfx.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\d2lang.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\d2lang.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\d2launch.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\d2launch.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\d2net.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\d2net.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\d2win.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\d2win.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\fog.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\fog.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\storm.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\storm.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\utils\mpq_ifstream.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\utils\mpq_ifstream.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\diablo2\utils\screen.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\diablo2\utils\screen.obj
D:\VSCode\D2tweaks_src_17.04.2024\src\main.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\src\main.obj
D:\VSCode\D2tweaks_src_17.04.2024\vendor\D2Template\D2Template.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\vendor\D2Template\D2Template.obj
D:\VSCode\D2tweaks_src_17.04.2024\vendor\DllNotify\DllNotify.cpp;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\vendor\DllNotify\DllNotify.obj
D:\VSCode\D2tweaks_src_17.04.2024\vendor\minhook\src\buffer.c;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\vendor\minhook\src\buffer.obj
D:\VSCode\D2tweaks_src_17.04.2024\vendor\minhook\src\hde\hde32.c;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\vendor\minhook\src\hde\hde32.obj
D:\VSCode\D2tweaks_src_17.04.2024\vendor\minhook\src\hde\hde64.c;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\vendor\minhook\src\hde\hde64.obj
D:\VSCode\D2tweaks_src_17.04.2024\vendor\minhook\src\hook.c;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\vendor\minhook\src\hook.obj
D:\VSCode\D2tweaks_src_17.04.2024\vendor\minhook\src\trampoline.c;D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\vendor\minhook\src\trampoline.obj
D:\VSCode\d2tweaks-rnd2k\src\common\asm_code.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\common\asm_code.obj
D:\VSCode\d2tweaks-rnd2k\src\common\config.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\common\config.obj
D:\VSCode\d2tweaks-rnd2k\src\common\hooking.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\common\hooking.obj
D:\VSCode\d2tweaks-rnd2k\src\common\ini.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\common\ini.obj
D:\VSCode\d2tweaks-rnd2k\src\common\string_utils.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\common\string_utils.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\client.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\autosort\autosort_client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\autosort\autosort_client.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\auto_gold_pickup\auto_gold_pickup_client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\auto_gold_pickup\auto_gold_pickup_client.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\auto_item_pickup\auto_item_pickup_client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\auto_item_pickup\auto_item_pickup_client.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\client_module.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\client_module.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\damage_display\damage_display_client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\damage_display\damage_display_client.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\item_drop_message\item_drop_message_client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\item_drop_message\item_drop_message_client.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\item_move\item_move_client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\item_move\item_move_client.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\loot_filter\loot_filter.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\loot_filter\loot_filter.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\loot_filter\loot_filter_settings.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\loot_filter\loot_filter_settings.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\loot_filter\loot_filter_settings_menu.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\loot_filter\loot_filter_settings_menu.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\loot_filter\loot_filter_settings_toggle_menu.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\loot_filter\loot_filter_settings_toggle_menu.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\small_patches\small_patches.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\small_patches\small_patches.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\test\test.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\test\test.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\trader_update\trader_update_client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\trader_update\trader_update_client.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\client\modules\transmute\transmute_client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\client\modules\transmute\transmute_client.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\common\asset_manager.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\common\asset_manager.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\common\common.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\common\common.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\autosort\autosort_server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\autosort\autosort_server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\auto_gold_pickup\auto_gold_pickup_server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\auto_gold_pickup\auto_gold_pickup_server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\auto_item_pickup\auto_item_pickup_server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\auto_item_pickup\auto_item_pickup_server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\damage_display\damage_display_server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\damage_display\damage_display_server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\identify_on_pickup\identify_on_pickup_server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\identify_on_pickup\identify_on_pickup_server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\item_drop_message\item_drop_message_server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\item_drop_message\item_drop_message_server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\item_move\item_move_server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\item_move\item_move_server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\server_module.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\server_module.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\test\test.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\test\test.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\trader_update\trader_update_server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\trader_update\trader_update_server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\modules\transmute\transmute_server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\modules\transmute\transmute_server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\server\server.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\server\server.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\ui\controls\button.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\ui\controls\button.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\ui\controls\checkbox.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\ui\controls\checkbox.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\ui\controls\group.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\ui\controls\group.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\ui\controls\image.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\ui\controls\image.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\ui\controls\label.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\ui\controls\label.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\ui\menu.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\ui\menu.obj
D:\VSCode\d2tweaks-rnd2k\src\d2tweaks\ui\ui_manager.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\d2tweaks\ui\ui_manager.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\d2client.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\d2client.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\d2cmp.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\d2cmp.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\d2common.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\d2common.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\d2game.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\d2game.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\d2gfx.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\d2gfx.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\d2lang.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\d2lang.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\d2launch.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\d2launch.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\d2net.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\d2net.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\d2win.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\d2win.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\fog.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\fog.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\storm.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\storm.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\utils\mpq_ifstream.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\utils\mpq_ifstream.obj
D:\VSCode\d2tweaks-rnd2k\src\diablo2\utils\screen.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\diablo2\utils\screen.obj
D:\VSCode\d2tweaks-rnd2k\src\main.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\src\main.obj
D:\VSCode\d2tweaks-rnd2k\vendor\D2Template\D2Template.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\vendor\D2Template\D2Template.obj
D:\VSCode\d2tweaks-rnd2k\vendor\DllNotify\DllNotify.cpp;D:\VSCode\d2tweaks-rnd2k\Build\Debug\vendor\DllNotify\DllNotify.obj
D:\VSCode\d2tweaks-rnd2k\vendor\minhook\src\buffer.c;D:\VSCode\d2tweaks-rnd2k\Build\Debug\vendor\minhook\src\buffer.obj
D:\VSCode\d2tweaks-rnd2k\vendor\minhook\src\hde\hde32.c;D:\VSCode\d2tweaks-rnd2k\Build\Debug\vendor\minhook\src\hde\hde32.obj
D:\VSCode\d2tweaks-rnd2k\vendor\minhook\src\hde\hde64.c;D:\VSCode\d2tweaks-rnd2k\Build\Debug\vendor\minhook\src\hde\hde64.obj
D:\VSCode\d2tweaks-rnd2k\vendor\minhook\src\hook.c;D:\VSCode\d2tweaks-rnd2k\Build\Debug\vendor\minhook\src\hook.obj
D:\VSCode\d2tweaks-rnd2k\vendor\minhook\src\trampoline.c;D:\VSCode\d2tweaks-rnd2k\Build\Debug\vendor\minhook\src\trampoline.obj

View File

@ -1,2 +1,2 @@
PlatformToolSet=v143:VCToolArchitecture=Native32Bit:VCToolsVersion=14.39.33519:TargetPlatformVersion=10.0.19041.0:
Debug|Win32|D:\VSCode\D2tweaks_src_17.04.2024\|
Debug|Win32|D:\VSCode\d2tweaks-rnd2k\|

File diff suppressed because one or more lines are too long

View File

@ -1 +1,2 @@
D:\VSCode\D2tweaks_src_17.04.2024\Build\Debug\D2tweaks.dll
D:\VSCode\d2tweaks-rnd2k\Build\Debug\D2tweaks.dll

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -25,6 +25,9 @@ extern int randStatRangeLow;
extern int randStatRangeHigh;
extern int randStatBool;
extern bool m_stats_enabled;
namespace diablo2 {
namespace structures {
struct unit;

View File

@ -16,12 +16,14 @@ namespace d2_tweaks {
namespace modules {
class loot_filter_settings_toggle_menu final : public ui::menu, singleton<loot_filter_settings_toggle_menu> {
ui::controls::button* m_toggle_filter_settings_btn;
ui::controls::button* m_btn_toggle_stats;
menu* m_filter_settings_menu;
bool m_show;
public:
explicit loot_filter_settings_toggle_menu(token);
void toggle_filter_settings_click();
void toggle_stats_settings_click();
void draw() override;

View File

@ -50,6 +50,7 @@ int randStatRangeLow;
int randStatRangeHigh;
int randStatBool;
std::wstring ConvertCharToWString(const std::string& charString) {
std::wstring_convert<std::codecvt_utf8<wchar_t>> converter;
return converter.from_bytes(charString);
@ -271,14 +272,14 @@ void d2_tweaks::client::client::init() {
if (m_module == nullptr)
break;
randStat = GetPrivateProfileIntA("RandStat", "stat", 0, lpIniFilePath);
randStatRangeLow = GetPrivateProfileIntA("RandStat", "statRangeLow", 0, lpIniFilePath);
randStatRangeHigh = GetPrivateProfileIntA("RandStat", "statRangeHigh", 0, lpIniFilePath);
randStatBool = GetPrivateProfileIntA("RandStat", "statBool", 0, lpIniFilePath);
//randStat = GetPrivateProfileIntA("RandStat", "stat", 0, lpIniFilePath);
//randStatRangeLow = GetPrivateProfileIntA("RandStat", "statRangeLow", 0, lpIniFilePath);
//randStatRangeHigh = GetPrivateProfileIntA("RandStat", "statRangeHigh", 0, lpIniFilePath);
//randStatBool = GetPrivateProfileIntA("RandStat", "statBool", 0, lpIniFilePath);
spdlog::info("randStat = {0}", randStat);
spdlog::info("randStatRangeLow = {0}", randStatRangeLow);
spdlog::info("randStatRangeHigh = {0}", randStatRangeHigh);
//spdlog::info("randStat = {0}", randStat);
//spdlog::info("randStatRangeLow = {0}", randStatRangeLow);
//spdlog::info("randStatRangeHigh = {0}", randStatRangeHigh);

View File

@ -1226,174 +1226,175 @@ public:
// Initialize statValue
int32_t statValue = 0;
for (const auto& stat : stats) {
if (m_stats_enabled) {
for (const auto& stat : stats) {
double param = 6;
double param = 6;
int32_t spirits = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(185), NULL);
int32_t soulscaptured = statValue = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(184), NULL);
int32_t spirits = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(185), NULL);
int32_t soulscaptured = statValue = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(184), NULL);
switch (stat.stat) {
// 2. (statValue <- this is probably op stat1 ? * baseValue <- this is probably op base ) / 2 ^ param
switch (stat.stat) {
// 2. (statValue <- this is probably op stat1 ? * baseValue <- this is probably op base ) / 2 ^ param
// (op stat1 value * base stat value) / (2 ^ param)
// let's try this fucking thing
// (op stat1 value * base stat value) / (2 ^ param)
// let's try this fucking thing
case 190: {
// str/spirits
statValue = static_cast<int32_t>((1 * spirits) / pow(2, param)); // what is the value of opStat_str
break;
}
case 191: {
// dex/spirits
statValue = static_cast<int32_t>((1 * spirits) / pow(2, param)); // what is the value of opStat_str
break;
}
case 192: {
// vit/spirits
statValue = static_cast<int32_t>((1 * spirits) / pow(2, param)); // what is the value of opStat_str
break;
}
case 193: {
// enr/spirits
statValue = static_cast<int32_t>((1 * spirits) / pow(2, param)); // what is the value of opStat_str
break;
}
case 200: {
// skills/souls
param = 8;
statValue = static_cast<int32_t>((1 * soulscaptured) / pow(2, param)); // what is the value of opStat_str
break;
}
case 190: {
// str/spirits
statValue = static_cast<int32_t>((1 * spirits) / pow(2, param)); // what is the value of opStat_str
break;
}
case 191: {
// dex/spirits
statValue = static_cast<int32_t>((1 * spirits) / pow(2, param)); // what is the value of opStat_str
break;
}
case 192: {
// vit/spirits
statValue = static_cast<int32_t>((1 * spirits) / pow(2, param)); // what is the value of opStat_str
break;
}
case 193: {
// enr/spirits
statValue = static_cast<int32_t>((1 * spirits) / pow(2, param)); // what is the value of opStat_str
break;
}
case 200: {
// skills/souls
param = 8;
statValue = static_cast<int32_t>((1 * soulscaptured) / pow(2, param)); // what is the value of opStat_str
break;
}
case 301: {
for (auto item : items) {
const auto record = diablo2::d2_common::get_item_record(item->data_record_index);
if (record->type == 104) {
statValue = diablo2::d2_common::get_stat(item, static_cast<diablo2::unit_stats_t>(stat.stat), NULL);
case 301: {
for (auto item : items) {
const auto record = diablo2::d2_common::get_item_record(item->data_record_index);
if (record->type == 104) {
statValue = diablo2::d2_common::get_stat(item, static_cast<diablo2::unit_stats_t>(stat.stat), NULL);
}
}
break;
}
case 304: {
for (auto item : items) {
const auto record = diablo2::d2_common::get_item_record(item->data_record_index);
if (record->type == 104) {
statValue = diablo2::d2_common::get_stat(item, static_cast<diablo2::unit_stats_t>(stat.stat), NULL);
}
}
break;
}
default: {
// By default, get player stats
statValue = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(stat.stat), NULL);
break;
}
}
/*
int32_t diablo2::d2_common::set_stat(structures::unit* unit, unit_stats_t stat, uint32_t value, int16_t param) {
static wrap_func_std_import<int32_t(structures::unit*, int32_t, int32_t, int32_t)> set_stat(10517, get_base());
return set_stat(unit, stat, value, param);
}
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> dis(randStatRangeLow, randStatRangeHigh);
unsigned int randomNumber = dis(gen);
std::random_device rdb;
std::mt19937 genb(rdb());
std::uniform_int_distribution<> randBool(1, 2);
unsigned int randomBool = randBool(genb) - 1;
if (stat.is_item_stat == 1) {
for (auto item : items) {
const auto record = diablo2::d2_common::get_item_record(item->data_record_index);
int RandStatValue = diablo2::d2_common::get_stat(item, static_cast<diablo2::unit_stats_t>(randStat), NULL);
if (record->type == stat.item_type_id && RandStatValue != 0) {
// set randStat value to random number 1 and 2^(32) = 4294967296
diablo2::d2_common::set_stat(item, static_cast<diablo2::unit_stats_t>(randStat), randomNumber, 0);
diablo2::d2_common::set_stat(item, static_cast<diablo2::unit_stats_t>(randStatBool), randomBool, 0);
}
}
}
break;
}
else {
// set randStat value to random number 1 and 2^(32) = 4294967296
//diablo2::d2_common::set_stat(player, static_cast<diablo2::unit_stats_t>(randStat), randomNumber, 0);
//diablo2::d2_common::set_stat(player, static_cast<diablo2::unit_stats_t>(randStatBool), randomBool, 0);
case 304: {
for (auto item : items) {
const auto record = diablo2::d2_common::get_item_record(item->data_record_index);
if (record->type == 104) {
statValue = diablo2::d2_common::get_stat(item, static_cast<diablo2::unit_stats_t>(stat.stat), NULL);
int statValue1 = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(randStat), NULL);
int statValue2 = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(randStatBool), NULL);
if (statValue1 > 0 ) {
diablo2::d2_common::set_stat(player, static_cast<diablo2::unit_stats_t>(randStat), 0, 0);
diablo2::d2_common::set_stat(player, static_cast<diablo2::unit_stats_t>(randStatBool), 0, 0);
}
}
break;
}
*/
auto statValueStr = std::to_wstring(statValue);
std::wstring statText = std::wstring(stat.stat_display_string);// .append(L" " + statValueStr);
if (!diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_STASH)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_CHARACTER)
// && !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_INVENTORY)
// && !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_SKILL)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_CHAT)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_NPCMENU)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_MAINMENU)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_CONFIG)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_NPCSHOP)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_ANVIL)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_QUEST)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_QUESTLOG)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_STATUSAREA)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_WPMENU)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_PARTY)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_TRADE)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_MSGS)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_CUBE)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_BELT)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_HELP)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_MERC)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_SCROLL)) {
// Draw stats
diablo2::d2_win::set_current_font(fontMap[statsFont]); // Set font to FONT16
diablo2::d2_win::draw_text(const_cast<wchar_t*>(statText.c_str()), stat.x1, stat.y1 + textOffset, stat.colorStat, 0);
diablo2::d2_win::set_current_font(fontMap[statsFont]); // Set font to FONT16
diablo2::d2_win::draw_text(const_cast<wchar_t*>(statValueStr.c_str()), stat.x2, stat.y2 + textOffset, stat.colorStatValue, 0);
//diablo2::d2_win::draw_boxed_text(const_cast<wchar_t*>(statText.c_str()), stat.x1, stat.y1 + textOffset, 1, 0, stat.colorStat);
//diablo2::d2_win::draw_boxed_text(const_cast<wchar_t*>(statValueStr.c_str()), stat.x2, stat.y2 + textOffset, 1, 4, stat.colorStatValue);
// diablo2::d2_win::set_current_font(diablo2::UI_FONT_16); // Set font to FONT16
//diablo2::structures::d2_cmp::init_gfx_data(&g_gfxdata);
//diablo2::d2_gfx::draw_image(&g_gfxdata, 200, 200, 1, 5, 0);
// instead try to load direct jpg with gdi and insetad ofloading jpg file, specify it bb64 encoded and decode it.
diablo2::ui_color_t::UI_COLOR_WHITE;
OnDraw();
default: {
// By default, get player stats
statValue = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(stat.stat), NULL);
break;
}
}
/*
int32_t diablo2::d2_common::set_stat(structures::unit* unit, unit_stats_t stat, uint32_t value, int16_t param) {
static wrap_func_std_import<int32_t(structures::unit*, int32_t, int32_t, int32_t)> set_stat(10517, get_base());
return set_stat(unit, stat, value, param);
}
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> dis(randStatRangeLow, randStatRangeHigh);
unsigned int randomNumber = dis(gen);
std::random_device rdb;
std::mt19937 genb(rdb());
std::uniform_int_distribution<> randBool(1, 2);
unsigned int randomBool = randBool(genb) - 1;
if (stat.is_item_stat == 1) {
for (auto item : items) {
const auto record = diablo2::d2_common::get_item_record(item->data_record_index);
int RandStatValue = diablo2::d2_common::get_stat(item, static_cast<diablo2::unit_stats_t>(randStat), NULL);
if (record->type == stat.item_type_id && RandStatValue != 0) {
// set randStat value to random number 1 and 2^(32) = 4294967296
diablo2::d2_common::set_stat(item, static_cast<diablo2::unit_stats_t>(randStat), randomNumber, 0);
diablo2::d2_common::set_stat(item, static_cast<diablo2::unit_stats_t>(randStatBool), randomBool, 0);
}
}
}
else {
// set randStat value to random number 1 and 2^(32) = 4294967296
//diablo2::d2_common::set_stat(player, static_cast<diablo2::unit_stats_t>(randStat), randomNumber, 0);
//diablo2::d2_common::set_stat(player, static_cast<diablo2::unit_stats_t>(randStatBool), randomBool, 0);
int statValue1 = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(randStat), NULL);
int statValue2 = diablo2::d2_common::get_stat(player, static_cast<diablo2::unit_stats_t>(randStatBool), NULL);
if (statValue1 > 0 ) {
diablo2::d2_common::set_stat(player, static_cast<diablo2::unit_stats_t>(randStat), 0, 0);
diablo2::d2_common::set_stat(player, static_cast<diablo2::unit_stats_t>(randStatBool), 0, 0);
}
}
*/
auto statValueStr = std::to_wstring(statValue);
std::wstring statText = std::wstring(stat.stat_display_string);// .append(L" " + statValueStr);
if (!diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_STASH)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_CHARACTER)
// && !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_INVENTORY)
// && !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_SKILL)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_CHAT)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_NPCMENU)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_MAINMENU)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_CONFIG)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_NPCSHOP)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_ANVIL)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_QUEST)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_QUESTLOG)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_STATUSAREA)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_WPMENU)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_PARTY)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_TRADE)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_MSGS)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_CUBE)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_BELT)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_HELP)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_MERC)
&& !diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_SCROLL)) {
// Draw stats
diablo2::d2_win::set_current_font(fontMap[statsFont]); // Set font to FONT16
diablo2::d2_win::draw_text(const_cast<wchar_t*>(statText.c_str()), stat.x1, stat.y1 + textOffset, stat.colorStat, 0);
diablo2::d2_win::set_current_font(fontMap[statsFont]); // Set font to FONT16
diablo2::d2_win::draw_text(const_cast<wchar_t*>(statValueStr.c_str()), stat.x2, stat.y2 + textOffset, stat.colorStatValue, 0);
//diablo2::d2_win::draw_boxed_text(const_cast<wchar_t*>(statText.c_str()), stat.x1, stat.y1 + textOffset, 1, 0, stat.colorStat);
//diablo2::d2_win::draw_boxed_text(const_cast<wchar_t*>(statValueStr.c_str()), stat.x2, stat.y2 + textOffset, 1, 4, stat.colorStatValue);
// diablo2::d2_win::set_current_font(diablo2::UI_FONT_16); // Set font to FONT16
//diablo2::structures::d2_cmp::init_gfx_data(&g_gfxdata);
//diablo2::d2_gfx::draw_image(&g_gfxdata, 200, 200, 1, 5, 0);
// instead try to load direct jpg with gdi and insetad ofloading jpg file, specify it bb64 encoded and decode it.
diablo2::ui_color_t::UI_COLOR_WHITE;
OnDraw();
}
}
if (!should_draw()) {
m_sort_inventory_btn->set_enabled(false);
m_sort_inventory_btn->set_visible(false);

View File

@ -9,6 +9,8 @@
#include <DllNotify.h>
#include <D2Template.h>
bool m_stats_enabled = false;
d2_tweaks::client::modules::loot_filter_settings_toggle_menu::loot_filter_settings_toggle_menu(token) {
m_show = false;
@ -23,13 +25,20 @@ d2_tweaks::client::modules::loot_filter_settings_toggle_menu::loot_filter_settin
if (DLLBASE_SGD2FREERES == 0 && DLLBASE_D2EXPRES == 0)
load_xml("d2tweaks\\interface_vanilla\\loot_filter_settings_toggle_menu.xml");
m_toggle_filter_settings_btn = static_cast<ui::controls::button*>(
get_control("m_toggle_filter_settings_btn"));
m_toggle_filter_settings_btn = static_cast<ui::controls::button*>(get_control("m_toggle_filter_settings_btn"));
m_toggle_filter_settings_btn->set_enabled(false);
m_toggle_filter_settings_btn->set_visible(false);
m_toggle_filter_settings_btn->set_on_click(std::bind(&loot_filter_settings_toggle_menu::toggle_filter_settings_click, this));
m_filter_settings_menu = singleton<ui::ui_manager>::instance().get_menu("loot_filter_settings_menu");
m_btn_toggle_stats = static_cast<ui::controls::button*>(get_control("m_toggle_stats"));
m_btn_toggle_stats->set_enabled(true);
m_btn_toggle_stats->set_visible(true);
m_btn_toggle_stats->set_on_click(std::bind(&loot_filter_settings_toggle_menu::toggle_stats_settings_click, this));
}
void d2_tweaks::client::modules::loot_filter_settings_toggle_menu::toggle_filter_settings_click() {
@ -37,9 +46,18 @@ void d2_tweaks::client::modules::loot_filter_settings_toggle_menu::toggle_filter
m_filter_settings_menu->set_enabled(m_show);
m_filter_settings_menu->set_visible(m_show);
m_btn_toggle_stats->set_enabled(true);
m_btn_toggle_stats->set_visible(true);
}
void d2_tweaks::client::modules::loot_filter_settings_toggle_menu::toggle_stats_settings_click() {
m_stats_enabled = !m_stats_enabled;
}
void d2_tweaks::client::modules::loot_filter_settings_toggle_menu::draw() {
m_btn_toggle_stats->set_enabled(diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_INTERFACE));
m_btn_toggle_stats->set_visible(diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_INTERFACE));
m_toggle_filter_settings_btn->set_enabled(diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_INTERFACE));
m_toggle_filter_settings_btn->set_visible(diablo2::d2_client::get_ui_window_state(diablo2::UI_WINDOW_INTERFACE));