mirror of
https://github.com/GreenComfyTea/MHR-Overlay.git
synced 2026-01-25 04:48:22 -08:00
Compare commits
6 Commits
v2.4.2
...
72ca959581
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
72ca959581 | ||
|
|
cd2aa12d3c | ||
|
|
865512f8d6 | ||
|
|
ecd150eb4d | ||
|
|
585860666f | ||
|
|
e6556e8d9b |
@@ -30,8 +30,6 @@ local os = os;
|
|||||||
local ValueType = ValueType;
|
local ValueType = ValueType;
|
||||||
local package = package;
|
local package = package;
|
||||||
|
|
||||||
local debug = require("MHR_Overlay.Misc.debug");
|
|
||||||
|
|
||||||
local keyboard = require("MHR_Overlay.Game_Handler.keyboard");
|
local keyboard = require("MHR_Overlay.Game_Handler.keyboard");
|
||||||
local quest_status = require("MHR_Overlay.Game_Handler.quest_status");
|
local quest_status = require("MHR_Overlay.Game_Handler.quest_status");
|
||||||
local screen = require("MHR_Overlay.Game_Handler.screen");
|
local screen = require("MHR_Overlay.Game_Handler.screen");
|
||||||
@@ -88,15 +86,10 @@ local body_parts_customization = require("MHR_Overlay.UI.Customizations.body_par
|
|||||||
local ailments_customization = require("MHR_Overlay.UI.Customizations.ailments_customization");
|
local ailments_customization = require("MHR_Overlay.UI.Customizations.ailments_customization");
|
||||||
local ailment_buildups_customization = require("MHR_Overlay.UI.Customizations.ailment_buildups_customization");
|
local ailment_buildups_customization = require("MHR_Overlay.UI.Customizations.ailment_buildups_customization");
|
||||||
local module_visibility_customization = require("MHR_Overlay.UI.Customizations.module_visibility_customization");
|
local module_visibility_customization = require("MHR_Overlay.UI.Customizations.module_visibility_customization");
|
||||||
|
|
||||||
local large_monster_UI_customization = require("MHR_Overlay.UI.Customizations.large_monster_UI_customization");
|
local large_monster_UI_customization = require("MHR_Overlay.UI.Customizations.large_monster_UI_customization");
|
||||||
|
|
||||||
local drawing = require("MHR_Overlay.UI.drawing");
|
local drawing = require("MHR_Overlay.UI.drawing");
|
||||||
|
|
||||||
if debug ~= nil and debug.enabled then
|
|
||||||
xy = "";
|
|
||||||
end
|
|
||||||
|
|
||||||
------------------------INIT MODULES-------------------------
|
------------------------INIT MODULES-------------------------
|
||||||
-- #region
|
-- #region
|
||||||
screen.init_module();
|
screen.init_module();
|
||||||
@@ -337,33 +330,6 @@ end);
|
|||||||
-- #endregion
|
-- #endregion
|
||||||
----------------------------D2D------------------------------
|
----------------------------D2D------------------------------
|
||||||
|
|
||||||
if debug ~= nil and debug.enabled then
|
|
||||||
if d2d ~= nil then
|
|
||||||
d2d.register(function()
|
|
||||||
end, function()
|
|
||||||
if not config.current_config.global_settings.renderer.use_d2d_if_available then
|
|
||||||
return;
|
|
||||||
end
|
|
||||||
|
|
||||||
if xy ~= "" then
|
|
||||||
d2d.text(drawing.font, "xy:\n" .. tostring(xy), 256, 71, 0xFF000000);
|
|
||||||
d2d.text(drawing.font, "xy:\n" .. tostring(xy), 255, 70, 0xFFFFFFFF);
|
|
||||||
end
|
|
||||||
end);
|
|
||||||
end
|
|
||||||
|
|
||||||
re.on_frame(function()
|
|
||||||
if d2d ~= nil and config.current_config.global_settings.renderer.use_d2d_if_available then
|
|
||||||
return;
|
|
||||||
end
|
|
||||||
|
|
||||||
if xy ~= "" then
|
|
||||||
draw.text("xy:\n" .. tostring(xy), 256, 31, 0xFF000000);
|
|
||||||
draw.text("xy:\n" .. tostring(xy), 255, 30, 0xFFFFFFFF);
|
|
||||||
end
|
|
||||||
end);
|
|
||||||
end
|
|
||||||
|
|
||||||
if imgui.begin_table == nil then
|
if imgui.begin_table == nil then
|
||||||
re.msg(language.current_language.customization_menu.reframework_outdated);
|
re.msg(language.current_language.customization_menu.reframework_outdated);
|
||||||
end
|
end
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
local this = {};
|
|
||||||
|
|
||||||
this.enabled = false;
|
|
||||||
|
|
||||||
return this;
|
|
||||||
@@ -36,11 +36,47 @@ local package = package;
|
|||||||
|
|
||||||
this.language_folder = "MHR Overlay\\languages\\";
|
this.language_folder = "MHR Overlay\\languages\\";
|
||||||
|
|
||||||
|
--[[
|
||||||
|
EXAMPLE:
|
||||||
|
unicode_glyph_ranges = {
|
||||||
|
0x0020, 0x00FF, -- Basic Latin + Latin Supplement
|
||||||
|
0x2000, 0x206F, -- General Punctuation
|
||||||
|
0x3000, 0x30FF, -- CJK Symbols and Punctuations, Hiragana, Katakana
|
||||||
|
0x31F0, 0x31FF, -- Katakana Phonetic Extensions
|
||||||
|
0x4e00, 0x9FAF, -- CJK Ideograms
|
||||||
|
0xFF00, 0xFFEF, -- Half-width characters
|
||||||
|
0
|
||||||
|
},
|
||||||
|
]]
|
||||||
|
|
||||||
|
--[[
|
||||||
|
EXAMPLE:
|
||||||
|
unicode_glyph_ranges = {
|
||||||
|
0x0020, 0x00FF, -- Basic Latin + Latin Supplement
|
||||||
|
0x0400, 0x052F, -- Cyrillic
|
||||||
|
0x2000, 0x206F, -- General Punctuation
|
||||||
|
0xFF00, 0xFFEF, -- Half-width characters
|
||||||
|
0
|
||||||
|
},
|
||||||
|
]]
|
||||||
|
|
||||||
|
--[[
|
||||||
|
EXAMPLE:
|
||||||
|
unicode_glyph_ranges = {
|
||||||
|
0x0020, 0x00FF, -- Basic Latin + Latin Supplement
|
||||||
|
0x1100, 0x11FF, -- Hangul Jamo
|
||||||
|
0x2000, 0x206F, -- General Punctuation
|
||||||
|
0x3130, 0x318F, -- Hangul Compatibility Jamo
|
||||||
|
0xAC00, 0xD7AF, -- Hangul Syllables
|
||||||
|
0xFF00, 0xFFEF, -- Half-width characters
|
||||||
|
0
|
||||||
|
},
|
||||||
|
]]
|
||||||
|
|
||||||
this.current_language = {};
|
this.current_language = {};
|
||||||
|
|
||||||
|
|
||||||
this.default_language = {
|
this.default_language = {
|
||||||
font_name = "NotoSansKR-Bold.otf",
|
font_name = "",
|
||||||
|
unicode_glyph_ranges = {0},
|
||||||
parts = {
|
parts = {
|
||||||
head = "Head",
|
head = "Head",
|
||||||
neck = "Neck",
|
neck = "Neck",
|
||||||
|
|||||||
@@ -826,11 +826,12 @@ function this.init()
|
|||||||
language.current_language.parts.head,
|
language.current_language.parts.head,
|
||||||
language.current_language.parts.torso,
|
language.current_language.parts.torso,
|
||||||
language.current_language.parts.wings,
|
language.current_language.parts.wings,
|
||||||
language.current_language.parts.wingclaws,
|
language.current_language.parts.right_wingclaw,
|
||||||
language.current_language.parts.forelegs,
|
language.current_language.parts.forelegs,
|
||||||
language.current_language.parts.hind_legs,
|
language.current_language.parts.hind_legs,
|
||||||
language.current_language.parts.tail,
|
language.current_language.parts.tail,
|
||||||
language.current_language.parts.antenna
|
language.current_language.parts.antenna,
|
||||||
|
language.current_language.parts.left_wingclaw
|
||||||
},
|
},
|
||||||
|
|
||||||
[2072] = -- Risen Kushala Daora 2072
|
[2072] = -- Risen Kushala Daora 2072
|
||||||
|
|||||||
@@ -215,6 +215,14 @@ function this.number.round(value)
|
|||||||
return math.floor(value + 0.5);
|
return math.floor(value + 0.5);
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function this.number.is_odd(value)
|
||||||
|
return value % 2 ~= 0;
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.number.is_even(value)
|
||||||
|
return value % 2 == 0;
|
||||||
|
end
|
||||||
|
|
||||||
function this.string.trim(str)
|
function this.string.trim(str)
|
||||||
return str:match("^%s*(.-)%s*$");
|
return str:match("^%s*(.-)%s*$");
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ local ValueType = ValueType;
|
|||||||
local package = package;
|
local package = package;
|
||||||
|
|
||||||
this.font = nil;
|
this.font = nil;
|
||||||
this.font_range = {0x1, 0xFFFF, 0};
|
this.full_font_range = {0x1, 0xFFFF, 0};
|
||||||
this.is_opened = false;
|
this.is_opened = false;
|
||||||
this.status = "OK";
|
this.status = "OK";
|
||||||
|
|
||||||
@@ -146,8 +146,22 @@ this.menu_font_changed = false;
|
|||||||
this.config_name_input = "";
|
this.config_name_input = "";
|
||||||
|
|
||||||
function this.reload_font(pop_push)
|
function this.reload_font(pop_push)
|
||||||
this.font = imgui.load_font(language.current_language.font_name,
|
local cached_language = language.current_language;
|
||||||
config.current_config.global_settings.menu_font.size, this.font_range);
|
|
||||||
|
local font_range = cached_language.unicode_glyph_ranges;
|
||||||
|
|
||||||
|
if cached_language.font_name == "" then
|
||||||
|
font_range = nil;
|
||||||
|
|
||||||
|
elseif cached_language.unicode_glyph_ranges == nil
|
||||||
|
or utils.table.is_empty(cached_language.unicode_glyph_ranges)
|
||||||
|
or #cached_language.unicode_glyph_ranges == 1
|
||||||
|
or not utils.number.is_odd(#cached_language.unicode_glyph_ranges) then
|
||||||
|
|
||||||
|
font_range = this.full_font_range;
|
||||||
|
end
|
||||||
|
|
||||||
|
this.font = imgui.load_font(cached_language.font_name, config.current_config.global_settings.menu_font.size, font_range);
|
||||||
|
|
||||||
if pop_push then
|
if pop_push then
|
||||||
imgui.pop_font();
|
imgui.pop_font();
|
||||||
@@ -321,17 +335,18 @@ function this.draw()
|
|||||||
imgui.set_next_window_pos(this.window_position, 1 << 3, this.window_pivot);
|
imgui.set_next_window_pos(this.window_position, 1 << 3, this.window_pivot);
|
||||||
imgui.set_next_window_size(this.window_size, 1 << 3);
|
imgui.set_next_window_size(this.window_size, 1 << 3);
|
||||||
|
|
||||||
|
imgui.push_font(this.font);
|
||||||
|
|
||||||
this.is_opened = imgui.begin_window(
|
this.is_opened = imgui.begin_window(
|
||||||
language.current_language.customization_menu.mod_name .. " v" .. config.current_config.version, this.is_opened,
|
language.current_language.customization_menu.mod_name .. " v" .. config.current_config.version, this.is_opened,
|
||||||
this.window_flags);
|
this.window_flags);
|
||||||
|
|
||||||
if not this.is_opened then
|
if not this.is_opened then
|
||||||
|
imgui.pop_font();
|
||||||
imgui.end_window();
|
imgui.end_window();
|
||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
imgui.push_font(this.font);
|
|
||||||
|
|
||||||
local config_changed = false;
|
local config_changed = false;
|
||||||
local language_changed = false;
|
local language_changed = false;
|
||||||
local modifiers_changed = false;
|
local modifiers_changed = false;
|
||||||
@@ -434,7 +449,7 @@ function this.draw()
|
|||||||
|
|
||||||
if this.menu_font_changed and (apply_font_requested or config_changed) then
|
if this.menu_font_changed and (apply_font_requested or config_changed) then
|
||||||
this.menu_font_changed = false;
|
this.menu_font_changed = false;
|
||||||
this.reload_font(false);
|
this.reload_font();
|
||||||
end
|
end
|
||||||
|
|
||||||
if modules_changed or global_settings_changed or small_monster_UI_changed or large_monster_dynamic_UI_changed or
|
if modules_changed or global_settings_changed or small_monster_UI_changed or large_monster_dynamic_UI_changed or
|
||||||
@@ -2278,7 +2293,7 @@ function this.init_module()
|
|||||||
module_visibility_customization = require("MHR_Overlay.UI.Customizations.module_visibility_customization");
|
module_visibility_customization = require("MHR_Overlay.UI.Customizations.module_visibility_customization");
|
||||||
|
|
||||||
this.init();
|
this.init();
|
||||||
this.reload_font(false);
|
this.reload_font();
|
||||||
end
|
end
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
@@ -303,7 +303,7 @@
|
|||||||
"y": "Y",
|
"y": "Y",
|
||||||
"z": "Z"
|
"z": "Z"
|
||||||
},
|
},
|
||||||
"font_name": "NotoSansKR-Bold.otf",
|
"font_name": "",
|
||||||
"parts": {
|
"parts": {
|
||||||
"abdomen": "Abdomen",
|
"abdomen": "Abdomen",
|
||||||
"amatsu_unknown": "?",
|
"amatsu_unknown": "?",
|
||||||
@@ -372,5 +372,8 @@
|
|||||||
"wingclaw": "Wingclaw",
|
"wingclaw": "Wingclaw",
|
||||||
"wingclaws": "Wingclaws",
|
"wingclaws": "Wingclaws",
|
||||||
"wings": "Wings"
|
"wings": "Wings"
|
||||||
}
|
},
|
||||||
|
"unicode_glyph_ranges": [
|
||||||
|
0
|
||||||
|
]
|
||||||
}
|
}
|
||||||
@@ -372,5 +372,20 @@
|
|||||||
"wingclaw": "翼爪",
|
"wingclaw": "翼爪",
|
||||||
"wingclaws": "Wingclaws",
|
"wingclaws": "Wingclaws",
|
||||||
"wings": "翼"
|
"wings": "翼"
|
||||||
}
|
},
|
||||||
|
"unicode_glyph_ranges": [
|
||||||
|
32,
|
||||||
|
255,
|
||||||
|
8192,
|
||||||
|
8303,
|
||||||
|
12288,
|
||||||
|
12543,
|
||||||
|
12784,
|
||||||
|
12799,
|
||||||
|
19968,
|
||||||
|
40879,
|
||||||
|
65280,
|
||||||
|
65519,
|
||||||
|
0
|
||||||
|
]
|
||||||
}
|
}
|
||||||
@@ -372,5 +372,20 @@
|
|||||||
"wingclaw": "날개발톱",
|
"wingclaw": "날개발톱",
|
||||||
"wingclaws": "날개발톱",
|
"wingclaws": "날개발톱",
|
||||||
"wings": "날개"
|
"wings": "날개"
|
||||||
}
|
},
|
||||||
|
"unicode_glyph_ranges": [
|
||||||
|
32,
|
||||||
|
255,
|
||||||
|
4352,
|
||||||
|
4607,
|
||||||
|
8192,
|
||||||
|
8303,
|
||||||
|
12592,
|
||||||
|
12687,
|
||||||
|
44032,
|
||||||
|
55215,
|
||||||
|
65280,
|
||||||
|
65519,
|
||||||
|
0
|
||||||
|
]
|
||||||
}
|
}
|
||||||
@@ -372,5 +372,16 @@
|
|||||||
"wingclaw": "Крыло-коготь",
|
"wingclaw": "Крыло-коготь",
|
||||||
"wingclaws": "Крыло-коготь",
|
"wingclaws": "Крыло-коготь",
|
||||||
"wings": "Крылья"
|
"wings": "Крылья"
|
||||||
}
|
},
|
||||||
|
"unicode_glyph_ranges": [
|
||||||
|
32,
|
||||||
|
255,
|
||||||
|
1024,
|
||||||
|
1241,
|
||||||
|
8192,
|
||||||
|
8303,
|
||||||
|
65280,
|
||||||
|
65519,
|
||||||
|
0
|
||||||
|
]
|
||||||
}
|
}
|
||||||
@@ -372,5 +372,20 @@
|
|||||||
"wingclaw": "翼爪",
|
"wingclaw": "翼爪",
|
||||||
"wingclaws": "翼爪",
|
"wingclaws": "翼爪",
|
||||||
"wings": "翼"
|
"wings": "翼"
|
||||||
}
|
},
|
||||||
|
"unicode_glyph_ranges": [
|
||||||
|
32,
|
||||||
|
255,
|
||||||
|
8192,
|
||||||
|
8303,
|
||||||
|
12288,
|
||||||
|
12543,
|
||||||
|
12784,
|
||||||
|
12799,
|
||||||
|
19968,
|
||||||
|
40879,
|
||||||
|
65280,
|
||||||
|
65519,
|
||||||
|
0
|
||||||
|
]
|
||||||
}
|
}
|
||||||
@@ -372,5 +372,20 @@
|
|||||||
"wingclaw": "翼爪",
|
"wingclaw": "翼爪",
|
||||||
"wingclaws": "翼爪",
|
"wingclaws": "翼爪",
|
||||||
"wings": "翅膀"
|
"wings": "翅膀"
|
||||||
}
|
},
|
||||||
|
"unicode_glyph_ranges": [
|
||||||
|
32,
|
||||||
|
255,
|
||||||
|
8192,
|
||||||
|
8303,
|
||||||
|
12288,
|
||||||
|
12543,
|
||||||
|
12784,
|
||||||
|
12799,
|
||||||
|
19968,
|
||||||
|
40879,
|
||||||
|
65280,
|
||||||
|
65519,
|
||||||
|
0
|
||||||
|
]
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user