mirror of
https://github.com/GreenComfyTea/MHR-Overlay.git
synced 2026-01-25 04:48:22 -08:00
Add separate myself dps updating.
This commit is contained in:
@@ -44,7 +44,7 @@ function time.tick()
|
|||||||
time.total_elapsed_seconds = quest_time_total_elapsed_seconds;
|
time.total_elapsed_seconds = quest_time_total_elapsed_seconds;
|
||||||
time.elapsed_seconds = quest_time_total_elapsed_seconds - quest_time_elapsed_minutes * 60;
|
time.elapsed_seconds = quest_time_total_elapsed_seconds - quest_time_elapsed_minutes * 60;
|
||||||
|
|
||||||
if time.total_elapsed_script_seconds - time.last_elapsed_script_seconds > config.current_config.global_settings.performance.update_rate then
|
if time.total_elapsed_script_seconds - time.last_elapsed_script_seconds > 60 / config.current_config.global_settings.performance.update_rate then
|
||||||
time.last_elapsed_script_seconds = time.total_elapsed_script_seconds;
|
time.last_elapsed_script_seconds = time.total_elapsed_script_seconds;
|
||||||
time.update_players_dps();
|
time.update_players_dps();
|
||||||
time.update_small_monsters();
|
time.update_small_monsters();
|
||||||
@@ -54,15 +54,21 @@ end
|
|||||||
function time.update_players_dps()
|
function time.update_players_dps()
|
||||||
local cached_config = config.current_config.damage_meter_UI.settings;
|
local cached_config = config.current_config.damage_meter_UI.settings;
|
||||||
|
|
||||||
|
local myself_updated = false;
|
||||||
|
|
||||||
local new_total_dps = 0;
|
local new_total_dps = 0;
|
||||||
for _, _player in pairs(player.list) do
|
for _, _player in pairs(player.list) do
|
||||||
|
if _player == player.myself then
|
||||||
|
myself_updated = true;
|
||||||
|
end
|
||||||
|
|
||||||
if _player.join_time == -1 then
|
if _player.join_time == -1 then
|
||||||
_player.join_time = time.total_elapsed_script_seconds;
|
_player.join_time = time.total_elapsed_script_seconds;
|
||||||
end
|
end
|
||||||
|
|
||||||
if cached_config.dps_mode == "Quest Time" then
|
if cached_config.dps_mode == "Quest Time" then
|
||||||
if time.total_elapsed_script_seconds > 0 then
|
if time.total_elapsed_seconds > 0 then
|
||||||
_player.dps = _player.display.total_damage / time.total_elapsed_script_seconds;
|
player.myself.dps = player.myself.display.total_damage / time.total_elapsed_seconds;
|
||||||
end
|
end
|
||||||
elseif cached_config.dps_mode == "Join Time" then
|
elseif cached_config.dps_mode == "Join Time" then
|
||||||
if time.total_elapsed_script_seconds - _player.join_time > 0 then
|
if time.total_elapsed_script_seconds - _player.join_time > 0 then
|
||||||
@@ -72,11 +78,32 @@ function time.update_players_dps()
|
|||||||
if time.total_elapsed_script_seconds - _player.first_hit_time > 0 then
|
if time.total_elapsed_script_seconds - _player.first_hit_time > 0 then
|
||||||
_player.dps = _player.display.total_damage / (time.total_elapsed_script_seconds - _player.first_hit_time);
|
_player.dps = _player.display.total_damage / (time.total_elapsed_script_seconds - _player.first_hit_time);
|
||||||
end
|
end
|
||||||
else
|
|
||||||
end
|
end
|
||||||
|
|
||||||
new_total_dps = new_total_dps + _player.dps;
|
new_total_dps = new_total_dps + _player.dps;
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if not myself_updated then
|
||||||
|
if player.myself.join_time == -1 then
|
||||||
|
player.myself.join_time = time.total_elapsed_script_seconds;
|
||||||
|
end
|
||||||
|
|
||||||
|
if cached_config.dps_mode == "Quest Time" then
|
||||||
|
if time.total_elapsed_seconds > 0 then
|
||||||
|
player.myself.dps = player.myself.display.total_damage / time.total_elapsed_seconds;
|
||||||
|
end
|
||||||
|
elseif cached_config.dps_mode == "Join Time" then
|
||||||
|
if time.total_elapsed_script_seconds - player.myself.join_time > 0 then
|
||||||
|
player.myself.dps = player.myself.display.total_damage / (time.total_elapsed_script_seconds - player.myself.join_time);
|
||||||
|
end
|
||||||
|
elseif cached_config.dps_mode == "First Hit" then
|
||||||
|
if time.total_elapsed_script_seconds - player.myself.first_hit_time > 0 then
|
||||||
|
player.myself.dps = player.myself.display.total_damage / (time.total_elapsed_script_seconds - player.myself.first_hit_time);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
new_total_dps = new_total_dps + player.myself.dps;
|
||||||
|
end
|
||||||
|
|
||||||
player.total.dps = new_total_dps;
|
player.total.dps = new_total_dps;
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user