3 Commits

Author SHA1 Message Date
GreenComfyTea
7ad40bbb89 Add Bar Fill Direction 2023-05-26 13:18:46 +03:00
GreenComfyTea
e2354eedcc Move combo types into their respective UI elements 2023-05-26 13:07:40 +03:00
GreenComfyTea
20dfde17d4 Fix part names not changing localization 2023-05-26 12:15:19 +03:00
16 changed files with 671 additions and 231 deletions

View File

@@ -128,7 +128,6 @@ small_monster.init_module();
ailment_hook.init_module(); ailment_hook.init_module();
ailment_buildup.init_module(); ailment_buildup.init_module();
customization_menu.init_module();
label_customization.init_module(); label_customization.init_module();
bar_customization.init_module(); bar_customization.init_module();
line_customization.init_module(); line_customization.init_module();
@@ -143,6 +142,7 @@ body_parts_customization.init_module();
ailments_customization.init_module(); ailments_customization.init_module();
ailment_buildups_customization.init_module(); ailment_buildups_customization.init_module();
module_visibility_customization.init_module(); module_visibility_customization.init_module();
customization_menu.init_module();
drawing.init_module(); drawing.init_module();

View File

@@ -405,6 +405,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 0 y = 0
@@ -597,6 +602,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 14 y = 14
@@ -783,6 +793,11 @@ function this.init_default()
buildup_bar = { buildup_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -809,6 +824,11 @@ function this.init_default()
highlighted_buildup_bar = { highlighted_buildup_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -962,6 +982,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 0 y = 0
@@ -1104,6 +1129,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -1224,6 +1254,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -1385,6 +1420,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 6 y = 6
@@ -1486,6 +1526,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 7 y = 7
@@ -1586,6 +1631,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 7 y = 7
@@ -1782,6 +1832,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 14 y = 14
@@ -1965,6 +2020,11 @@ function this.init_default()
buildup_bar = { buildup_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -1991,6 +2051,11 @@ function this.init_default()
highlighted_buildup_bar = { highlighted_buildup_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -2148,6 +2213,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 0 y = 0
@@ -2289,6 +2359,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 0 y = 0
@@ -2409,6 +2484,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 0 y = 0
@@ -2570,6 +2650,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 6 y = 6
@@ -2671,6 +2756,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 7 y = 7
@@ -2771,6 +2861,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 7 y = 7
@@ -2968,6 +3063,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 14 y = 14
@@ -3151,6 +3251,11 @@ function this.init_default()
buildup_bar = { buildup_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -3177,6 +3282,11 @@ function this.init_default()
highlighted_buildup_bar = { highlighted_buildup_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -3320,6 +3430,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 0 y = 0
@@ -3461,6 +3576,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 10 - 10, x = 10 - 10,
y = 17 y = 17
@@ -3581,6 +3701,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -3742,6 +3867,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 6 y = 6
@@ -3843,6 +3973,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 7 y = 7
@@ -3943,6 +4078,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 7 y = 7
@@ -3967,7 +4107,6 @@ function this.init_default()
} }
} }
} }
}, },
ailments = { ailments = {
@@ -4139,6 +4278,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 14 y = 14
@@ -4322,6 +4466,11 @@ function this.init_default()
buildup_bar = { buildup_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -4348,6 +4497,11 @@ function this.init_default()
highlighted_buildup_bar = { highlighted_buildup_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -4607,6 +4761,11 @@ function this.init_default()
damage_bar = { damage_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -4767,6 +4926,11 @@ function this.init_default()
damage_bar = { damage_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -4879,6 +5043,11 @@ function this.init_default()
damage_bar = { damage_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -5012,6 +5181,11 @@ function this.init_default()
damage_bar = { damage_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -5145,6 +5319,11 @@ function this.init_default()
damage_bar = { damage_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -5278,6 +5457,11 @@ function this.init_default()
damage_bar = { damage_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -5505,6 +5689,11 @@ function this.init_default()
damage_bar = { damage_bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17
@@ -5639,6 +5828,11 @@ function this.init_default()
bar = { bar = {
visibility = true, visibility = true,
settings = {
fill_direction = "Left to Right"
},
offset = { offset = {
x = 0, x = 0,
y = 17 y = 17

View File

@@ -541,7 +541,13 @@ this.default_language = {
filter_mode = "Filter Mode", filter_mode = "Filter Mode",
current_state = "Current State", current_state = "Current State",
default_state = "Default State" default_state = "Default State",
fill_direction = "Fill Direction",
left_to_right = "Left to Right",
right_to_left = "Right to Left",
top_to_bottom = "Top to Bottom",
bottom_to_top = "Bottom to Top",
} }
}; };

View File

@@ -11,6 +11,7 @@ local screen;
local drawing; local drawing;
local part_names; local part_names;
local time; local time;
local utils;
local sdk = sdk; local sdk = sdk;
local tostring = tostring; local tostring = tostring;
@@ -73,6 +74,12 @@ function this.new(id, name)
return part; return part;
end end
function this.init_part_names(monster_id, parts)
for part_id, part in pairs(parts) do
part.name = part_names.get_part_name(monster_id, part_id);
end
end
function this.update_flinch(part, part_current, part_max) function this.update_flinch(part, part_current, part_max)
if part_current > part.health then if part_current > part.health then
part.flinch_count = part.flinch_count + 1; part.flinch_count = part.flinch_count + 1;
@@ -352,6 +359,7 @@ function this.init_module()
drawing = require("MHR_Overlay.UI.drawing"); drawing = require("MHR_Overlay.UI.drawing");
part_names = require("MHR_Overlay.Misc.part_names"); part_names = require("MHR_Overlay.Misc.part_names");
time = require("MHR_Overlay.Game_Handler.time"); time = require("MHR_Overlay.Game_Handler.time");
utils = require("MHR_Overlay.Misc.utils");
end end
return this; return this;

View File

@@ -337,6 +337,7 @@ function this.init_UI(monster, monster_UI, cached_config)
); );
ailments.init_ailment_names(monster.ailments); ailments.init_ailment_names(monster.ailments);
body_part.init_part_names(monster.id, monster.parts);
end end
local physical_param_field = enemy_character_base_type_def:get_field("<PhysicalParam>k__BackingField"); local physical_param_field = enemy_character_base_type_def:get_field("<PhysicalParam>k__BackingField");
@@ -731,7 +732,6 @@ function this.update_parts(enemy, monster, physical_param)
return; return;
end end
for i = 0, enemy_parts_info_array_length - 1 do for i = 0, enemy_parts_info_array_length - 1 do
local part_id = i + 1; local part_id = i + 1;
@@ -744,7 +744,7 @@ function this.update_parts(enemy, monster, physical_param)
if part == nil then if part == nil then
local part_name = part_names.get_part_name(monster.id, part_id); local part_name = part_names.get_part_name(monster.id, part_id);
if part_name == nil then if part_name == nil then
goto continue goto continue;
else else
part = body_part.new(part_id, part_name); part = body_part.new(part_id, part_name);
monster.parts[part_id] = part; monster.parts[part_id] = part;

View File

@@ -47,6 +47,61 @@ local os = os;
local ValueType = ValueType; local ValueType = ValueType;
local package = package; local package = package;
this.ailment_buildups_sorting_types = {};
this.displayed_ailment_buildups_sorting_types = {};
this.highlighted_buildup_bar_types = {};
this.displayed_highlighted_buildup_bar_types = {};
this.buildup_bar_relative_types = {};
this.displayed_buildup_bar_relative_types = {};
function this.init()
local default = language.default_language.customization_menu;
local current = language.current_language.customization_menu;
this.ailment_buildups_sorting_types =
{
default.normal,
default.buildup,
default.buildup_percentage
};
this.displayed_ailment_buildups_sorting_types =
{
current.normal,
current.buildup,
current.buildup_percentage
};
this.highlighted_buildup_bar_types =
{
default.me,
default.top_buildup,
default.none
};
this.displayed_highlighted_buildup_bar_types =
{
current.me,
current.top_buildup,
current.none
};
this.buildup_bar_relative_types =
{
default.total_buildup,
default.top_buildup
};
this.displayed_buildup_bar_relative_types =
{
current.total_buildup,
current.top_buildup
};
end
function this.draw(cached_config) function this.draw(cached_config)
local changed = false; local changed = false;
local config_changed = false; local config_changed = false;
@@ -103,24 +158,24 @@ function this.draw(cached_config)
if imgui.tree_node(language.current_language.customization_menu.settings) then if imgui.tree_node(language.current_language.customization_menu.settings) then
changed, index = imgui.combo( changed, index = imgui.combo(
language.current_language.customization_menu.highlighted_bar, language.current_language.customization_menu.highlighted_bar,
utils.table.find_index(customization_menu.highlighted_buildup_bar_types, cached_config.settings.highlighted_bar), utils.table.find_index(this.highlighted_buildup_bar_types, cached_config.settings.highlighted_bar),
customization_menu.displayed_highlighted_buildup_bar_types); this.displayed_highlighted_buildup_bar_types);
config_changed = config_changed or changed; config_changed = config_changed or changed;
if changed then if changed then
cached_config.settings.highlighted_bar = customization_menu.highlighted_buildup_bar_types[index]; cached_config.settings.highlighted_bar = this.highlighted_buildup_bar_types[index];
end end
changed, index = imgui.combo( changed, index = imgui.combo(
language.current_language.customization_menu.buildup_bars_are_relative_to, language.current_language.customization_menu.buildup_bars_are_relative_to,
utils.table.find_index(customization_menu.displayed_buildup_bar_relative_types, cached_config.settings.buildup_bar_relative_to), utils.table.find_index(this.displayed_buildup_bar_relative_types, cached_config.settings.buildup_bar_relative_to),
customization_menu.displayed_buildup_bar_relative_types); this.displayed_buildup_bar_relative_types);
config_changed = config_changed or changed; config_changed = config_changed or changed;
if changed then if changed then
cached_config.settings.buildup_bar_relative_to = customization_menu.displayed_buildup_bar_relative_types[index]; cached_config.settings.buildup_bar_relative_to = this.displayed_buildup_bar_relative_types[index];
end end
changed, cached_config.settings.time_limit = imgui.drag_float( changed, cached_config.settings.time_limit = imgui.drag_float(
@@ -134,13 +189,13 @@ function this.draw(cached_config)
if imgui.tree_node(language.current_language.customization_menu.sorting) then if imgui.tree_node(language.current_language.customization_menu.sorting) then
changed, index = imgui.combo( changed, index = imgui.combo(
language.current_language.customization_menu.type, language.current_language.customization_menu.type,
utils.table.find_index(customization_menu.ailment_buildups_sorting_types, cached_config.sorting.type), utils.table.find_index(this.ailment_buildups_sorting_types, cached_config.sorting.type),
customization_menu.displayed_ailment_buildups_sorting_types); this.displayed_ailment_buildups_sorting_types);
config_changed = config_changed or changed; config_changed = config_changed or changed;
if changed then if changed then
cached_config.sorting.type = customization_menu.ailment_buildups_sorting_types[index]; cached_config.sorting.type = this.ailment_buildups_sorting_types[index];
end end
changed, cached_config.sorting.reversed_order = imgui.checkbox( changed, cached_config.sorting.reversed_order = imgui.checkbox(

View File

@@ -47,6 +47,27 @@ local os = os;
local ValueType = ValueType; local ValueType = ValueType;
local package = package; local package = package;
this.ailments_sorting_types = {};
this.displayed_ailments_sorting_types = {};
function this.init()
local default = language.default_language.customization_menu;
local current = language.current_language.customization_menu;
this.ailments_sorting_types = {
default.normal,
default.buildup,
default.buildup_percentage
};
this.displayed_ailments_sorting_types = {
current.normal,
current.buildup,
current.buildup_percentage
};
end
function this.draw(cached_config) function this.draw(cached_config)
local changed = false; local changed = false;
local config_changed = false; local config_changed = false;
@@ -143,13 +164,13 @@ function this.draw(cached_config)
if imgui.tree_node(language.current_language.customization_menu.sorting) then if imgui.tree_node(language.current_language.customization_menu.sorting) then
changed, index = imgui.combo( changed, index = imgui.combo(
language.current_language.customization_menu.type, language.current_language.customization_menu.type,
utils.table.find_index(customization_menu.ailments_sorting_types, cached_config.sorting.type), utils.table.find_index(this.ailments_sorting_types, cached_config.sorting.type),
customization_menu.displayed_ailments_sorting_types); this.displayed_ailments_sorting_types);
config_changed = config_changed or changed; config_changed = config_changed or changed;
if changed then if changed then
cached_config.sorting.type = customization_menu.ailments_sorting_types[index]; cached_config.sorting.type = this.ailments_sorting_types[index];
end end
changed, cached_config.sorting.reversed_order = imgui.checkbox( changed, cached_config.sorting.reversed_order = imgui.checkbox(

View File

@@ -46,72 +46,124 @@ local os = os;
local ValueType = ValueType; local ValueType = ValueType;
local package = package; local package = package;
local outline_styles = {};
local displayed_outline_styles = {};
local directions = {};
local displayed_directions = {};
function this.init()
local default = language.default_language.customization_menu;
local current = language.current_language.customization_menu;
outline_styles = {
default.inside,
default.center,
default.outside
};
displayed_outline_styles = {
current.inside,
current.center,
current.outside
};
directions = {
default.left_to_right,
default.right_to_left,
default.top_to_bottom,
default.bottom_to_top
};
displayed_directions = {
current.left_to_right,
current.right_to_left,
current.top_to_bottom,
current.bottom_to_top
};
end
function this.draw(bar_name, bar) function this.draw(bar_name, bar)
if bar == nil then if bar == nil then
return false; return false;
end end
local cached_language = language.current_language.customization_menu;
local bar_changed = false; local bar_changed = false;
local changed = false; local changed = false;
local index = 1; local index = 1;
if imgui.tree_node(bar_name) then if imgui.tree_node(bar_name) then
changed, bar.visibility = imgui.checkbox(language.current_language.customization_menu.visible changed, bar.visibility = imgui.checkbox(cached_language.visible
, bar.visibility); , bar.visibility);
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
if imgui.tree_node(language.current_language.customization_menu.offset) then if imgui.tree_node(cached_language.settings) then
changed, bar.offset.x = imgui.drag_float(language.current_language.customization_menu.x, local fill_direction_index = utils.table.find_index(directions, bar.settings.fill_direction);
changed, fill_direction_index = imgui.combo(cached_language.fill_direction, fill_direction_index, displayed_directions);
bar_changed = bar_changed or changed;
if changed then
bar.settings.fill_direction = directions[fill_direction_index];
end
imgui.tree_pop();
end
if imgui.tree_node(cached_language.offset) then
changed, bar.offset.x = imgui.drag_float(cached_language.x,
bar.offset.x, 0.1, -screen.width, screen.width, "%.1f"); bar.offset.x, 0.1, -screen.width, screen.width, "%.1f");
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
changed, bar.offset.y = imgui.drag_float(language.current_language.customization_menu.y, changed, bar.offset.y = imgui.drag_float(cached_language.y,
bar.offset.y, 0.1, -screen.height, screen.height, "%.1f"); bar.offset.y, 0.1, -screen.height, screen.height, "%.1f");
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
imgui.tree_pop(); imgui.tree_pop();
end end
if imgui.tree_node(language.current_language.customization_menu.size) then if imgui.tree_node(cached_language.size) then
changed, bar.size.width = imgui.drag_float(language.current_language.customization_menu.width, changed, bar.size.width = imgui.drag_float(cached_language.width,
bar.size.width, 0.1, 0, screen.width, "%.1f"); bar.size.width, 0.1, 0, screen.width, "%.1f");
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
changed, bar.size.height = imgui.drag_float(language.current_language.customization_menu.height, changed, bar.size.height = imgui.drag_float(cached_language.height,
bar.size.height, 0.1, 0, screen.height, "%.1f"); bar.size.height, 0.1, 0, screen.height, "%.1f");
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
imgui.tree_pop(); imgui.tree_pop();
end end
if imgui.tree_node(language.current_language.customization_menu.outline) then if imgui.tree_node(cached_language.outline) then
changed, bar.outline.visibility = imgui.checkbox(language.current_language.customization_menu.visible changed, bar.outline.visibility = imgui.checkbox(cached_language.visible
, bar.outline.visibility); , bar.outline.visibility);
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
changed, bar.outline.thickness = imgui.drag_float(language.current_language.customization_menu.thickness, changed, bar.outline.thickness = imgui.drag_float(cached_language.thickness,
bar.outline.thickness, 0.1, 0, screen.width, "%.1f"); bar.outline.thickness, 0.1, 0, screen.width, "%.1f");
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
changed, bar.outline.offset = imgui.drag_float(language.current_language.customization_menu.offset, changed, bar.outline.offset = imgui.drag_float(cached_language.offset,
bar.outline.offset, 0.1, -screen.height, screen.height, "%.1f"); bar.outline.offset, 0.1, -screen.height, screen.height, "%.1f");
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
changed, index = imgui.combo(language.current_language.customization_menu.style, changed, index = imgui.combo(cached_language.style,
utils.table.find_index(customization_menu.outline_styles, utils.table.find_index(this.outline_styles,
bar.outline.style), bar.outline.style),
customization_menu.displayed_outline_styles); this.displayed_outline_styles);
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
if changed then if changed then
bar.outline.style = customization_menu.outline_styles[index]; bar.outline.style = this.outline_styles[index];
end end
imgui.tree_pop(); imgui.tree_pop();
end end
if imgui.tree_node(language.current_language.customization_menu.colors) then if imgui.tree_node(cached_language.colors) then
local colors = nil; local colors = nil;
if bar.colors ~= nil then if bar.colors ~= nil then
colors = bar.colors; colors = bar.colors;
@@ -119,7 +171,7 @@ function this.draw(bar_name, bar)
colors = bar.normal_colors; colors = bar.normal_colors;
end end
if imgui.tree_node(language.current_language.customization_menu.foreground) then if imgui.tree_node(cached_language.foreground) then
changed, colors.foreground = imgui.color_picker_argb("", colors.foreground, changed, colors.foreground = imgui.color_picker_argb("", colors.foreground,
customization_menu.color_picker_flags); customization_menu.color_picker_flags);
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
@@ -127,7 +179,7 @@ function this.draw(bar_name, bar)
imgui.tree_pop(); imgui.tree_pop();
end end
if imgui.tree_node(language.current_language.customization_menu.background) then if imgui.tree_node(cached_language.background) then
changed, colors.background = imgui.color_picker_argb("", colors.background, changed, colors.background = imgui.color_picker_argb("", colors.background,
customization_menu.color_picker_flags); customization_menu.color_picker_flags);
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
@@ -135,7 +187,7 @@ function this.draw(bar_name, bar)
imgui.tree_pop(); imgui.tree_pop();
end end
if imgui.tree_node(language.current_language.customization_menu.outline) then if imgui.tree_node(cached_language.outline) then
changed, colors.outline = imgui.color_picker_argb("", colors.outline, changed, colors.outline = imgui.color_picker_argb("", colors.outline,
customization_menu.color_picker_flags); customization_menu.color_picker_flags);
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
@@ -144,8 +196,8 @@ function this.draw(bar_name, bar)
end end
if bar.capture_colors ~= nil then if bar.capture_colors ~= nil then
if imgui.tree_node(language.current_language.customization_menu.monster_can_be_captured) then if imgui.tree_node(cached_language.monster_can_be_captured) then
if imgui.tree_node(language.current_language.customization_menu.foreground) then if imgui.tree_node(cached_language.foreground) then
changed, bar.capture_colors.foreground = imgui.color_picker_argb("", changed, bar.capture_colors.foreground = imgui.color_picker_argb("",
bar.capture_colors.foreground bar.capture_colors.foreground
, ,
@@ -155,7 +207,7 @@ function this.draw(bar_name, bar)
imgui.tree_pop(); imgui.tree_pop();
end end
if imgui.tree_node(language.current_language.customization_menu.background) then if imgui.tree_node(cached_language.background) then
changed, bar.capture_colors.background = imgui.color_picker_argb("", changed, bar.capture_colors.background = imgui.color_picker_argb("",
bar.capture_colors.background bar.capture_colors.background
, ,
@@ -165,7 +217,7 @@ function this.draw(bar_name, bar)
imgui.tree_pop(); imgui.tree_pop();
end end
if imgui.tree_node(language.current_language.customization_menu.outline) then if imgui.tree_node(cached_language.outline) then
changed, bar.capture_colors.outline = imgui.color_picker_argb("", changed, bar.capture_colors.outline = imgui.color_picker_argb("",
bar.capture_colors.outline bar.capture_colors.outline
, ,
@@ -182,7 +234,7 @@ function this.draw(bar_name, bar)
imgui.tree_pop(); imgui.tree_pop();
end end
changed = line_customization.draw(language.current_language.customization_menu.capture_line, bar.capture_line); changed = line_customization.draw(cached_language.capture_line, bar.capture_line);
bar_changed = bar_changed or changed; bar_changed = bar_changed or changed;
imgui.tree_pop(); imgui.tree_pop();

View File

@@ -73,51 +73,44 @@ this.window_flags = 0x10120;
this.color_picker_flags = 327680; this.color_picker_flags = 327680;
this.decimal_input_flags = 33; this.decimal_input_flags = 33;
this.displayed_orientation_types = {};
this.displayed_anchor_types = {};
this.displayed_outline_styles = {};
this.displayed_monster_UI_sorting_types = {};
this.displayed_large_monster_UI_parts_sorting_types = {};
this.displayed_large_monster_UI_parts_filter_types = {};
this.displayed_ailments_sorting_types = {};
this.displayed_ailment_buildups_sorting_types = {};
this.displayed_highlighted_buildup_bar_types = {};
this.displayed_buildup_bar_relative_types = {};
this.displayed_buff_UI_sorting_types = {};
this.displayed_damage_meter_UI_highlighted_entity_types = {};
this.displayed_damage_meter_UI_damage_bar_relative_types = {};
this.displayed_damage_meter_UI_my_damage_bar_location_types = {};
this.displayed_damage_meter_UI_total_damage_location_types = {};
this.displayed_damage_meter_UI_sorting_types = {};
this.displayed_damage_meter_UI_dps_modes = {};
this.displayed_auto_highlight_modes = {};
this.orientation_types = {}; this.orientation_types = {};
this.displayed_orientation_types = {};
this.anchor_types = {}; this.anchor_types = {};
this.outline_styles = {}; this.displayed_anchor_types = {};
this.monster_UI_sorting_types = {}; this.monster_UI_sorting_types = {};
this.displayed_monster_UI_sorting_types = {};
this.large_monster_UI_parts_sorting_types = {}; this.large_monster_UI_parts_sorting_types = {};
this.displayed_large_monster_UI_parts_sorting_types = {};
this.large_monster_UI_parts_filter_types = {}; this.large_monster_UI_parts_filter_types = {};
this.ailments_sorting_types = {}; this.displayed_large_monster_UI_parts_filter_types = {};
this.ailment_buildups_sorting_types = {};
this.highlighted_buildup_bar_types = {};
this.buildup_bar_relative_types = {};
this.buff_UI_sorting_types = {}; this.buff_UI_sorting_types = {};
this.displayed_buff_UI_sorting_types = {};
this.damage_meter_UI_highlighted_entity_types = {}; this.damage_meter_UI_highlighted_entity_types = {};
this.displayed_damage_meter_UI_highlighted_entity_types = {};
this.damage_meter_UI_damage_bar_relative_types = {}; this.damage_meter_UI_damage_bar_relative_types = {};
this.displayed_damage_meter_UI_damage_bar_relative_types = {};
this.damage_meter_UI_my_damage_bar_location_types = {}; this.damage_meter_UI_my_damage_bar_location_types = {};
this.displayed_damage_meter_UI_my_damage_bar_location_types = {};
this.damage_meter_UI_total_damage_location_types = {}; this.damage_meter_UI_total_damage_location_types = {};
this.displayed_damage_meter_UI_total_damage_location_types = {};
this.damage_meter_UI_sorting_types = {}; this.damage_meter_UI_sorting_types = {};
this.displayed_damage_meter_UI_sorting_types = {};
this.damage_meter_UI_dps_modes = {}; this.damage_meter_UI_dps_modes = {};
this.displayed_damage_meter_UI_dps_modes = {};
this.auto_highlight_modes = {}; this.auto_highlight_modes = {};
this.displayed_auto_highlight_modes = {};
this.fonts = {"Arial", "Arial Black", "Bahnschrift", "Calibri", "Cambria", "Cambria Math", "Candara", this.fonts = {"Arial", "Arial Black", "Bahnschrift", "Calibri", "Cambria", "Cambria Math", "Candara",
"Comic Sans MS", "Consolas", "Constantia", "Corbel", "Courier New", "Ebrima", "Comic Sans MS", "Consolas", "Constantia", "Corbel", "Courier New", "Ebrima",
@@ -170,165 +163,208 @@ function this.reload_font(pop_push)
end end
function this.init() function this.init()
local current = language.current_language.customization_menu;
local default = language.default_language.customization_menu; local default = language.default_language.customization_menu;
local current = language.current_language.customization_menu;
this.displayed_orientation_types = { current.horizontal, bar_customization.init();
current.vertical}; ailments_customization.init();
ailment_buildups_customization.init();
this.orientation_types = { default.horizontal, this.orientation_types =
default.vertical}; {
default.horizontal,
default.vertical
};
this.displayed_anchor_types = { current.top_left, this.displayed_orientation_types =
current.top_right, {
current.bottom_left, current.horizontal,
current.bottom_right}; current.vertical
};
this.anchor_types =
{
default.top_left,
default.top_right,
default.bottom_left,
default.bottom_right
};
this.anchor_types = { default.top_left, this.displayed_anchor_types =
default.top_right, {
default.bottom_left, current.top_left,
default.bottom_right}; current.top_right,
current.bottom_left,
current.bottom_right
};
this.displayed_outline_styles = { current.inside, this.monster_UI_sorting_types =
current.center, {
current.outside}; default.normal,
default.health,
default.health_percentage,
default.distance
};
this.outline_styles = { default.inside, this.displayed_monster_UI_sorting_types =
default.center, {
default.outside}; current.normal,
current.health,
current.health_percentage,
current.distance
};
this.displayed_monster_UI_sorting_types = { current.normal, this.large_monster_UI_parts_sorting_types =
current.health, {
current.health_percentage, default.normal,
current.distance}; default.health,
default.health_percentage,
default.flinch_count,
default.break_health,
default.break_health_percentage,
default.break_count,
default.loss_health,
default.loss_health_percentage
};
this.monster_UI_sorting_types = { default.normal, this.displayed_large_monster_UI_parts_sorting_types =
default.health, {
default.health_percentage, current.normal,
default.distance}; current.health,
current.health_percentage,
current.flinch_count,
current.break_health,
current.break_health_percentage,
current.break_count,
current.loss_health,
current.loss_health_percentage
};
this.displayed_large_monster_UI_parts_sorting_types = { current.normal, this.large_monster_UI_parts_filter_types =
current.health, {
current.health_percentage, default.current_state,
current.flinch_count, default.default_state
current.break_health, };
current.break_health_percentage,
current.break_count,
current.loss_health,
current.loss_health_percentage};
this.large_monster_UI_parts_sorting_types = { default.normal, this.displayed_large_monster_UI_parts_filter_types =
default.health, {
default.health_percentage, current.current_state,
default.flinch_count, current.default_state
default.break_health, };
default.break_health_percentage,
default.break_count,
default.loss_health,
default.loss_health_percentage};
this.displayed_large_monster_UI_parts_filter_types = { current.current_state, this.buff_UI_sorting_types =
current.default_state}; {
default.name,
default.timer,
default.duration
};
this.large_monster_UI_parts_filter_types = { default.current_state, this.displayed_buff_UI_sorting_types =
default.default_state}; {
current.name,
current.timer,
current.duration
};
this.displayed_ailments_sorting_types = { current.normal, this.damage_meter_UI_highlighted_entity_types =
current.buildup, {
current.buildup_percentage}; default.top_damage,
default.top_dps,
default.none
};
this.ailments_sorting_types = { default.normal, this.displayed_damage_meter_UI_highlighted_entity_types =
default.buildup, {
default.buildup_percentage}; current.top_damage,
current.top_dps,
current.none
};
this.displayed_buff_UI_sorting_types = { current.name, this.damage_meter_UI_damage_bar_relative_types =
current.timer, {
current.duration}; default.total_damage,
default.top_damage
};
this.buff_UI_sorting_types = { default.name, this.displayed_damage_meter_UI_damage_bar_relative_types =
default.timer, {
default.duration}; current.total_damage,
current.top_damage
};
this.displayed_ailment_buildups_sorting_types = { current.normal, this.damage_meter_UI_my_damage_bar_location_types =
current.buildup, {
current.buildup_percentage}; default.normal,
default.first,
default.last
};
this.ailment_buildups_sorting_types = { default.normal, this.displayed_damage_meter_UI_my_damage_bar_location_types =
default.buildup, {
default.buildup_percentage}; current.normal,
current.first,
current.last
};
this.displayed_highlighted_buildup_bar_types = { current.me, this.damage_meter_UI_total_damage_location_types =
current.top_buildup, {
current.none}; default.first,
default.last
};
this.highlighted_buildup_bar_types = { default.me, this.displayed_damage_meter_UI_total_damage_location_types =
default.top_buildup, {
default.none}; current.first,
current.last
};
this.displayed_buildup_bar_relative_types = { current.total_buildup, this.damage_meter_UI_sorting_types =
current.top_buildup}; {
default.normal,
default.damage,
default.dps
};
this.buildup_bar_relative_types = { default.total_buildup, this.displayed_damage_meter_UI_sorting_types =
default.top_buildup}; {
current.normal,
current.damage,
current.dps
};
this.displayed_damage_meter_UI_highlighted_entity_types = { current.top_damage, this.damage_meter_UI_dps_modes =
current.top_dps, {
current.none}; default.first_hit,
default.quest_time,
default.join_time
};
this.damage_meter_UI_highlighted_entity_types = { default.top_damage, this.displayed_damage_meter_UI_dps_modes =
default.top_dps, {
default.none}; current.first_hit,
current.quest_time,
current.join_time
};
this.displayed_damage_meter_UI_damage_bar_relative_types = { current.total_damage, this.auto_highlight_modes =
current.top_damage}; {
default.closest,
default.farthest,
default.lowest_health,
default.highest_health,
default.lowest_health_percentage,
default.highest_health_percentage
};
this.damage_meter_UI_damage_bar_relative_types = { default.total_damage, this.displayed_auto_highlight_modes =
default.top_damage}; {
current.closest,
this.displayed_damage_meter_UI_my_damage_bar_location_types = { current.normal, current.farthest,
current.first, current.lowest_health,
current.last}; current.highest_health,
current.lowest_health_percentage,
this.damage_meter_UI_my_damage_bar_location_types = { default.normal, current.highest_health_percentage
default.first, };
default.last};
this.displayed_damage_meter_UI_total_damage_location_types = { current.first,
current.last};
this.damage_meter_UI_total_damage_location_types = { default.first,
default.last};
this.displayed_damage_meter_UI_sorting_types = { current.normal,
current.damage,
current.dps};
this.damage_meter_UI_sorting_types = { default.normal,
default.damage,
default.dps};
this.displayed_damage_meter_UI_dps_modes = { current.first_hit,
current.quest_time,
current.join_time};
this.damage_meter_UI_dps_modes = { default.first_hit,
default.quest_time,
default.join_time};
this.displayed_auto_highlight_modes = { current.closest,
current.farthest,
current.lowest_health,
current.highest_health,
current.lowest_health_percentage,
current.highest_health_percentage};
this.auto_highlight_modes = { default.closest,
default.farthest,
default.lowest_health,
default.highest_health,
default.lowest_health_percentage,
default.highest_health_percentage};
end end
function this.draw() function this.draw()
@@ -838,6 +874,7 @@ function this.draw_global_settings(apply_font_requested, language_changed)
if changed then if changed then
cached_config.language = language.language_names[index]; cached_config.language = language.language_names[index];
language.update(index); language.update(index);
part_names.init();
this.init(); this.init();
language_changed = true; language_changed = true;

View File

@@ -167,7 +167,6 @@ function this.draw_label(label, position, opacity_scale, ...)
end end
function this.draw_bar(bar, position, opacity_scale, percentage) function this.draw_bar(bar, position, opacity_scale, percentage)
if bar == nil or not bar.visibility then if bar == nil or not bar.visibility then
return; return;
end end
@@ -182,6 +181,7 @@ function this.draw_bar(bar, position, opacity_scale, percentage)
local outline_visibility = bar.outline.visibility; local outline_visibility = bar.outline.visibility;
local style = bar.outline.style; -- Inside/Center/Outside local style = bar.outline.style; -- Inside/Center/Outside
local fill_direction = bar.settings.fill_direction; -- Left to Right/Right to Left/Top to Bottom/Bottom to Top
local outline_thickness = bar.outline.thickness; local outline_thickness = bar.outline.thickness;
if not outline_visibility then if not outline_visibility then
@@ -206,10 +206,21 @@ function this.draw_bar(bar, position, opacity_scale, percentage)
local position_x = 0; local position_x = 0;
local position_y = 0; local position_y = 0;
local foreground_width = 0; local width = 0;
local background_width = 0;
local height = 0; local height = 0;
local foreground_width = 0;
local foreground_height = 0;
local background_width = 0;
local background_height = 0;
local foreground_shift_x = 0;
local foreground_shift_y = 0;
local background_shift_x = 0;
local background_shift_y = 0;
if style == "Inside" then if style == "Inside" then
outline_position_x = position.x + bar.offset.x + half_outline_thickness; outline_position_x = position.x + bar.offset.x + half_outline_thickness;
outline_position_y = position.y + bar.offset.y + half_outline_thickness; outline_position_y = position.y + bar.offset.y + half_outline_thickness;
@@ -220,10 +231,7 @@ function this.draw_bar(bar, position, opacity_scale, percentage)
position_x = outline_position_x + half_outline_thickness + outline_offset; position_x = outline_position_x + half_outline_thickness + outline_offset;
position_y = outline_position_y + half_outline_thickness + outline_offset; position_y = outline_position_y + half_outline_thickness + outline_offset;
local width = outline_width - outline_thickness - outline_offset - outline_offset; width = outline_width - outline_thickness - outline_offset - outline_offset;
foreground_width = width * percentage;
background_width = width - foreground_width;
height = outline_height - outline_thickness - outline_offset - outline_offset; height = outline_height - outline_thickness - outline_offset - outline_offset;
elseif style == "Center" then elseif style == "Center" then
@@ -236,22 +244,16 @@ function this.draw_bar(bar, position, opacity_scale, percentage)
position_x = outline_position_x + half_outline_thickness + outline_offset; position_x = outline_position_x + half_outline_thickness + outline_offset;
position_y = outline_position_y + half_outline_thickness + outline_offset; position_y = outline_position_y + half_outline_thickness + outline_offset;
local width = outline_width - outline_thickness - outline_offset - outline_offset; width = outline_width - outline_thickness - outline_offset - outline_offset;
foreground_width = width * percentage;
background_width = width - foreground_width;
height = outline_height - outline_thickness - outline_offset - outline_offset; height = outline_height - outline_thickness - outline_offset - outline_offset;
else else -- Outside
position_x = position.x + bar.offset.x; position_x = position.x + bar.offset.x;
position_y = position.y + bar.offset.y; position_y = position.y + bar.offset.y;
local width = bar.size.width; width = bar.size.width;
height = bar.size.height; height = bar.size.height;
foreground_width = width * percentage;
background_width = width - foreground_width;
outline_position_x = position_x - half_outline_thickness - outline_offset; outline_position_x = position_x - half_outline_thickness - outline_offset;
outline_position_y = position_y - half_outline_thickness - outline_offset; outline_position_y = position_y - half_outline_thickness - outline_offset;
@@ -259,6 +261,43 @@ function this.draw_bar(bar, position, opacity_scale, percentage)
outline_height = height + outline_thickness + outline_offset + outline_offset; outline_height = height + outline_thickness + outline_offset + outline_offset;
end end
if fill_direction == "Right to Left" then
foreground_width = width * percentage;
foreground_height = height;
background_width = width - foreground_width;
background_height = height;
foreground_shift_x = background_width;
elseif fill_direction == "Top to Bottom" then
foreground_width = width;
foreground_height = height * percentage;
background_width = width;
background_height = height - foreground_height;
background_shift_y = foreground_height;
elseif fill_direction == "Bottom to Top" then
foreground_width = width;
foreground_height = height * percentage;
background_width = width;
background_height = height - foreground_height;
foreground_shift_y = background_height;
else -- Left to Right
foreground_width = width * percentage;
foreground_height = height;
background_width = width - foreground_width;
background_height = height;
background_shift_x = foreground_width;
end
local foreground_color = bar.colors.foreground; local foreground_color = bar.colors.foreground;
local background_color = bar.colors.background; local background_color = bar.colors.background;
local outline_color = bar.colors.outline; local outline_color = bar.colors.outline;
@@ -271,35 +310,33 @@ function this.draw_bar(bar, position, opacity_scale, percentage)
local use_d2d = d2d ~= nil and config.current_config.global_settings.renderer.use_d2d_if_available; local use_d2d = d2d ~= nil and config.current_config.global_settings.renderer.use_d2d_if_available;
-- outline -- background
if outline_thickness ~= 0 then if background_width ~= 0 then
if use_d2d then if use_d2d then
d2d.outline_rect(outline_position_x, outline_position_y, outline_width, outline_height, outline_thickness, d2d.fill_rect(position_x + background_shift_x, position_y + background_shift_y, background_width, background_height, background_color);
outline_color);
else else
outline_color = this.argb_color_to_abgr_color(outline_color); background_color = this.argb_color_to_abgr_color(background_color);
draw.outline_rect(outline_position_x, outline_position_y, outline_width, outline_height, outline_color); draw.filled_rect(position_x + background_shift_x, position_y + background_shift_y, background_width, background_height, background_color)
end end
end end
-- foreground -- foreground
if foreground_width ~= 0 then if foreground_width ~= 0 then
if use_d2d then if use_d2d then
d2d.fill_rect(position_x, position_y, foreground_width, height, foreground_color); d2d.fill_rect(position_x + foreground_shift_x, position_y + foreground_shift_y, foreground_width, foreground_height, foreground_color);
else else
foreground_color = this.argb_color_to_abgr_color(foreground_color); foreground_color = this.argb_color_to_abgr_color(foreground_color);
draw.filled_rect(position_x, position_y, foreground_width, height, foreground_color) draw.filled_rect(position_x + foreground_shift_x, position_y + foreground_shift_y, foreground_width, foreground_height, foreground_color)
end end
end end
-- background -- outline
if background_width ~= 0 then if outline_thickness ~= 0 then
if use_d2d then if use_d2d then
d2d.fill_rect(position_x + foreground_width, position_y, background_width, height, background_color); d2d.outline_rect(outline_position_x, outline_position_y, outline_width, outline_height, outline_thickness, outline_color);
else else
background_color = this.argb_color_to_abgr_color(background_color); outline_color = this.argb_color_to_abgr_color(outline_color);
draw.filled_rect(position_x + foreground_width, position_y, background_width, height, background_color) draw.outline_rect(outline_position_x, outline_position_y, outline_width, outline_height, outline_color);
end end
end end
end end

View File

@@ -59,6 +59,7 @@
"bomb_damage": "Bomb Damage", "bomb_damage": "Bomb Damage",
"bottom_left": "Bottom-Left", "bottom_left": "Bottom-Left",
"bottom_right": "Bottom-Right", "bottom_right": "Bottom-Right",
"bottom_to_top": "Bottom to Top",
"break_count": "Break Count", "break_count": "Break Count",
"break_filter": "Break", "break_filter": "Break",
"break_health": "Break Health", "break_health": "Break Health",
@@ -109,6 +110,7 @@
"family": "Family", "family": "Family",
"farthest": "Farthest", "farthest": "Farthest",
"fight_time": "Fight Time", "fight_time": "Fight Time",
"fill_direction": "Fill Direction",
"filter": "Filter", "filter": "Filter",
"filter_mode": "Filter Mode", "filter_mode": "Filter Mode",
"first": "First", "first": "First",
@@ -171,6 +173,7 @@
"large_monster_static_UI": "Large Monster Static UI", "large_monster_static_UI": "Large Monster Static UI",
"large_monsters": "Large Monsters", "large_monsters": "Large Monsters",
"last": "Last", "last": "Last",
"left_to_right": "Left to Right",
"level": "Level", "level": "Level",
"level_label": "Level Label", "level_label": "Level Label",
"loading_quest": "Loading Quest", "loading_quest": "Loading Quest",
@@ -242,6 +245,7 @@
"reset": "Reset", "reset": "Reset",
"reversed_order": "Reversed Order", "reversed_order": "Reversed Order",
"reward_screen": "Reward Screen", "reward_screen": "Reward Screen",
"right_to_left": "Right to Left",
"servant_otomos": "Servant Buddies", "servant_otomos": "Servant Buddies",
"servants": "Followers", "servants": "Followers",
"settings": "Settings", "settings": "Settings",
@@ -276,6 +280,7 @@
"top_dps": "Top DPS", "top_dps": "Top DPS",
"top_left": "Top-Left", "top_left": "Top-Left",
"top_right": "Top-Right", "top_right": "Top-Right",
"top_to_bottom": "Top to Bottom",
"total": "Total", "total": "Total",
"total_buildup": "Total Buildup", "total_buildup": "Total Buildup",
"total_buildup_label": "Total Buildup Label", "total_buildup_label": "Total Buildup Label",

View File

@@ -59,6 +59,7 @@
"bomb_damage": "爆弾ダメージ", "bomb_damage": "爆弾ダメージ",
"bottom_left": "左下", "bottom_left": "左下",
"bottom_right": "右下", "bottom_right": "右下",
"bottom_to_top": "Bottom to Top",
"break_count": "破壊時間", "break_count": "破壊時間",
"break_filter": "Break", "break_filter": "Break",
"break_health": "部位破壊までのダメージ状況", "break_health": "部位破壊までのダメージ状況",
@@ -109,6 +110,7 @@
"family": "Family", "family": "Family",
"farthest": "Farthest", "farthest": "Farthest",
"fight_time": "戦闘時間", "fight_time": "戦闘時間",
"fill_direction": "Fill Direction",
"filter": "フィルター", "filter": "フィルター",
"filter_mode": "Filter Mode", "filter_mode": "Filter Mode",
"first": "最初", "first": "最初",
@@ -171,6 +173,7 @@
"large_monster_static_UI": "大型モンスターのスタティック表示UI", "large_monster_static_UI": "大型モンスターのスタティック表示UI",
"large_monsters": "大型モンスター", "large_monsters": "大型モンスター",
"last": "最後", "last": "最後",
"left_to_right": "Left to Right",
"level": "Level", "level": "Level",
"level_label": "Level Label", "level_label": "Level Label",
"loading_quest": "Loading Quest", "loading_quest": "Loading Quest",
@@ -242,6 +245,7 @@
"reset": "Reset", "reset": "Reset",
"reversed_order": "逆順", "reversed_order": "逆順",
"reward_screen": "Reward Screen", "reward_screen": "Reward Screen",
"right_to_left": "Right to Left",
"servant_otomos": "Servant Buddies", "servant_otomos": "Servant Buddies",
"servants": "Followers", "servants": "Followers",
"settings": "設定", "settings": "設定",
@@ -276,6 +280,7 @@
"top_dps": "最高DPS", "top_dps": "最高DPS",
"top_left": "左上", "top_left": "左上",
"top_right": "右上", "top_right": "右上",
"top_to_bottom": "Top to Bottom",
"total": "Total", "total": "Total",
"total_buildup": "蓄積合計", "total_buildup": "蓄積合計",
"total_buildup_label": "合計蓄積ラベル", "total_buildup_label": "合計蓄積ラベル",

View File

@@ -59,6 +59,7 @@
"bomb_damage": "폭탄 대미지", "bomb_damage": "폭탄 대미지",
"bottom_left": "좌하단", "bottom_left": "좌하단",
"bottom_right": "우하단", "bottom_right": "우하단",
"bottom_to_top": "Bottom to Top",
"break_count": "파괴 횟수", "break_count": "파괴 횟수",
"break_filter": "파괴", "break_filter": "파괴",
"break_health": "파괴 수치", "break_health": "파괴 수치",
@@ -109,6 +110,7 @@
"family": "글꼴", "family": "글꼴",
"farthest": "가장 멀리있는", "farthest": "가장 멀리있는",
"fight_time": "전투 시간", "fight_time": "전투 시간",
"fill_direction": "Fill Direction",
"filter": "필터", "filter": "필터",
"filter_mode": "Filter Mode", "filter_mode": "Filter Mode",
"first": "맨 앞", "first": "맨 앞",
@@ -171,6 +173,7 @@
"large_monster_static_UI": "대형 몬스터 고정 UI", "large_monster_static_UI": "대형 몬스터 고정 UI",
"large_monsters": "대형 몬스터", "large_monsters": "대형 몬스터",
"last": "맨 뒤", "last": "맨 뒤",
"left_to_right": "Left to Right",
"level": "레벨", "level": "레벨",
"level_label": "레벨 정보", "level_label": "레벨 정보",
"loading_quest": "퀘스트 로딩 중", "loading_quest": "퀘스트 로딩 중",
@@ -242,6 +245,7 @@
"reset": "리셋", "reset": "리셋",
"reversed_order": "역순", "reversed_order": "역순",
"reward_screen": "보상 화면", "reward_screen": "보상 화면",
"right_to_left": "Right to Left",
"servant_otomos": "맹우 동반자", "servant_otomos": "맹우 동반자",
"servants": "맹우", "servants": "맹우",
"settings": "설정", "settings": "설정",
@@ -276,6 +280,7 @@
"top_dps": "최고 DPS", "top_dps": "최고 DPS",
"top_left": "좌상단", "top_left": "좌상단",
"top_right": "우상단", "top_right": "우상단",
"top_to_bottom": "Top to Bottom",
"total": "전체", "total": "전체",
"total_buildup": "총 누적치", "total_buildup": "총 누적치",
"total_buildup_label": "총 누적치 정보", "total_buildup_label": "총 누적치 정보",

View File

@@ -59,6 +59,7 @@
"bomb_damage": "Урон от бомб", "bomb_damage": "Урон от бомб",
"bottom_left": "Левый нижний угол", "bottom_left": "Левый нижний угол",
"bottom_right": "Правй нижний угол", "bottom_right": "Правй нижний угол",
"bottom_to_top": "Снизу вверх",
"break_count": "Счётчик повреждений", "break_count": "Счётчик повреждений",
"break_filter": "Повреждение", "break_filter": "Повреждение",
"break_health": "Повреждение части", "break_health": "Повреждение части",
@@ -109,6 +110,7 @@
"family": "Семейство", "family": "Семейство",
"farthest": "Самый дальний", "farthest": "Самый дальний",
"fight_time": "Время в бою", "fight_time": "Время в бою",
"fill_direction": "Направление заполнения",
"filter": "Фильтр", "filter": "Фильтр",
"filter_mode": "Режим Фильтра", "filter_mode": "Режим Фильтра",
"first": "Первый", "first": "Первый",
@@ -171,6 +173,7 @@
"large_monster_static_UI": "Статический интерфейс больших монстров", "large_monster_static_UI": "Статический интерфейс больших монстров",
"large_monsters": "Большие монстры", "large_monsters": "Большие монстры",
"last": "Последний", "last": "Последний",
"left_to_right": "Слева направо",
"level": "Уровень", "level": "Уровень",
"level_label": "Метка уровня", "level_label": "Метка уровня",
"loading_quest": "Загрузка квеста", "loading_quest": "Загрузка квеста",
@@ -242,6 +245,7 @@
"reset": "Сбросить", "reset": "Сбросить",
"reversed_order": "Обратный порядок", "reversed_order": "Обратный порядок",
"reward_screen": "Экран наград", "reward_screen": "Экран наград",
"right_to_left": "Справа налево",
"servant_otomos": "Спутники последователей", "servant_otomos": "Спутники последователей",
"servants": "Последователи", "servants": "Последователи",
"settings": "Настройки", "settings": "Настройки",
@@ -276,6 +280,7 @@
"top_dps": "Наибольший урон в секунду", "top_dps": "Наибольший урон в секунду",
"top_left": "Левый верхний угол", "top_left": "Левый верхний угол",
"top_right": "Правый верхний угол", "top_right": "Правый верхний угол",
"top_to_bottom": "Сверху вниз",
"total": "Всего", "total": "Всего",
"total_buildup": "Общее накопление", "total_buildup": "Общее накопление",
"total_buildup_label": "Метка общего накопления", "total_buildup_label": "Метка общего накопления",

View File

@@ -59,6 +59,7 @@
"bomb_damage": "爆弹桶伤害", "bomb_damage": "爆弹桶伤害",
"bottom_left": "左下", "bottom_left": "左下",
"bottom_right": "右下", "bottom_right": "右下",
"bottom_to_top": "Bottom to Top",
"break_count": "破坏次数", "break_count": "破坏次数",
"break_filter": "破坏", "break_filter": "破坏",
"break_health": "破坏值", "break_health": "破坏值",
@@ -109,6 +110,7 @@
"family": "字体", "family": "字体",
"farthest": "最远", "farthest": "最远",
"fight_time": "战斗时间", "fight_time": "战斗时间",
"fill_direction": "Fill Direction",
"filter": "筛选器", "filter": "筛选器",
"filter_mode": "筛选方式", "filter_mode": "筛选方式",
"first": "第一", "first": "第一",
@@ -171,6 +173,7 @@
"large_monster_static_UI": "大型怪物固定UI", "large_monster_static_UI": "大型怪物固定UI",
"large_monsters": "大型怪物群", "large_monsters": "大型怪物群",
"last": "最后", "last": "最后",
"left_to_right": "Left to Right",
"level": "等级", "level": "等级",
"level_label": "等级标签", "level_label": "等级标签",
"loading_quest": "任务加载中", "loading_quest": "任务加载中",
@@ -242,6 +245,7 @@
"reset": "重置", "reset": "重置",
"reversed_order": "逆向排序", "reversed_order": "逆向排序",
"reward_screen": "奖励界面", "reward_screen": "奖励界面",
"right_to_left": "Right to Left",
"servant_otomos": "盟友随从", "servant_otomos": "盟友随从",
"servants": "盟友", "servants": "盟友",
"settings": "设定", "settings": "设定",
@@ -276,6 +280,7 @@
"top_dps": "最高DPS", "top_dps": "最高DPS",
"top_left": "左上", "top_left": "左上",
"top_right": "右上", "top_right": "右上",
"top_to_bottom": "Top to Bottom",
"total": "总计", "total": "总计",
"total_buildup": "总积累值", "total_buildup": "总积累值",
"total_buildup_label": "总积累值标签", "total_buildup_label": "总积累值标签",

View File

@@ -59,6 +59,7 @@
"bomb_damage": "爆炸傷害", "bomb_damage": "爆炸傷害",
"bottom_left": "左下", "bottom_left": "左下",
"bottom_right": "右下", "bottom_right": "右下",
"bottom_to_top": "Bottom to Top",
"break_count": "破壞次數", "break_count": "破壞次數",
"break_filter": "Break", "break_filter": "Break",
"break_health": "Break Health", "break_health": "Break Health",
@@ -109,6 +110,7 @@
"family": "字體", "family": "字體",
"farthest": "最遠的", "farthest": "最遠的",
"fight_time": "戰鬥時間", "fight_time": "戰鬥時間",
"fill_direction": "Fill Direction",
"filter": "篩選器", "filter": "篩選器",
"filter_mode": "Filter Mode", "filter_mode": "Filter Mode",
"first": "第一", "first": "第一",
@@ -171,6 +173,7 @@
"large_monster_static_UI": "大型魔物固定 UI", "large_monster_static_UI": "大型魔物固定 UI",
"large_monsters": "大型魔物群", "large_monsters": "大型魔物群",
"last": "最後", "last": "最後",
"left_to_right": "Left to Right",
"level": "Level", "level": "Level",
"level_label": "Level Label", "level_label": "Level Label",
"loading_quest": "Loading Quest", "loading_quest": "Loading Quest",
@@ -242,6 +245,7 @@
"reset": "Reset", "reset": "Reset",
"reversed_order": "反向排序", "reversed_order": "反向排序",
"reward_screen": "Reward Screen", "reward_screen": "Reward Screen",
"right_to_left": "Right to Left",
"servant_otomos": "Servant Buddies", "servant_otomos": "Servant Buddies",
"servants": "Followers", "servants": "Followers",
"settings": "設定", "settings": "設定",
@@ -276,6 +280,7 @@
"top_dps": "最高 DPS", "top_dps": "最高 DPS",
"top_left": "左上", "top_left": "左上",
"top_right": "右上", "top_right": "右上",
"top_to_bottom": "Top to Bottom",
"total": "Total", "total": "Total",
"total_buildup": "總累積值", "total_buildup": "總累積值",
"total_buildup_label": "總累積值文字", "total_buildup_label": "總累積值文字",