Bugfixes, added sorting by distance, localization system improvements

This commit is contained in:
GreenComfyTea
2022-02-12 19:59:07 +02:00
parent 3f1ceec534
commit 78722262f1
24 changed files with 868 additions and 153 deletions

View File

@@ -10,7 +10,7 @@ config.default_config = {};
function config.init()
config.default_config = {
global_settings = {
language = "en-us",
language = "default",
performance = {
max_monster_updates_per_tick = 2,
@@ -40,8 +40,12 @@ function config.init()
damage_meter_UI = true
}
},
menu_font = {
size = 17
},
font = {
UI_font = {
family = "Consolas",
size = 13,
bold = true,
@@ -53,6 +57,7 @@ function config.init()
enabled = true,
settings = {
hide_dead_or_captured = true,
orientation = "Horizontal"
},
@@ -114,7 +119,7 @@ function config.init()
text_label = {
visibility = false,
text = language.current_language.UI.HP,
text = "%s",
offset = {
x = -25,
y = 12
@@ -195,7 +200,7 @@ function config.init()
text_label = {
visibility = true,
text = language.current_language.UI.stamina,
text = "%s",
offset = {
x = 15,
y = 37
@@ -276,6 +281,7 @@ function config.init()
enabled = true,
settings = {
hide_dead_or_captured = true,
max_distance = 300,
opacity_falloff = true
},
@@ -323,7 +329,7 @@ function config.init()
text_label = {
visibility = false,
text = language.current_language.UI.HP,
text = "%s",
offset = {
x = -25,
y = 19
@@ -390,16 +396,32 @@ function config.init()
width = 200,
height = 20
},
colors = {
normal_colors = {
foreground = 0xB974A653,
background = 0xB9000000,
capture ={
foreground = 0xB9CCCC33,
background = 0x88000000
}
},
capture_colors = {
foreground = 0xB9CCCC33,
background = 0x88000000
},
capture_line = {
visibility = true,
offset = {
x = 0,
y = -3
},
size = {
width = 2,
height = 8
},
color = 0xB9000000
}
}
},
},
stamina = {
@@ -407,7 +429,7 @@ function config.init()
text_label = {
visibility = true,
text = language.current_language.UI.stamina,
text = "%s",
offset = {
x = 15,
y = 37
@@ -487,7 +509,7 @@ function config.init()
text_label = {
visibility = true,
text = language.current_language.UI.rage,
text = "%s",
offset = {
x = 15,
y = 61
@@ -542,6 +564,26 @@ function config.init()
color = 0xFF000000
}
},
timer_label = {
visibility = true,
text = "%.0f:%02.0f",
offset = {
x = 157,
y = 78
},
color = 0xFFFFFFFF,
shadow = {
visibility = true,
offset = {
x = 1,
y = 1
},
color = 0xFF000000
}
},
bar = {
visibility = true,
@@ -696,6 +738,7 @@ function config.init()
},
settings = {
hide_dead_or_captured = true,
orientation = "Horizontal"
},
@@ -742,7 +785,7 @@ function config.init()
text_label = {
visibility = false,
text = language.current_language.UI.HP,
text = "%s",
offset = {
x = -25,
y = 19
@@ -809,14 +852,30 @@ function config.init()
width = 200,
height = 20
},
colors = {
normal_colors = {
foreground = 0xB974A653,
background = 0xB9000000,
capture ={
foreground = 0xB9CCCC33,
background = 0x88000000
}
},
capture_colors = {
foreground = 0xB9CCCC33,
background = 0x88000000
},
capture_line = {
visibility = true,
offset = {
x = 0,
y = -3
},
size = {
width = 2,
height = 8
},
color = 0xB9000000
}
}
},
@@ -826,7 +885,7 @@ function config.init()
text_label = {
visibility = true,
text = language.current_language.UI.stamina,
text = "%s",
offset = {
x = 15,
y = 37
@@ -906,7 +965,7 @@ function config.init()
text_label = {
visibility = true,
text = language.current_language.UI.rage,
text = "%s",
offset = {
x = 15,
y = 61
@@ -961,6 +1020,26 @@ function config.init()
color = 0xFF000000
}
},
timer_label = {
visibility = true,
text = "%.0f:%02.0f",
offset = {
x = 157,
y = 78
},
color = 0xFFFFFFFF,
shadow = {
visibility = true,
offset = {
x = 1,
y = 1
},
color = 0xFF000000
}
},
bar = {
visibility = true,
@@ -1259,7 +1338,7 @@ function config.init()
total_damage_label = {
visibility = true,
text = "Total Damage",
text = "%s",
offset = {
x = 5,
y = 0
@@ -1361,7 +1440,7 @@ function config.init_module()
config.init();
config.load();
config.current_config.version = "v1.7";
config.current_config.version = "v1.7.1";
language.update(table_helpers.find_index(language.language_names, config.current_config.global_settings.language, false));

View File

@@ -4,6 +4,7 @@ local table_helpers;
language.language_folder = "MHR Overlay\\languages\\";
language.default_language = {
font_name = "NotoSansKR-Bold.otf",
parts = {
head = "Head",
neck = "Neck",
@@ -62,7 +63,9 @@ language.default_language = {
rage = "Rage:",
gold = "Gold",
silver = "Silver",
mini = "Mini"
mini = "Mini",
total_damage = "Total Damage",
player = "Player"
},
customization_menu = {
@@ -89,9 +92,10 @@ language.default_language = {
max_monster_updates_per_tick = "Max Monster Updates per Tick",
prioritize_large_monsters = "Large Monsters on High Priority";
font_notice = "Any changes to the font require script reload!",
UI_font_notice = "Any changes to the font require script reload!",
font = "Font",
menu_font = "Menu Font",
UI_font = "UI Font",
family = "Family",
size = "Size",
bold = "Bold",
@@ -109,6 +113,8 @@ language.default_language = {
static_orientation = "Static Orientation",
hide_dead_or_captured = "Hide dead or captured",
opacity_falloff = "Opacity Falloff",
max_distance = "Max Distance",
world_offset = "World Offset",
@@ -146,6 +152,8 @@ language.default_language = {
foreground = "Foreground",
background = "Background",
capture_line = "Capture Line",
dynamically_positioned = "Dynamically Positioned",
statically_positioned = "Statically Positioned",
@@ -168,6 +176,7 @@ language.default_language = {
spacing = "Spacing",
sorting = "Sorting",
timer_label = "Timer Label",
part_name_label = "Part Name Label",
time_label = "Time Label",
@@ -190,7 +199,7 @@ language.default_language = {
hide_total_if_total_damage_is_zero = "Hide Total if Total Damage is 0",
total_damage_offset_is_relative = "Total Damage Offset is Relative",
higlighted_bar = "Highlighted Bar",
highlighted_bar = "Highlighted Bar",
me = "Me",
top_damage = "Top Damage",
none = "None",
@@ -234,26 +243,28 @@ function language.load()
return;
end
for i, language_file in ipairs(language_files) do
local language_name = language_file:gsub(language.language_folder, ""):gsub(".json", "");
for i, language_file_name in ipairs(language_files) do
local language_name = language_file_name:gsub(language.language_folder, ""):gsub(".json", "");
-- v will be something like `my-cool-mod\config-file-1.json`;
local loaded_language = json.load_file(language_file);
-- language_file will be something like `my-cool-mod\config-file-1.json`;
local loaded_language = json.load_file(language_file_name);
if loaded_language ~= nil then
log.info("[MHR Overlay] " .. language_name .. ".json loaded successfully");
table.insert(language.language_names, language_name);
table.insert(language.languages, loaded_language);
local merged_language = table_helpers.merge(language.default_language, loaded_language);
table.insert(language.languages, merged_language);
language.save(language_file_name, merged_language);
else
log.error("[MHR Overlay] Failed to load " .. language_name .. ".json");
end
end
end
function language.save_default()
-- save current config to disk, replacing any existing file
local success = json.dump_file(language.language_folder .. "en-us.json", language.default_language);
function language.save(file_name, language_table)
local success = json.dump_file(file_name, language_table);
if success then
log.info('[MHR Overlay] en-us.json saved successfully');
else
@@ -261,6 +272,10 @@ function language.save_default()
end
end
function language.save_default();
language.save(language.language_folder .. "en-us.json", language.default_language)
end
function language.update(index)
language.current_language = table_helpers.deep_copy(language.languages[index]);
@@ -271,7 +286,6 @@ function language.init_module()
language.save_default();
language.load();
language.current_language = table_helpers.deep_copy(language.default_language);
end
return language;