Add Player Name Size Limit

This commit is contained in:
GreenComfyTea
2022-07-10 12:15:35 +03:00
parent cb60b512bb
commit 9c1ba9ac4c
10 changed files with 39 additions and 2 deletions

View File

@@ -3779,7 +3779,9 @@ function config.init()
hide_myself = false,
hide_other_players = false,
hide_total_damage = false
hide_total_damage = false,
player_name_size_limit = 150
},
sorting = {

View File

@@ -374,7 +374,9 @@ language.default_language = {
hide_myself = "Hide Myself",
hide_other_players = "Hide Other Players",
hide_total_damage = "Hide Total Damage"
hide_total_damage = "Hide Total Damage",
player_name_size_limit = "Player Name Size Limit"
}
};

View File

@@ -32,6 +32,8 @@ function damage_UI_entity.new(bar, highlighted_bar, player_name_label, dps_label
entity.player_name_label.offset.x = entity.player_name_label.offset.x * global_scale_modifier;
entity.player_name_label.offset.y = entity.player_name_label.offset.y * global_scale_modifier;
entity.player_name_size_limit = config.current_config.damage_meter_UI.settings.player_name_size_limit * global_scale_modifier;
entity.dps_label.offset.x = entity.dps_label.offset.x * global_scale_modifier;
entity.dps_label.offset.y = entity.dps_label.offset.y * global_scale_modifier;
@@ -123,6 +125,8 @@ function damage_UI_entity.draw(_player, position_on_screen, opacity_scale, top_d
end
end
player_name_text = drawing.limit_text_size(player_name_text, _player.damage_UI.player_name_size_limit);
drawing.draw_label(_player.damage_UI.player_name_label, position_on_screen, opacity_scale, player_name_text);
drawing.draw_label(_player.damage_UI.value_label, position_on_screen, opacity_scale, _player.display.total_damage);
drawing.draw_label(_player.damage_UI.percentage_label, position_on_screen, opacity_scale, 100 * player_damage_percentage);

View File

@@ -15132,6 +15132,11 @@ function customization_menu.draw()
customization_menu.damage_meter_UI_dps_mode_index];
end
changed, config.current_config.damage_meter_UI.settings.player_name_size_limit = imgui.drag_float(language.current_language.customization_menu
.player_name_size_limit, config.current_config.damage_meter_UI.settings.player_name_size_limit, 0.1, 0, screen.width, "%.1f");
config_changed = config_changed or changed;
damage_meter_UI_changed = damage_meter_UI_changed or changed;
imgui.tree_pop();
end

View File

@@ -32,6 +32,25 @@ function drawing.argb_to_color(alpha, red, green, blue)
return 0x1000000 * alpha + 0x10000 * red + 0x100 * green + blue;
end
function drawing.limit_text_size(text, size_limit)
if d2d == nil then
return;
end
--do return end;
local limited_text = text;
while true do
local text_width, text_height = drawing.font:measure(limited_text);
if text_width < size_limit then
return limited_text;
else
limited_text = limited_text:sub(1, -5) .. "...";
end
end
end
function drawing.scale_color_opacity(color, scale)
local alpha, red, green, blue = drawing.color_to_argb(color);
local new_alpha = math.floor(alpha * scale);

View File

@@ -172,6 +172,7 @@
"player_id": "Player ID",
"player_name": "Player Name",
"player_name_label": "Player Name Label",
"player_name_size_limit": "Player Name Size Limit",
"player_spacing": "Player Spacing",
"poison_damage": "Poison Damage",
"position": "Position",

View File

@@ -172,6 +172,7 @@
"player_id": "헌터 ID",
"player_name": "헌터명",
"player_name_label": "헌터명 라벨",
"player_name_size_limit": "Player Name Size Limit",
"player_spacing": "플레이어 간격",
"poison_damage": "독 대미지",
"position": "위치",

View File

@@ -172,6 +172,7 @@
"player_id": "ИД игрока",
"player_name": "Имя игрока",
"player_name_label": "Метка имени игрока",
"player_name_size_limit": "Player Name Size Limit",
"player_spacing": "Расстояние между игроками",
"poison_damage": "Урон от отравления",
"position": "Расположение",

View File

@@ -172,6 +172,7 @@
"player_id": "玩家ID",
"player_name": "玩家名",
"player_name_label": "玩家名标签",
"player_name_size_limit": "Player Name Size Limit",
"player_spacing": "玩家间距",
"poison_damage": "中毒伤害",
"position": "位置",

View File

@@ -172,6 +172,7 @@
"player_id": "玩家ID",
"player_name": "玩家名稱",
"player_name_label": "玩家名稱",
"player_name_size_limit": "Player Name Size Limit",
"player_spacing": "Player Spacing",
"poison_damage": "毒傷害",
"position": "位置",