mirror of
https://github.com/GreenComfyTea/MHR-Overlay.git
synced 2026-01-24 04:18:11 -08:00
Update customization_menu.lua
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
local customization_menu = {};
|
||||
|
||||
local table_helpers;
|
||||
local config;
|
||||
local screen;
|
||||
@@ -12,43 +13,52 @@ local time_UI;
|
||||
local keyboard;
|
||||
local label_customization;
|
||||
local bar_customization;
|
||||
|
||||
customization_menu.font = nil;
|
||||
customization_menu.font_range = { 0x1, 0xFFFF, 0 };
|
||||
customization_menu.is_opened = false;
|
||||
customization_menu.status = "OK";
|
||||
|
||||
customization_menu.window_position = Vector2f.new(480, 200);
|
||||
customization_menu.window_pivot = Vector2f.new(0, 0);
|
||||
customization_menu.window_size = Vector2f.new(720, 720);
|
||||
customization_menu.window_flags = 0x10120;
|
||||
customization_menu.color_picker_flags = 327680;
|
||||
customization_menu.decimal_input_flags = 33;
|
||||
|
||||
customization_menu.displayed_orientation_types = {};
|
||||
customization_menu.displayed_anchor_types = {};
|
||||
customization_menu.displayed_outline_styles = {};
|
||||
|
||||
customization_menu.displayed_monster_UI_sorting_types = {};
|
||||
customization_menu.displayed_monster_UI_parts_sorting_types = {};
|
||||
customization_menu.displayed_ailments_sorting_types = {};
|
||||
customization_menu.displayed_ailment_buildups_sorting_types = {};
|
||||
customization_menu.displayed_highlighted_buildup_bar_types = {};
|
||||
customization_menu.displayed_buildup_bar_relative_types = {};
|
||||
|
||||
customization_menu.displayed_damage_meter_UI_highlighted_bar_types = {};
|
||||
customization_menu.displayed_damage_meter_UI_damage_bar_relative_types = {};
|
||||
customization_menu.displayed_damage_meter_UI_my_damage_bar_location_types = {};
|
||||
customization_menu.displayed_damage_meter_UI_sorting_types = {};
|
||||
customization_menu.displayed_damage_meter_UI_dps_modes = {};
|
||||
|
||||
customization_menu.orientation_types = {};
|
||||
customization_menu.anchor_types = {};
|
||||
customization_menu.outline_styles = {};
|
||||
|
||||
customization_menu.monster_UI_sorting_types = {};
|
||||
customization_menu.ailments_sorting_types = {};
|
||||
customization_menu.ailment_buildups_sorting_types = {};
|
||||
customization_menu.highlighted_buildup_bar_types = {};
|
||||
customization_menu.buildup_bar_relative_types = {};
|
||||
|
||||
customization_menu.damage_meter_UI_highlighted_bar_types = {};
|
||||
customization_menu.damage_meter_UI_damage_bar_relative_types = {};
|
||||
customization_menu.damage_meter_UI_my_damage_bar_location_types = {};
|
||||
customization_menu.damage_meter_UI_sorting_types = {};
|
||||
customization_menu.damage_meter_UI_dps_modes = {};
|
||||
|
||||
customization_menu.fonts = { "Arial", "Arial Black", "Bahnschrift", "Calibri", "Cambria", "Cambria Math", "Candara",
|
||||
"Comic Sans MS", "Consolas", "Constantia", "Corbel", "Courier New", "Ebrima", "Franklin Gothic Medium", "Gabriola",
|
||||
"Gadugi", "Georgia", "HoloLens MDL2 Assets", "Impact", "Ink Free", "Javanese Text", "Leelawadee UI", "Lucida Console",
|
||||
@@ -57,6 +67,7 @@ customization_menu.fonts = { "Arial", "Arial Black", "Bahnschrift", "Calibri", "
|
||||
"Mongolian Baiti", "MS Gothic", "MV Boli", "Myanmar Text", "Nirmala UI", "Palatino Linotype", "Segoe MDL2 Assets",
|
||||
"Segoe Print", "Segoe Script", "Segoe UI", "Segoe UI Historic", "Segoe UI Emoji", "Segoe UI Symbol", "SimSun", "Sitka",
|
||||
"Sylfaen", "Symbol", "Tahoma", "Times New Roman", "Trebuchet MS", "Verdana", "Webdings", "Wingdings", "Yu Gothic" };
|
||||
|
||||
customization_menu.all_UI_waiting_for_key = false;
|
||||
customization_menu.small_monster_UI_waiting_for_key = false;
|
||||
customization_menu.large_monster_UI_waiting_for_key = false;
|
||||
@@ -67,6 +78,7 @@ customization_menu.time_UI_waiting_for_key = false;
|
||||
customization_menu.damage_meter_UI_waiting_for_key = false;
|
||||
customization_menu.endemic_life_UI_waiting_for_key = false;
|
||||
customization_menu.menu_font_changed = false;
|
||||
|
||||
function customization_menu.reload_font(pop_push)
|
||||
customization_menu.font = imgui.load_font(language.current_language.font_name,
|
||||
config.current_config.global_settings.menu_font.size, customization_menu.font_range);
|
||||
@@ -82,17 +94,20 @@ function customization_menu.init()
|
||||
customization_menu.displayed_anchor_types = { language.current_language.customization_menu.top_left,
|
||||
language.current_language.customization_menu.top_right, language.current_language.customization_menu.bottom_left,
|
||||
language.current_language.customization_menu.bottom_right };
|
||||
|
||||
customization_menu.displayed_outline_styles = { language.current_language.customization_menu.inside,
|
||||
language.current_language.customization_menu.center, language.current_language.customization_menu.outside };
|
||||
customization_menu.displayed_monster_UI_sorting_types = { language.current_language.customization_menu.normal,
|
||||
language.current_language.customization_menu.health, language.current_language.customization_menu.health_percentage,
|
||||
language.current_language.customization_menu.distance };
|
||||
|
||||
customization_menu.displayed_monster_UI_parts_sorting_types = { language.current_language.customization_menu.normal,
|
||||
language.current_language.customization_menu.health, language.current_language.customization_menu.health_percentage,
|
||||
language.current_language.customization_menu.flinch_count, language.current_language.customization_menu.break_health,
|
||||
language.current_language.customization_menu.break_health_percentage,
|
||||
language.current_language.customization_menu.break_count, language.current_language.customization_menu.loss_health,
|
||||
language.current_language.customization_menu.loss_health_percentage };
|
||||
|
||||
customization_menu.displayed_ailments_sorting_types = { language.current_language.customization_menu.normal,
|
||||
language.current_language.customization_menu.buildup, language.current_language.customization_menu.buildup_percentage };
|
||||
customization_menu.displayed_ailment_buildups_sorting_types = { language.current_language.customization_menu.normal,
|
||||
@@ -104,6 +119,7 @@ function customization_menu.init()
|
||||
customization_menu.displayed_damage_meter_UI_highlighted_bar_types = { language.current_language.customization_menu.me,
|
||||
language.current_language.customization_menu.top_damage, language.current_language.customization_menu.top_dps,
|
||||
language.current_language.customization_menu.none };
|
||||
|
||||
customization_menu.displayed_damage_meter_UI_damage_bar_relative_types = { language.current_language.customization_menu
|
||||
.total_damage, language.current_language.customization_menu.top_damage };
|
||||
customization_menu.displayed_damage_meter_UI_my_damage_bar_location_types = { language.current_language.customization_menu
|
||||
@@ -112,22 +128,26 @@ function customization_menu.init()
|
||||
language.current_language.customization_menu.damage, language.current_language.customization_menu.dps };
|
||||
customization_menu.displayed_damage_meter_UI_dps_modes = { language.current_language.customization_menu.first_hit,
|
||||
language.current_language.customization_menu.quest_time, language.current_language.customization_menu.join_time };
|
||||
|
||||
customization_menu.orientation_types = { language.default_language.customization_menu.horizontal,
|
||||
language.default_language.customization_menu.vertical };
|
||||
customization_menu.anchor_types = { language.default_language.customization_menu.top_left,
|
||||
language.default_language.customization_menu.top_right, language.default_language.customization_menu.bottom_left,
|
||||
language.default_language.customization_menu.bottom_right };
|
||||
|
||||
customization_menu.outline_styles = { language.default_language.customization_menu.inside,
|
||||
language.default_language.customization_menu.center, language.default_language.customization_menu.outside };
|
||||
customization_menu.monster_UI_sorting_types = { language.default_language.customization_menu.normal,
|
||||
language.default_language.customization_menu.health, language.default_language.customization_menu.health_percentage,
|
||||
language.default_language.customization_menu.distance };
|
||||
|
||||
customization_menu.large_monster_UI_parts_sorting_types = { language.default_language.customization_menu.normal,
|
||||
language.default_language.customization_menu.health, language.default_language.customization_menu.health_percentage,
|
||||
language.default_language.customization_menu.flinch_count, language.default_language.customization_menu.break_health,
|
||||
language.default_language.customization_menu.break_health_percentage,
|
||||
language.default_language.customization_menu.break_count, language.default_language.customization_menu.loss_health,
|
||||
language.default_language.customization_menu.loss_health_percentage };
|
||||
|
||||
customization_menu.ailments_sorting_types = { language.default_language.customization_menu.normal,
|
||||
language.default_language.customization_menu.buildup, language.default_language.customization_menu.buildup_percentage };
|
||||
customization_menu.ailment_buildups_sorting_types = { language.default_language.customization_menu.normal,
|
||||
@@ -136,11 +156,13 @@ function customization_menu.init()
|
||||
language.default_language.customization_menu.top_buildup, language.default_language.customization_menu.none };
|
||||
customization_menu.buildup_bar_relative_types = { language.default_language.customization_menu.total_buildup,
|
||||
language.default_language.customization_menu.top_buildup };
|
||||
|
||||
customization_menu.damage_meter_UI_highlighted_bar_types = { language.default_language.customization_menu.me,
|
||||
language.default_language.customization_menu.top_damage, language.default_language.customization_menu.top_dps,
|
||||
language.default_language.customization_menu.none };
|
||||
customization_menu.damage_meter_UI_damage_bar_relative_types = { language.default_language.customization_menu.total_damage,
|
||||
language.default_language.customization_menu.top_damage };
|
||||
|
||||
customization_menu.damage_meter_UI_my_damage_bar_location_types = { language.default_language.customization_menu.normal,
|
||||
language.default_language.customization_menu.first, language.default_language.customization_menu.last };
|
||||
customization_menu.damage_meter_UI_sorting_types = { language.default_language.customization_menu.normal,
|
||||
@@ -153,16 +175,16 @@ function customization_menu.draw()
|
||||
imgui.set_next_window_pos(customization_menu.window_position, 1 << 3, customization_menu.window_pivot);
|
||||
imgui.set_next_window_size(customization_menu.window_size, 1 << 3);
|
||||
imgui.push_font(customization_menu.font);
|
||||
|
||||
customization_menu.is_opened = imgui.begin_window(language.current_language.customization_menu.mod_name ..
|
||||
" " .. config.current_config.version, customization_menu.is_opened, customization_menu.window_flags);
|
||||
|
||||
if not customization_menu.is_opened then
|
||||
imgui.end_window();
|
||||
imgui.pop_font();
|
||||
return;
|
||||
end
|
||||
local index = 1;
|
||||
local config_changed = false;
|
||||
local changed = false;
|
||||
|
||||
local modifiers_changed = false;
|
||||
local modules_changed = false;
|
||||
local global_settings_changed = false;
|
||||
@@ -174,10 +196,13 @@ function customization_menu.draw()
|
||||
local damage_meter_UI_changed = false;
|
||||
local endemic_life_UI_changed = false;
|
||||
local apply_font_requested = false;
|
||||
local cached_config = nil;
|
||||
|
||||
local status_string = tostring(customization_menu.status);
|
||||
|
||||
imgui.text(language.current_language.customization_menu.status .. ": " .. status_string);
|
||||
|
||||
modules_changed = customization_menu.draw_modules();
|
||||
|
||||
if imgui.tree_node(language.current_language.customization_menu.hotkeys) then
|
||||
if customization_menu.all_UI_waiting_for_key then
|
||||
if imgui.button(language.current_language.customization_menu.press_any_key) then
|
||||
@@ -187,6 +212,7 @@ function customization_menu.draw()
|
||||
config.current_config.global_settings.hotkeys_with_modifiers.all_UI.alt = false;
|
||||
customization_menu.all_UI_waiting_for_key = false;
|
||||
end
|
||||
|
||||
elseif imgui.button(language.current_language.customization_menu.all_UI) then
|
||||
local is_any_other_waiting = customization_menu.small_monster_UI_waiting_for_key or
|
||||
customization_menu.large_monster_UI_waiting_for_key or customization_menu.large_monster_dynamic_UI_waiting_for_key or
|
||||
@@ -364,19 +390,24 @@ function customization_menu.draw()
|
||||
imgui.text(keyboard.get_hotkey_name(config.current_config.global_settings.hotkeys_with_modifiers.endemic_life_UI));
|
||||
imgui.tree_pop();
|
||||
end
|
||||
|
||||
global_settings_changed, modifiers_changed, apply_font_requested = customization_menu.draw_global_settings();
|
||||
small_monster_UI_changed = customization_menu.draw_small_monster_UI();
|
||||
|
||||
if imgui.tree_node(language.current_language.customization_menu.large_monster_UI) then
|
||||
large_monster_dynamic_UI_changed = customization_menu.draw_large_monster_dynamic_UI()
|
||||
large_monster_static_UI_changed = customization_menu.draw_large_monster_static_UI()
|
||||
large_monster_highlighted_UI_changed = customization_menu.draw_large_monster_highlighted_UI()
|
||||
imgui.tree_pop();
|
||||
end
|
||||
|
||||
time_UI_changed = customization_menu.draw_time_UI();
|
||||
damage_meter_UI_changed = customization_menu.draw_damage_meter_UI();
|
||||
endemic_life_UI_changed = customization_menu.draw_endemic_life_UI()
|
||||
|
||||
imgui.end_window();
|
||||
imgui.pop_font();
|
||||
|
||||
if small_monster_UI_changed or modifiers_changed then
|
||||
for _, monster in pairs(small_monster.list) do
|
||||
small_monster.init_UI(monster);
|
||||
@@ -1050,6 +1081,8 @@ function customization_menu.draw_small_monster_UI()
|
||||
config_changed = config_changed or changed;
|
||||
imgui.tree_pop();
|
||||
end
|
||||
|
||||
|
||||
if imgui.tree_node(language.current_language.customization_menu.shadow) then
|
||||
changed, cached_config.ailment_buildups.ailment_name_label.shadow.visibility = imgui.checkbox(language.current_language
|
||||
.customization_menu.visible, cached_config.ailment_buildups.ailment_name_label.shadow.visibility);
|
||||
|
||||
Reference in New Issue
Block a user