From e586534c4d18585af0623fae6a8bf0c5222d4c73 Mon Sep 17 00:00:00 2001 From: GreenComfyTea Date: Tue, 26 Sep 2023 13:14:23 +0300 Subject: [PATCH] Add Timer Delays Customization --- .../MHR_Overlay/Game_Handler/singletons.lua | 100 +++++++++--------- .../autorun/MHR_Overlay/Game_Handler/time.lua | 22 ++-- .../autorun/MHR_Overlay/Misc/config.lua | 12 ++- .../autorun/MHR_Overlay/Misc/language.lua | 10 ++ .../MHR_Overlay/UI/customization_menu.lua | 71 ++++++++++++- .../data/MHR Overlay/languages/en-us.json | 33 ++---- .../data/MHR Overlay/languages/ja-jp.json | 13 +++ .../data/MHR Overlay/languages/ko-kr.json | 13 +++ .../data/MHR Overlay/languages/ru-ru.json | 13 +++ .../data/MHR Overlay/languages/zh-cn.json | 13 +++ .../data/MHR Overlay/languages/zh-tw.json | 13 +++ 11 files changed, 229 insertions(+), 84 deletions(-) diff --git a/reframework/autorun/MHR_Overlay/Game_Handler/singletons.lua b/reframework/autorun/MHR_Overlay/Game_Handler/singletons.lua index b8d7653..24fd3d8 100644 --- a/reframework/autorun/MHR_Overlay/Game_Handler/singletons.lua +++ b/reframework/autorun/MHR_Overlay/Game_Handler/singletons.lua @@ -48,166 +48,166 @@ this.game_keyboard = nil; this.scene_manager = nil; this.game_manager = nil; -function this.init() - this.init_message_manager(); - this.init_enemy_manager(); - this.init_lobby_manager() - this.init_progress_manager(); - this.init_quest_manager(); - this.init_player_manager(); - this.init_village_area_manager(); - this.init_gui_manager(); - this.init_game_keyboard(); - this.init_scene_manager(); - this.init_game_manager(); - this.init_servant_manager(); - this.init_otomo_manager(); - this.init_long_sword_shell_manager(); - this.init_light_bowgun_shell_manager(); - this.init_horn_shell_manager(); +function this.update() + this.update_message_manager(); + this.update_enemy_manager(); + this.update_lobby_manager() + this.update_progress_manager(); + this.update_quest_manager(); + this.update_player_manager(); + this.update_village_area_manager(); + this.update_gui_manager(); + this.update_game_keyboard(); + this.update_scene_manager(); + this.update_game_manager(); + this.update_servant_manager(); + this.update_otomo_manager(); + this.update_long_sword_shell_manager(); + this.update_light_bowgun_shell_manager(); + this.update_horn_shell_manager(); end -function this.init_message_manager() +function this.update_message_manager() this.message_manager = sdk.get_managed_singleton("snow.gui.MessageManager"); if this.message_manager == nil then - error_handler.report("singletons.init_message_manager", "Failed to access Data: message_manager"); + error_handler.report("singletons.update_message_manager", "Failed to access Data: message_manager"); end return this.message_manager; end -function this.init_enemy_manager() +function this.update_enemy_manager() this.enemy_manager = sdk.get_managed_singleton("snow.enemy.EnemyManager"); if this.enemy_manager == nil then - error_handler.report("singletons.init_enemy_manager", "Failed to access Data: enemy_manager"); + error_handler.report("singletons.update_enemy_manager", "Failed to access Data: enemy_manager"); end return this.enemy_manager; end -function this.init_lobby_manager() +function this.update_lobby_manager() this.lobby_manager = sdk.get_managed_singleton("snow.LobbyManager"); if this.lobby_manager == nil then - error_handler.report("singletons.init_lobby_manager", "Failed to access Data: lobby_manager"); + error_handler.report("singletons.update_lobby_manager", "Failed to access Data: lobby_manager"); return false; end return this.lobby_manager; end -function this.init_progress_manager() +function this.update_progress_manager() this.progress_manager = sdk.get_managed_singleton("snow.progress.ProgressManager"); if this.progress_manager == nil then - error_handler.report("singletons.init_lobby_manager", "Failed to access Data: progress_manager"); + error_handler.report("singletons.update_progress_manager", "Failed to access Data: progress_manager"); return false; end return this.progress_manager; end -function this.init_quest_manager() +function this.update_quest_manager() this.quest_manager = sdk.get_managed_singleton("snow.QuestManager"); if this.quest_manager == nil then - error_handler.report("singletons.init_quest_manager", "Failed to access Data: quest_manager"); + error_handler.report("singletons.update_quest_manager", "Failed to access Data: quest_manager"); end return this.quest_manager; end -function this.init_player_manager() +function this.update_player_manager() this.player_manager = sdk.get_managed_singleton("snow.player.PlayerManager"); if this.player_manager == nil then - error_handler.report("singletons.init_player_manager", "Failed to access Data: player_manager"); + error_handler.report("singletons.update_player_manager", "Failed to access Data: player_manager"); end return this.player_manager; end -function this.init_village_area_manager() +function this.update_village_area_manager() this.village_area_manager = sdk.get_managed_singleton("snow.VillageAreaManager"); if this.village_area_manager == nil then - error_handler.report("singletons.init_village_area_manager", "Failed to access Data: village_area_manager"); + error_handler.report("singletons.update_village_area_manager", "Failed to access Data: village_area_manager"); end return this.village_area_manager; end -function this.init_gui_manager() +function this.update_gui_manager() this.gui_manager = sdk.get_managed_singleton("snow.gui.GuiManager"); if this.gui_manager == nil then - error_handler.report("singletons.init_gui_manager", "Failed to access Data: gui_manager"); + error_handler.report("singletons.update_gui_manager", "Failed to access Data: gui_manager"); end return this.gui_manager; end -function this.init_game_keyboard() +function this.update_game_keyboard() this.game_keyboard = sdk.get_managed_singleton("snow.GameKeyboard"); if this.game_keyboard == nil then - error_handler.report("singletons.init_game_keyboard", "Failed to access Data: game_keyboard"); + error_handler.report("singletons.update_game_keyboard", "Failed to access Data: game_keyboard"); end return this.game_keyboard; end -function this.init_scene_manager() +function this.update_scene_manager() this.scene_manager = sdk.get_native_singleton("via.SceneManager"); if this.scene_manager == nil then - error_handler.report("singletons.init_scene_manager", "Failed to access Data: scene_manager"); + error_handler.report("singletons.update_scene_manager", "Failed to access Data: scene_manager"); end return this.scene_manager; end -function this.init_game_manager() +function this.update_game_manager() this.game_manager = sdk.get_managed_singleton("snow.SnowGameManager"); if this.game_manager == nil then - error_handler.report("singletons.init_game_manager", "Failed to access Data: game_manager"); + error_handler.report("singletons.update_game_manager", "Failed to access Data: game_manager"); end return this.game_manager; end -function this.init_servant_manager() +function this.update_servant_manager() this.servant_manager = sdk.get_managed_singleton("snow.ai.ServantManager"); if this.servant_manager == nil then - error_handler.report("singletons.init_servant_manager", "Failed to access Data: servant_manager"); + error_handler.report("singletons.update_servant_manager", "Failed to access Data: servant_manager"); end return this.servant_manager; end -function this.init_otomo_manager() +function this.update_otomo_manager() this.otomo_manager = sdk.get_managed_singleton("snow.otomo.OtomoManager"); if this.otomo_manager == nil then - error_handler.report("singletons.init_otomo_manager", "Failed to access Data: otomo_manager"); + error_handler.report("singletons.update_otomo_manager", "Failed to access Data: otomo_manager"); end return this.otomo_manager; end -function this.init_long_sword_shell_manager() +function this.update_long_sword_shell_manager() this.long_sword_shell_manager = sdk.get_managed_singleton("snow.shell.LongSwordShellManager"); if this.long_sword_shell_manager == nil then - error_handler.report("singletons.init_long_sword_shell_manager", "Failed to access Data: long_sword_shell_manager"); + error_handler.report("singletons.update_long_sword_shell_manager", "Failed to access Data: long_sword_shell_manager"); end return this.long_sword_shell_manager; end -function this.init_light_bowgun_shell_manager() +function this.update_light_bowgun_shell_manager() this.light_bowgun_shell_manager = sdk.get_managed_singleton("snow.shell.LightBowgunShellManager"); if this.light_bowgun_shell_manager == nil then - error_handler.report("singletons.init_light_bowgun_shell_manager", "Failed to access Data: light_bowgun_shell_manager"); + error_handler.report("singletons.update_light_bowgun_shell_manager", "Failed to access Data: light_bowgun_shell_manager"); end return this.light_bowgun_shell_manager; end -function this.init_horn_shell_manager() +function this.update_horn_shell_manager() this.horn_shell_manager = sdk.get_managed_singleton("snow.shell.HornShellManager"); if this.horn_shell_manager == nil then - error_handler.report("singletons.init_horn_shell_manager", "Failed to access Data: horn_shell_manager"); + error_handler.report("singletons.update_horn_shell_manager", "Failed to access Data: horn_shell_manager"); end return this.horn_shell_manager; @@ -221,7 +221,7 @@ function this.init_dependencies() end function this.init_module() - this.init(); + this.update(); end return this; diff --git a/reframework/autorun/MHR_Overlay/Game_Handler/time.lua b/reframework/autorun/MHR_Overlay/Game_Handler/time.lua index 454fad7..0576022 100644 --- a/reframework/autorun/MHR_Overlay/Game_Handler/time.lua +++ b/reframework/autorun/MHR_Overlay/Game_Handler/time.lua @@ -99,14 +99,20 @@ function this.remove_delay_timer(delay_timer) end function this.init_global_timers() - this.new_timer(singletons.init, 1); - this.new_timer(screen.update_window_size, 1); - this.new_timer(quest_status.update_is_online, 1); - this.new_timer(this.update_quest_time, 1 / 60); - this.new_timer(players.update_players, 0.5); - this.new_timer(players.update_myself_position, 1); - this.new_timer(buffs.update, 0.5); - this.new_timer(player_info.update, 0.5); + local cached_config = config.current_config.global_settings.performance.timer_delays; + + this.timer_list = {}; + + this.new_timer(singletons.update, cached_config.update_singletons_delay); + this.new_timer(screen.update_window_size, cached_config.update_window_size_delay); + this.new_timer(quest_status.update_is_online, cached_config.update_is_online_delay); + this.new_timer(this.update_quest_time, cached_config.update_quest_time_delay); + this.new_timer(players.update_players, cached_config.update_players_delay); + this.new_timer(players.update_myself_position, cached_config.update_myself_position_delay); + this.new_timer(buffs.update, cached_config.update_buffs_delay); + this.new_timer(player_info.update, cached_config.update_player_info_delay); + + xy = utils.table.tostring(this.timer_list); end function this.update_timers() diff --git a/reframework/autorun/MHR_Overlay/Misc/config.lua b/reframework/autorun/MHR_Overlay/Misc/config.lua index 6872a2b..85befcb 100644 --- a/reframework/autorun/MHR_Overlay/Misc/config.lua +++ b/reframework/autorun/MHR_Overlay/Misc/config.lua @@ -76,7 +76,17 @@ function this.init_default() performance = { max_monster_updates_per_tick = 2, - prioritize_large_monsters = false + prioritize_large_monsters = false, + timer_delays = { + update_singletons_delay = 1, + update_window_size_delay = 1, + update_quest_time_delay = 1 / 60, + update_is_online_delay = 1, + update_players_delay = 0.5, + update_myself_position_delay = 1, + update_player_info_delay = 0.5, + update_buffs_delay = 0.5, + } }, renderer = { diff --git a/reframework/autorun/MHR_Overlay/Misc/language.lua b/reframework/autorun/MHR_Overlay/Misc/language.lua index 4cd8ea2..b5ce590 100644 --- a/reframework/autorun/MHR_Overlay/Misc/language.lua +++ b/reframework/autorun/MHR_Overlay/Misc/language.lua @@ -768,6 +768,16 @@ this.default_language = { weapon_skills = "Weapon Skills", otomo_moves = "Buddy Moves", misc_buffs = "Misc Buffs", + + timer_delays = "Timer Delays", + update_singletons_delay = "Update Singletons (seconds)", + update_window_size_delay = "Update Window Size (seconds)", + update_quest_time_delay = "Update Quest Time (seconds)", + update_is_online_delay = "Update Is Online (seconds)", + update_players_delay = "Update Players (seconds)", + update_myself_position_delay = "Update Myself Position (seconds)", + update_player_info_delay = "Update Player Info (seconds)", + update_buffs_delay = "Update Buffs (seconds)", }, }; diff --git a/reframework/autorun/MHR_Overlay/UI/customization_menu.lua b/reframework/autorun/MHR_Overlay/UI/customization_menu.lua index 04b2117..dbb057d 100644 --- a/reframework/autorun/MHR_Overlay/UI/customization_menu.lua +++ b/reframework/autorun/MHR_Overlay/UI/customization_menu.lua @@ -371,6 +371,7 @@ function this.draw() local modifiers_changed = false; local modules_changed = false; local global_settings_changed = false; + local timer_delays_changed = false; local small_monster_UI_changed = false; local large_monster_dynamic_UI_changed = false; local large_monster_static_UI_changed = false; @@ -405,7 +406,7 @@ function this.draw() config_changed, apply_font_requested = this.draw_config(); modules_changed = this.draw_modules(); this.draw_hotkeys(); - global_settings_changed, modifiers_changed, apply_font_requested, language_changed = this.draw_global_settings(apply_font_requested, config_changed); + global_settings_changed, modifiers_changed, timer_delays_changed, apply_font_requested, language_changed = this.draw_global_settings(apply_font_requested, config_changed); small_monster_UI_changed = this.draw_small_monster_UI(); if imgui.tree_node(language.current_language.customization_menu.large_monster_UI) then @@ -491,6 +492,10 @@ function this.draw() stats_UI.init_UI(); end + if timer_delays_changed then + time.init_global_timers(); + end + if this.menu_font_changed and (apply_font_requested or config_changed) then this.menu_font_changed = false; this.reload_font(); @@ -868,6 +873,7 @@ function this.draw_global_settings(apply_font_requested, language_changed) local changed = false; local config_changed = false; local modifiers_changed = false; + local timer_delays_changed = false; local index = 1; @@ -1007,6 +1013,67 @@ function this.draw_global_settings(apply_font_requested, language_changed) config_changed = config_changed or changed; + if imgui.tree_node(language.current_language.customization_menu.timer_delays) then + + changed, cached_config.performance.timer_delays.update_singletons_delay = imgui.drag_float( + language.current_language.customization_menu.update_singletons_delay, + cached_config.performance.timer_delays.update_singletons_delay, 0.001, 0.001, screen.width, "%.3f"); + + config_changed = config_changed or changed; + timer_delays_changed = timer_delays_changed or changed; + + changed, cached_config.performance.timer_delays.update_window_size_delay = imgui.drag_float( + language.current_language.customization_menu.update_window_size_delay, + cached_config.performance.timer_delays.update_window_size_delay, 0.001, 0.001, screen.width, "%.3f"); + + config_changed = config_changed or changed; + timer_delays_changed = timer_delays_changed or changed; + + changed, cached_config.performance.timer_delays.update_quest_time_delay = imgui.drag_float( + language.current_language.customization_menu.update_quest_time_delay, + cached_config.performance.timer_delays.update_quest_time_delay, 0.001, 0.001, screen.width, "%.3f"); + + config_changed = config_changed or changed; + timer_delays_changed = timer_delays_changed or changed; + + changed, cached_config.performance.timer_delays.update_is_online_delay = imgui.drag_float( + language.current_language.customization_menu.update_is_online_delay, + cached_config.performance.timer_delays.update_is_online_delay, 0.001, 0.001, screen.width, "%.3f"); + + config_changed = config_changed or changed; + timer_delays_changed = timer_delays_changed or changed; + + changed, cached_config.performance.timer_delays.update_players_delay = imgui.drag_float( + language.current_language.customization_menu.update_players_delay, + cached_config.performance.timer_delays.update_players_delay, 0.001, 0.001, screen.width, "%.3f"); + + config_changed = config_changed or changed; + timer_delays_changed = timer_delays_changed or changed; + + changed, cached_config.performance.timer_delays.update_myself_position_delay = imgui.drag_float( + language.current_language.customization_menu.update_myself_position_delay, + cached_config.performance.timer_delays.update_myself_position_delay, 0.001, 0.001, screen.width, "%.3f"); + + config_changed = config_changed or changed; + timer_delays_changed = timer_delays_changed or changed; + + changed, cached_config.performance.timer_delays.update_player_info_delay = imgui.drag_float( + language.current_language.customization_menu.update_player_info_delay, + cached_config.performance.timer_delays.update_player_info_delay, 0.001, 0.001, screen.width, "%.3f"); + + config_changed = config_changed or changed; + timer_delays_changed = timer_delays_changed or changed; + + changed, cached_config.performance.timer_delays.update_buffs_delay = imgui.drag_float( + language.current_language.customization_menu.update_buffs_delay, + cached_config.performance.timer_delays.update_buffs_delay, 0.001, 0.001, screen.width, "%.3f"); + + config_changed = config_changed or changed; + timer_delays_changed = timer_delays_changed or changed; + + imgui.tree_pop(); + end + imgui.tree_pop(); end @@ -1146,7 +1213,7 @@ function this.draw_global_settings(apply_font_requested, language_changed) imgui.tree_pop(); end - return config_changed, modifiers_changed, apply_font_requested, language_changed; + return config_changed, modifiers_changed, timer_delays_changed, apply_font_requested, language_changed; end function this.draw_small_monster_UI() diff --git a/reframework/data/MHR Overlay/languages/en-us.json b/reframework/data/MHR Overlay/languages/en-us.json index 2eb32e0..d6bb2a4 100644 --- a/reframework/data/MHR Overlay/languages/en-us.json +++ b/reframework/data/MHR Overlay/languages/en-us.json @@ -337,6 +337,7 @@ "time_label": "Time Label", "time_limit": "Time Limit (seconds)", "timer": "Timer", + "timer_delays": "Timer Delays", "timer_label": "Timer Label", "top_buildup": "Top Buildup", "top_damage": "Top Damage", @@ -359,6 +360,14 @@ "tracked_damage_types": "Tracked Damage Types", "tracked_monster_types": "Tracked Monster Types", "type": "Type", + "update_buffs_delay": "Update Buffs (seconds)", + "update_is_online_delay": "Update Is Online (seconds)", + "update_myself_position_delay": "Update Myself Position (seconds)", + "update_player_info_delay": "Update Player Info (seconds)", + "update_players_delay": "Update Players (seconds)", + "update_quest_time_delay": "Update Quest Time (seconds)", + "update_singletons_delay": "Update Singletons (seconds)", + "update_window_size_delay": "Update Window Size (seconds)", "use_d2d_if_available": "Use Direct2D if available", "value": "Value", "value_label": "Value Label", @@ -377,7 +386,7 @@ "dango_skills": { "dango_insurance_defense_up": "Dango Insurance Defense Up" }, - "font_name": "NotoSansCJKsc-VF", + "font_name": "", "misc_buffs": { "attack_up": "Attack Up", "defense_up": "Defense Up", @@ -477,28 +486,6 @@ "water_resistance": "Water Res" }, "unicode_glyph_ranges": [ - 32, - 255, - 256, - 383, - 1024, - 1327, - 4352, - 4607, - 8192, - 8303, - 12288, - 12543, - 12592, - 12687, - 12784, - 12799, - 19968, - 40879, - 44032, - 55215, - 65280, - 65519, 0 ], "weapon_skills": { diff --git a/reframework/data/MHR Overlay/languages/ja-jp.json b/reframework/data/MHR Overlay/languages/ja-jp.json index ebf1bf6..4aa36b1 100644 --- a/reframework/data/MHR Overlay/languages/ja-jp.json +++ b/reframework/data/MHR Overlay/languages/ja-jp.json @@ -225,6 +225,7 @@ "in_lobby": "In Lobby", "in_training_area": "In Training Area", "include": "含める情報", + "init_singletons_delay": "Init Singletons Delay (seconds)", "inside": "Inside", "installations": "Installations", "italic": "イタリック", @@ -351,7 +352,11 @@ "time_label": "タイムラベル", "time_limit": "タイムリミット(s.)", "timer": "Timer", + "timer_delays": "Timer Delays", "timer_label": "タイマーラベル", + "timer_update_delays": "Timer Update Delays (seconds)", + "timers": "Timers", + "timers_info": "Update Delay in Seconds", "top_buildup": "最高蓄積値", "top_damage": "最高ダメージ", "top_dps": "最高DPS", @@ -373,6 +378,14 @@ "tracked_damage_types": "ダメージタイプでの追跡", "tracked_monster_types": "モンスタータイプでの追跡", "type": "タイプ", + "update_buffs_delay": "Update Buffs Delay (seconds)", + "update_is_online_delay": "Update Is Online Delay (seconds)", + "update_myself_position_delay": "Update Myself Position Delay (seconds)", + "update_player_info_delay": "Update Player Info Delay (seconds)", + "update_players_delay": "Update Players Delay (seconds)", + "update_quest_time_delay": "Update Quest Time Delay (seconds)", + "update_singletons_delay": "Update Singletons", + "update_window_size_delay": "Update Window Size Delay (seconds)", "use_d2d_if_available": "Use Direct2D if available", "value": "Value", "value_label": "バリューラベル", diff --git a/reframework/data/MHR Overlay/languages/ko-kr.json b/reframework/data/MHR Overlay/languages/ko-kr.json index 7ee4e8b..9dbdeef 100644 --- a/reframework/data/MHR Overlay/languages/ko-kr.json +++ b/reframework/data/MHR Overlay/languages/ko-kr.json @@ -226,6 +226,7 @@ "in_lobby": "로비 내", "in_training_area": "훈련구역 내", "include": "포함", + "init_singletons_delay": "Init Singletons Delay (seconds)", "inside": "내부", "installations": "설치", "italic": "기울임", @@ -352,7 +353,11 @@ "time_label": "시간 정보", "time_limit": "시간 제한 (단위: 초)", "timer": "타이머", + "timer_delays": "Timer Delays", "timer_label": "타이머 정보", + "timer_update_delays": "Timer Update Delays (seconds)", + "timers": "Timers", + "timers_info": "Update Delay in Seconds", "top_buildup": "총 누적치", "top_damage": "최고 대미지", "top_dps": "최고 DPS", @@ -374,6 +379,14 @@ "tracked_damage_types": "추적할 대미지 종류", "tracked_monster_types": "추적할 몬스터 타입", "type": "종류", + "update_buffs_delay": "Update Buffs Delay (seconds)", + "update_is_online_delay": "Update Is Online Delay (seconds)", + "update_myself_position_delay": "Update Myself Position Delay (seconds)", + "update_player_info_delay": "Update Player Info Delay (seconds)", + "update_players_delay": "Update Players Delay (seconds)", + "update_quest_time_delay": "Update Quest Time Delay (seconds)", + "update_singletons_delay": "Update Singletons", + "update_window_size_delay": "Update Window Size Delay (seconds)", "use_d2d_if_available": "가능한 Direct2D를 사용함", "value": "Value", "value_label": "값 정보", diff --git a/reframework/data/MHR Overlay/languages/ru-ru.json b/reframework/data/MHR Overlay/languages/ru-ru.json index 9bfb6f2..4df619a 100644 --- a/reframework/data/MHR Overlay/languages/ru-ru.json +++ b/reframework/data/MHR Overlay/languages/ru-ru.json @@ -226,6 +226,7 @@ "in_lobby": "В лобби", "in_training_area": "В тренировочной зоне", "include": "Элементы", + "init_singletons_delay": "Init Singletons Delay (seconds)", "inside": "Внутри", "installations": "Установки", "italic": "Курсив", @@ -352,7 +353,11 @@ "time_label": "Метка времени", "time_limit": "Ограничение по времени (cек.)", "timer": "Таймер", + "timer_delays": "Timer Delays", "timer_label": "Метка таймера", + "timer_update_delays": "Timer Update Delays (seconds)", + "timers": "Timers", + "timers_info": "Update Delay in Seconds", "top_buildup": "Наибольшее накопление", "top_damage": "Наибольший урон", "top_dps": "Наибольший урон в секунду", @@ -374,6 +379,14 @@ "tracked_damage_types": "Отслеживаемые типы урона", "tracked_monster_types": "Отслеживаемые типы монстров", "type": "Тип", + "update_buffs_delay": "Update Buffs Delay (seconds)", + "update_is_online_delay": "Update Is Online Delay (seconds)", + "update_myself_position_delay": "Update Myself Position Delay (seconds)", + "update_player_info_delay": "Update Player Info Delay (seconds)", + "update_players_delay": "Update Players Delay (seconds)", + "update_quest_time_delay": "Update Quest Time Delay (seconds)", + "update_singletons_delay": "Update Singletons", + "update_window_size_delay": "Update Window Size Delay (seconds)", "use_d2d_if_available": "Использовать Direct2D, если доступен", "value": "Value", "value_label": "Метка значений", diff --git a/reframework/data/MHR Overlay/languages/zh-cn.json b/reframework/data/MHR Overlay/languages/zh-cn.json index f754ff6..b74dfc3 100644 --- a/reframework/data/MHR Overlay/languages/zh-cn.json +++ b/reframework/data/MHR Overlay/languages/zh-cn.json @@ -226,6 +226,7 @@ "in_lobby": "在大厅", "in_training_area": "在修炼场", "include": "包含", + "init_singletons_delay": "Init Singletons Delay (seconds)", "inside": "里面", "installations": "狩猎设备", "italic": "斜体", @@ -352,7 +353,11 @@ "time_label": "时间标签", "time_limit": "时间限制(秒)", "timer": "计时器", + "timer_delays": "Timer Delays", "timer_label": "计时器标签", + "timer_update_delays": "Timer Update Delays (seconds)", + "timers": "Timers", + "timers_info": "Update Delay in Seconds", "top_buildup": "最高积累值", "top_damage": "最高伤害", "top_dps": "最高DPS", @@ -374,6 +379,14 @@ "tracked_damage_types": "跟踪的伤害类型", "tracked_monster_types": "跟踪的怪物类型", "type": "类型", + "update_buffs_delay": "Update Buffs Delay (seconds)", + "update_is_online_delay": "Update Is Online Delay (seconds)", + "update_myself_position_delay": "Update Myself Position Delay (seconds)", + "update_player_info_delay": "Update Player Info Delay (seconds)", + "update_players_delay": "Update Players Delay (seconds)", + "update_quest_time_delay": "Update Quest Time Delay (seconds)", + "update_singletons_delay": "Update Singletons", + "update_window_size_delay": "Update Window Size Delay (seconds)", "use_d2d_if_available": "可用时使用Direct2D", "value": "Value", "value_label": "数字", diff --git a/reframework/data/MHR Overlay/languages/zh-tw.json b/reframework/data/MHR Overlay/languages/zh-tw.json index d3b0517..0d988b4 100644 --- a/reframework/data/MHR Overlay/languages/zh-tw.json +++ b/reframework/data/MHR Overlay/languages/zh-tw.json @@ -226,6 +226,7 @@ "in_lobby": "In Lobby", "in_training_area": "In Training Area", "include": "細部資訊調整", + "init_singletons_delay": "Init Singletons Delay (seconds)", "inside": "內部", "installations": "Installations", "italic": "斜體", @@ -352,7 +353,11 @@ "time_label": "時間", "time_limit": "時限 (秒)", "timer": "Timer", + "timer_delays": "Timer Delays", "timer_label": "計時器", + "timer_update_delays": "Timer Update Delays (seconds)", + "timers": "Timers", + "timers_info": "Update Delay in Seconds", "top_buildup": "最高累積值", "top_damage": "最高傷害", "top_dps": "最高 DPS", @@ -374,6 +379,14 @@ "tracked_damage_types": "追蹤的傷害類型", "tracked_monster_types": "追蹤的魔物類型", "type": "類型", + "update_buffs_delay": "Update Buffs Delay (seconds)", + "update_is_online_delay": "Update Is Online Delay (seconds)", + "update_myself_position_delay": "Update Myself Position Delay (seconds)", + "update_player_info_delay": "Update Player Info Delay (seconds)", + "update_players_delay": "Update Players Delay (seconds)", + "update_quest_time_delay": "Update Quest Time Delay (seconds)", + "update_singletons_delay": "Update Singletons", + "update_window_size_delay": "Update Window Size Delay (seconds)", "use_d2d_if_available": "Use Direct2D if available", "value": "Value", "value_label": "數字",