Menu Font handling improved;
Damage Meter UI: Normal Sorting Fixed;
This commit is contained in:
GreenComfyTea
2022-06-29 12:01:16 +03:00
parent 09a8a0e950
commit c506a3073b
9 changed files with 71 additions and 36 deletions

View File

@@ -274,9 +274,9 @@ end
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
local find_master_player_method = player_manager_type_def:get_method("findMasterPlayer");
local get_game_object_method = sdk.find_type_definition("via.Component"):get_method("get_GameObject")
local get_transform_method = sdk.find_type_definition("via.GameObject"):get_method("get_Transform")
local get_position_method = sdk.find_type_definition("via.Transform"):get_method("get_Position")
local get_game_object_method = sdk.find_type_definition("via.Component"):get_method("get_GameObject");
local get_transform_method = sdk.find_type_definition("via.GameObject"):get_method("get_Transform");
local get_position_method = sdk.find_type_definition("via.Transform"):get_method("get_Position");
function player.update_myself_position()
if singletons.player_manager == nil then

View File

@@ -336,7 +336,11 @@ language.default_language = {
loss_health = "Sever Health",
loss_health_percentage = "Sever Health Percentage",
monster_id = "Monster ID"
monster_id = "Monster ID",
apply = "Apply",
menu_font_change_disclaimer = "Changing Language and Menu Font Size several times will cause a crash!"
}
};

View File

@@ -90,13 +90,14 @@ function damage_meter_UI.draw()
if not damage_meter_UI.freeze_displayed_players then
if #quest_players ~= 0 then
-- sort here
if cached_config.sorting.type == "Normal" and cached_config.sorting.reversed_order then
local reversed_quest_players = {};
for i = #quest_players, 1, -1 do
table.insert(reversed_quest_players, quest_players[i]);
if cached_config.sorting.type == "Normal" then
if cached_config.sorting.reversed_order then
local reversed_quest_players = {};
for i = #quest_players, 1, -1 do
table.insert(reversed_quest_players, quest_players[i]);
end
quest_players = reversed_quest_players;
end
quest_players = reversed_quest_players;
elseif cached_config.sorting.type == "DPS" then
if cached_config.sorting.reversed_order then
table.sort(quest_players, function(left, right)

View File

@@ -24,6 +24,7 @@ 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.selected_language_index = 1;
@@ -129,25 +130,20 @@ 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)
local success, new_font = pcall(imgui.load_font, language.current_language.font_name,
config.current_config.global_settings.menu_font.size, customization_menu.font_range);
if success then
if pop_push then
imgui.pop_font(customization_menu.font);
end
customization_menu.font = imgui.load_font(language.current_language.font_name, config.current_config.global_settings.menu_font.size, customization_menu.font_range);
customization_menu.font = new_font;
if pop_push then
imgui.push_font(customization_menu.font);
end
if pop_push then
imgui.pop_font();
imgui.push_font(customization_menu.font);
end
end
function customization_menu.init()
customization_menu.reload_font(false);
customization_menu.selected_language_index = table_helpers.find_index(language.language_names,
config.current_config.global_settings.language, false);
@@ -394,6 +390,8 @@ function customization_menu.draw()
local damage_meter_UI_changed = false;
local endemic_life_UI_changed = false;
local apply_font_requested = false;
local status_string = tostring(customization_menu.status);
imgui.text(language.current_language.customization_menu.status .. ": " .. status_string);
@@ -696,16 +694,18 @@ function customization_menu.draw()
end
if imgui.tree_node(language.current_language.customization_menu.global_settings) then
changed, customization_menu.selected_language_index = imgui.combo(language.current_language.customization_menu.language
imgui.text(language.current_language.customization_menu.menu_font_change_disclaimer);
changed, customization_menu.selected_language_index = imgui.combo(language.current_language.customization_menu.language .. "*"
, customization_menu.selected_language_index, language.language_names);
config_changed = config_changed or changed;
if changed then
config.current_config.global_settings.language = language.language_names[customization_menu.selected_language_index];
language.update(customization_menu.selected_language_index);
imgui.pop_font(customization_menu.font);
customization_menu.init();
imgui.push_font(customization_menu.font);
apply_font_requested = true;
customization_menu.menu_font_changed = true;
part_names.init();
large_monster.init_list();
@@ -720,15 +720,25 @@ function customization_menu.draw()
end
if imgui.tree_node(language.current_language.customization_menu.menu_font) then
changed, config.current_config.global_settings.menu_font.size = imgui.slider_int(" ",
config.current_config.global_settings.menu_font.size, 5, 100);
config_changed = config_changed or changed;
imgui.same_line();
local new_value = config.current_config.global_settings.menu_font.size;
changed, new_value = imgui.input_text(" ", config.current_config.global_settings.menu_font.size, customization_menu.decimal_input_flags);
new_value = tonumber(new_value);
if new_value ~= nil then
if new_value < 5 then
new_value = 5;
elseif new_value > 100 then
new_value = 100;
end
if changed then
customization_menu.reload_font(true);
config.current_config.global_settings.menu_font.size = math.floor(new_value);
end
config_changed = config_changed or changed;
customization_menu.menu_font_changed = customization_menu.menu_font_changed or changed;
imgui.same_line();
changed = imgui.button("-");
config_changed = config_changed or changed;
imgui.same_line();
@@ -738,7 +748,7 @@ function customization_menu.draw()
if config.current_config.global_settings.menu_font.size < 5 then
config.current_config.global_settings.menu_font.size = 5;
else
customization_menu.reload_font(true);
customization_menu.menu_font_changed = customization_menu.menu_font_changed or changed;
end
end
@@ -751,11 +761,15 @@ function customization_menu.draw()
if config.current_config.global_settings.menu_font.size > 100 then
config.current_config.global_settings.menu_font.size = 100;
else
customization_menu.reload_font(true);
customization_menu.menu_font_changed = customization_menu.menu_font_changed or changed;
end
end
imgui.text(language.current_language.customization_menu.size);
imgui.text(language.current_language.customization_menu.size .. "*");
if imgui.button(language.current_language.customization_menu.apply) then
apply_font_requested = true;
end
imgui.tree_pop();
end
@@ -16183,7 +16197,7 @@ function customization_menu.draw()
end
imgui.end_window();
imgui.pop_font(customization_menu.font);
imgui.pop_font();
if small_monster_UI_changed or modifiers_changed then
for _, monster in pairs(small_monster.list) do
@@ -16226,6 +16240,11 @@ function customization_menu.draw()
end
end
if customization_menu.menu_font_changed and apply_font_requested then
customization_menu.menu_font_changed = false;
customization_menu.reload_font(false);
end
if config_changed then
config.save();
end
@@ -16245,6 +16264,7 @@ function customization_menu.init_module()
keyboard = require("MHR_Overlay.Game_Handler.keyboard");
customization_menu.init();
customization_menu.reload_font(false);
end
return customization_menu;

View File

@@ -46,6 +46,7 @@
"ailments": "Ailments",
"all_UI": "All UI",
"anchor": "Anchor",
"apply": "Apply",
"assign_new_key": "Assign new key",
"background": "Background",
"bar": "Bar",
@@ -137,6 +138,7 @@
"max_monster_updates_per_tick": "Max Monster Updates per Tick",
"me": "Me",
"menu_font": "Menu Font",
"menu_font_change_disclaimer": "Changing Language and Menu Font Size several times will cause a crash!",
"mod_name": "MHR Overlay",
"modifiers": "Modifiers",
"module_visibility_on_different_screens": "Module Visibility on Different Screens",

View File

@@ -46,6 +46,7 @@
"ailments": "상태이상",
"all_UI": "모든 UI",
"anchor": "기준",
"apply": "Apply",
"assign_new_key": "새 키를 할당",
"background": "배경색",
"bar": "막대",
@@ -137,6 +138,7 @@
"max_monster_updates_per_tick": "틱당 갱신할 최대 몬스터",
"me": "나",
"menu_font": "메뉴 글꼴",
"menu_font_change_disclaimer": "Changing Language and Menu Font Size several times will cause a crash!",
"mod_name": "MHR Overlay",
"modifiers": "설정 배율",
"module_visibility_on_different_screens": "상황별 모듈 표시",

View File

@@ -46,6 +46,7 @@
"ailments": "Аномальные статусы",
"all_UI": "Весь интерфейс",
"anchor": "Привязка",
"apply": "Apply",
"assign_new_key": "Привязать клавишу",
"background": "Фон",
"bar": "Шкала",
@@ -137,6 +138,7 @@
"max_monster_updates_per_tick": "Макс. кол-во обновлений за тик",
"me": "Я",
"menu_font": "Шрифт меню",
"menu_font_change_disclaimer": "Изменение языка и размера шрифта меню несколько раз приведёт к вылету!",
"mod_name": "MHR Overlay",
"modifiers": "Модификаторы",
"module_visibility_on_different_screens": "Видимость модулей на разных экранах",

View File

@@ -46,6 +46,7 @@
"ailments": "状态异常",
"all_UI": "所有UI",
"anchor": "锚点",
"apply": "Apply",
"assign_new_key": "指定新按键",
"background": "背景",
"bar": "状态条",
@@ -137,6 +138,7 @@
"max_monster_updates_per_tick": "每次更新的最大怪物数量",
"me": "我",
"menu_font": "菜单字体",
"menu_font_change_disclaimer": "Changing Language and Menu Font Size several times will cause a crash!",
"mod_name": "MHR Overlay",
"modifiers": "更改项",
"module_visibility_on_different_screens": "不同场景中使用的模块",

View File

@@ -46,6 +46,7 @@
"ailments": "異常狀態",
"all_UI": "全部UI",
"anchor": "錨點",
"apply": "Apply",
"assign_new_key": "指定新按鍵",
"background": "圖形化顯示條的背景底色",
"bar": "圖形化顯示條",
@@ -137,6 +138,7 @@
"max_monster_updates_per_tick": "每次更新的最大魔物數量",
"me": "我",
"menu_font": "選單字體大小",
"menu_font_change_disclaimer": "Changing Language and Menu Font Size several times will cause a crash!",
"mod_name": "MHR Overlay",
"modifiers": "更改項",
"module_visibility_on_different_screens": "不同場景中使用的模組",