mirror of
https://github.com/GreenComfyTea/MHR-Overlay.git
synced 2026-01-30 07:18:03 -08:00
Compare commits
28 Commits
v2.5
...
63ddbff12a
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
63ddbff12a | ||
|
|
0359042c97 | ||
|
|
c8dab31265 | ||
|
|
405c5e4aad | ||
|
|
597d27b935 | ||
|
|
90190f5af7 | ||
|
|
b5757e3b1e | ||
|
|
0992b918a3 | ||
|
|
7865b3276c | ||
|
|
cc1fe03272 | ||
|
|
57585cb5b5 | ||
|
|
96563f92f7 | ||
|
|
ea29e20a2c | ||
|
|
0a84471abc | ||
|
|
da2af8671a | ||
|
|
474d0b9eb8 | ||
|
|
e4057b84f5 | ||
|
|
3ac048aef9 | ||
|
|
9c3085198d | ||
|
|
ecf119dd97 | ||
|
|
663b456a4f | ||
|
|
e571ca62eb | ||
|
|
3b99512bb6 | ||
|
|
0fe53700ae | ||
|
|
488da17887 | ||
|
|
25d0035c16 | ||
|
|
34ac9e3c54 | ||
|
|
ce212ff757 |
135
README.md
135
README.md
@@ -1,10 +1,130 @@
|
|||||||
# "MHR Overlay" Mod for Monster Hunter: Rise
|
<p align="center">
|
||||||
|
<h2 align="center"><b>"MHR Overlay" Mod for Monster Hunter: Rise</b></h2>
|
||||||
|
<p align="center">Mod that exposes in-game data about monsters, creatures, players and damage. Draws a highly customizable UI.</p>
|
||||||
|
<p align="center">This mod is solely intended to empower players with means of self-improvement. Please don't use the information provided by this tool to make hurtful comments and actions toward other players.</p>
|
||||||
|
</p>
|
||||||
|
|
||||||
Exposes in-game data about monsters, creatures, players and damage. Draws a highly customizable UI.
|
<p align="center">
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/graphs/contributors">
|
||||||
|
<img alt="Contributors" src="https://custom-icon-badges.demolab.com/github/contributors/greencomfytea/mhr-overlay?logo=person-add" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/issues">
|
||||||
|
<img alt="Issues" src="https://custom-icon-badges.demolab.com/github/issues/greencomfytea/mhr-overlay?logo=issue-opened" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/issues">
|
||||||
|
<img alt="Issues Closed" src="https://custom-icon-badges.demolab.com/github/issues-closed/greencomfytea/mhr-overlay?logo=issue-closed" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/pulls">
|
||||||
|
<img alt="Pull Requests" src="https://custom-icon-badges.demolab.com/github/issues-pr/greencomfytea/mhr-overlay?logo=git-pull-request" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/pulls">
|
||||||
|
<img alt="Pull Requests Closed" src="https://custom-icon-badges.demolab.com/github/issues-pr-closed/greencomfytea/mhr-overlay?logo=git-pull-request-closed" />
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/blob/main/LICENSE">
|
||||||
|
<img alt="License" src="https://custom-icon-badges.demolab.com/github/license/greencomfytea/mhr-overlay?logo=law" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/releases">
|
||||||
|
<img alt="Release Version" src="https://custom-icon-badges.demolab.com/github/v/release/greencomfytea/mhr-overlay?logo=tag" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/releases">
|
||||||
|
<img alt="Release Date" src="https://custom-icon-badges.demolab.com/github/release-date/greencomfytea/mhr-overlay?logo=clock" />
|
||||||
|
</a>
|
||||||
|
<a href="">
|
||||||
|
<img alt="Platform" src="https://custom-icon-badges.demolab.com/badge/platform-win%20%7C%20linux%20%7C%20steam%20deck-blue?logo=device-desktop" />
|
||||||
|
</a>
|
||||||
|
<a href="">
|
||||||
|
<img alt="Maintenance" src="https://custom-icon-badges.demolab.com/maintenance/yes/2023?logo=tools" />
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<a href="https://www.nexusmods.com/monsterhunterrise/mods/26">
|
||||||
|
<img alt="REFramework Dependency" src="https://custom-icon-badges.demolab.com/badge/dependency-REFramework%20v1.503%2B-green?logo=package-dependencies" />
|
||||||
|
</a>
|
||||||
|
<a href="https://www.nexusmods.com/monsterhunterrise/mods/134">
|
||||||
|
<img alt="REFramework Direct2D Dependency" src="https://custom-icon-badges.demolab.com/badge/dependency-REFramework%20Direct2D%20v0.4.0%2B-yellow?logo=package-dependencies" />
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/commits/main">
|
||||||
|
<img alt="Commits" src="https://custom-icon-badges.demolab.com/github/commit-activity/t/greencomfytea/mhr-overlay?logo=git-commit" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/commits/main">
|
||||||
|
<img alt="Last Commit" src="https://custom-icon-badges.demolab.com/github/last-commit/greencomfytea/mhr-overlay?logo=git-commit" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/commits/main">
|
||||||
|
<img alt="Commits Since" src="https://custom-icon-badges.demolab.com/github/commits-since/greencomfytea/mhr-overlay/latest?logo=git-commit" />
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/graphs/commit-activity">
|
||||||
|
<img alt="Commit Activity (Year)" src="https://custom-icon-badges.demolab.com/github/commit-activity/y/greencomfytea/mhr-overlay?logo=pulse" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/graphs/commit-activity">
|
||||||
|
<img alt="Commit Activity (Month)" src="https://custom-icon-badges.demolab.com/github/commit-activity/m/greencomfytea/mhr-overlay?logo=pulse" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/graphs/commit-activity">
|
||||||
|
<img alt="Commit Activity (Week)" src="https://custom-icon-badges.demolab.com/github/commit-activity/w/greencomfytea/mhr-overlay?logo=pulse" />
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
<a href="">
|
||||||
|
<img alt="Repo Size" src="https://custom-icon-badges.demolab.com/github/repo-size/greencomfytea/mhr-overlay?logo=database" />
|
||||||
|
</a>
|
||||||
|
<a href="">
|
||||||
|
<img alt="Line Count" src="https://sloc.xyz/github/greencomfytea/mhr-overlay" />
|
||||||
|
</a>
|
||||||
|
<a href="">
|
||||||
|
<img alt="COCOMO" src="https://sloc.xyz/github/greencomfytea/mhr-overlay/?category=cocomo" />
|
||||||
|
</a>
|
||||||
|
<a href="">
|
||||||
|
<img alt="Goto Counter" src="https://custom-icon-badges.demolab.com/github/search/greencomfytea/mhr-overlay/goto?logo=git-compare" />
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<a href="https://github.com/sponsors/greencomfytea">
|
||||||
|
<img alt="Sponsors" src="https://custom-icon-badges.demolab.com/github/sponsors/greencomfytea?logo=heart" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/GreenComfyTea/mhr-overlay/watchers">
|
||||||
|
<img alt="Watchers" src="https://custom-icon-badges.demolab.com/github/watchers/greencomfytea/mhr-overlay?logo=eye" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/forks">
|
||||||
|
<img alt="Forks" src="https://custom-icon-badges.demolab.com/github/forks/greencomfytea/mhr-overlay?logo=repo-forked" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/stargazers">
|
||||||
|
<img alt="Stars" src="https://custom-icon-badges.demolab.com/github/stars/greencomfytea/mhr-overlay?logo=star" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea/mhr-overlay/graphs/traffic">
|
||||||
|
<img alt="Hits" src="https://custom-icon-badges.demolab.com/endpoint?url=https://hits.dwyl.com/greencomfytea/mhr-overlay.json?color=blue&logo=eye" />
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
<a href="https://www.nexusmods.com/monsterhunterrise/mods/50">
|
||||||
|
<img alt="Website" src="https://custom-icon-badges.demolab.com/website?down_color=red&down_message=down&up_color=brightgreen&up_message=up&logo=link&url=https://www.nexusmods.com/monsterhunterrise/mods/50" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/greencomfytea?tab=followers">
|
||||||
|
<img alt="Followers" src="https://custom-icon-badges.demolab.com/github/followers/greencomfytea?logo=people" />
|
||||||
|
</a>
|
||||||
|
<a href="https://twitter.com/greencomfytea">
|
||||||
|
<img alt="Twitter" src="https://img.shields.io/twitter/follow/greencomfytea?logo=twitter" />
|
||||||
|
</a>
|
||||||
|
<a href="https://www.twitch.tv/greencomfytea">
|
||||||
|
<img alt="Twitch" src="https://img.shields.io/twitch/status/greencomfytea?logo=twitch" />
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<a href="https://github.com/greencomfytea">
|
||||||
|
<img alt="Author" src="https://custom-icon-badges.demolab.com/badge/author-GreenComfyTea-green?logo=person" />
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/topics/open-source">
|
||||||
|
<img alt="Open Source" src="https://img.shields.io/badge/open%20source-%20yes-brightgreen?logo=openvpn" />
|
||||||
|
</a>
|
||||||
|
<a href="https://cursey.github.io/reframework-book/index.html#lua-scripting">
|
||||||
|
<img alt="Written in" src="https://custom-icon-badges.demolab.com/badge/written in-lua-000080?logo=terminal" />
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
**This mod is solely intended to empower players with means of self-improvement. Please don't use the information provided by this tool to make hurtful comments and actions toward other players.**
|
<p align="center">
|
||||||
|
<a>
|
||||||

|
<img align="center" src="https://user-images.githubusercontent.com/30152047/183250401-9f2898dd-feb4-4903-802c-c9d398261f11.png" />
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
# Links
|
# Links
|
||||||
* **[Nexus Mods](https://www.nexusmods.com/monsterhunterrise/mods/50)**
|
* **[Nexus Mods](https://www.nexusmods.com/monsterhunterrise/mods/50)**
|
||||||
@@ -15,8 +135,8 @@ Exposes in-game data about monsters, creatures, players and damage. Draws a high
|
|||||||
* **[Troubleshooting](https://github.com/GreenComfyTea/MHR-Overlay/wiki/Troubleshooting)**
|
* **[Troubleshooting](https://github.com/GreenComfyTea/MHR-Overlay/wiki/Troubleshooting)**
|
||||||
|
|
||||||
# Requirements
|
# Requirements
|
||||||
1. [REFramework](https://www.nexusmods.com/monsterhunterrise/mods/26) (v1.503 or above);
|
1. [REFramework](https://www.nexusmods.com/monsterhunterrise/mods/26) (v1.503+);
|
||||||
2. [REFramework Direct2D](https://www.nexusmods.com/monsterhunterrise/mods/134) (v0.4.0 or above).
|
2. [REFramework Direct2D](https://www.nexusmods.com/monsterhunterrise/mods/134) (v0.4.0+) - Needed for Unicode Support.
|
||||||
|
|
||||||
# How to install:
|
# How to install:
|
||||||
1. Install [REFramework](https://www.nexusmods.com/monsterhunterrise/mods/26);
|
1. Install [REFramework](https://www.nexusmods.com/monsterhunterrise/mods/26);
|
||||||
@@ -53,4 +173,3 @@ You can support me by donating! I would appreciate it! But anyway, thank you for
|
|||||||
<a href="https://ko-fi.com/greencomfytea">
|
<a href="https://ko-fi.com/greencomfytea">
|
||||||
<img alt="Qries" src="https://panels.twitch.tv/panel-48897356-image-c2fcf835-87e4-408e-81e8-790789c7acbc">
|
<img alt="Qries" src="https://panels.twitch.tv/panel-48897356-image-c2fcf835-87e4-408e-81e8-790789c7acbc">
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,8 @@ local language = require("MHR_Overlay.Misc.language");
|
|||||||
local part_names = require("MHR_Overlay.Misc.part_names");
|
local part_names = require("MHR_Overlay.Misc.part_names");
|
||||||
local utils = require("MHR_Overlay.Misc.utils");
|
local utils = require("MHR_Overlay.Misc.utils");
|
||||||
|
|
||||||
--local buffs = require("MHR_Overlay.Buffs.buffs");
|
local buffs = require("MHR_Overlay.Buffs.buffs");
|
||||||
|
local consumables = require("MHR_Overlay.Buffs.consumables");
|
||||||
|
|
||||||
local players = require("MHR_Overlay.Damage_Meter.players");
|
local players = require("MHR_Overlay.Damage_Meter.players");
|
||||||
local non_players = require("MHR_Overlay.Damage_Meter.non_players");
|
local non_players = require("MHR_Overlay.Damage_Meter.non_players");
|
||||||
@@ -63,7 +64,7 @@ local large_monster_UI = require("MHR_Overlay.UI.Modules.large_monster_UI");
|
|||||||
local small_monster_UI = require("MHR_Overlay.UI.Modules.small_monster_UI");
|
local small_monster_UI = require("MHR_Overlay.UI.Modules.small_monster_UI");
|
||||||
local time_UI = require("MHR_Overlay.UI.Modules.time_UI");
|
local time_UI = require("MHR_Overlay.UI.Modules.time_UI");
|
||||||
local env_creature_UI = require("MHR_Overlay.UI.Modules.env_creature_UI");
|
local env_creature_UI = require("MHR_Overlay.UI.Modules.env_creature_UI");
|
||||||
--local buff_UI = require("MHR_Overlay.UI.Modules.buff_UI");
|
local buff_UI = require("MHR_Overlay.UI.Modules.buff_UI");
|
||||||
|
|
||||||
local body_part_UI_entity = require("MHR_Overlay.UI.UI_Entities.body_part_UI_entity");
|
local body_part_UI_entity = require("MHR_Overlay.UI.UI_Entities.body_part_UI_entity");
|
||||||
local damage_UI_entity = require("MHR_Overlay.UI.UI_Entities.damage_UI_entity");
|
local damage_UI_entity = require("MHR_Overlay.UI.UI_Entities.damage_UI_entity");
|
||||||
@@ -72,7 +73,7 @@ local stamina_UI_entity = require("MHR_Overlay.UI.UI_Entities.stamina_UI_entity"
|
|||||||
local rage_UI_entity = require("MHR_Overlay.UI.UI_Entities.rage_UI_entity");
|
local rage_UI_entity = require("MHR_Overlay.UI.UI_Entities.rage_UI_entity");
|
||||||
local ailment_UI_entity = require("MHR_Overlay.UI.UI_Entities.ailment_UI_entity");
|
local ailment_UI_entity = require("MHR_Overlay.UI.UI_Entities.ailment_UI_entity");
|
||||||
local ailment_buildup_UI_entity = require("MHR_Overlay.UI.UI_Entities.ailment_buildup_UI_entity");
|
local ailment_buildup_UI_entity = require("MHR_Overlay.UI.UI_Entities.ailment_buildup_UI_entity");
|
||||||
--local buff_UI_entity = require("MHR_Overlay.UI.UI_Entities.buff_UI_entity");
|
local buff_UI_entity = require("MHR_Overlay.UI.UI_Entities.buff_UI_entity");
|
||||||
|
|
||||||
local customization_menu = require("MHR_Overlay.UI.customization_menu");
|
local customization_menu = require("MHR_Overlay.UI.customization_menu");
|
||||||
local label_customization = require("MHR_Overlay.UI.Customizations.label_customization");
|
local label_customization = require("MHR_Overlay.UI.Customizations.label_customization");
|
||||||
@@ -108,9 +109,10 @@ rage_UI_entity.init_module();
|
|||||||
ailment_UI_entity.init_module();
|
ailment_UI_entity.init_module();
|
||||||
ailment_buildup_UI_entity.init_module();
|
ailment_buildup_UI_entity.init_module();
|
||||||
body_part_UI_entity.init_module();
|
body_part_UI_entity.init_module();
|
||||||
--buff_UI_entity.init_module();
|
buff_UI_entity.init_module();
|
||||||
|
|
||||||
--buffs.init_module();
|
buffs.init_module();
|
||||||
|
consumables.init_module();
|
||||||
|
|
||||||
damage_hook.init_module();
|
damage_hook.init_module();
|
||||||
players.init_module();
|
players.init_module();
|
||||||
@@ -151,7 +153,7 @@ large_monster_UI.init_module();
|
|||||||
small_monster_UI.init_module();
|
small_monster_UI.init_module();
|
||||||
time_UI.init_module();
|
time_UI.init_module();
|
||||||
env_creature_UI.init_module();
|
env_creature_UI.init_module();
|
||||||
--buff_UI.init_module();
|
buff_UI.init_module();
|
||||||
|
|
||||||
keyboard.init_module();
|
keyboard.init_module();
|
||||||
|
|
||||||
@@ -207,12 +209,12 @@ local function draw_modules(module_visibility_config, flow_state_name)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--[[if config.current_config.buff_UI.enabled and module_visibility_config.buff_UI then
|
if config.current_config.buff_UI.enabled and module_visibility_config.buff_UI then
|
||||||
local success = truepcall(buff_UI.draw);
|
local success = pcall(buff_UI.draw);
|
||||||
if not success then
|
if not success then
|
||||||
customization_menu.status = string.format("[%s] Buff UI Drawing Function threw an Exception", flow_state_name);
|
customization_menu.status = string.format("[%s] Buff UI Drawing Function threw an Exception", flow_state_name);
|
||||||
end
|
end
|
||||||
end]]
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local function main_loop()
|
local function main_loop()
|
||||||
@@ -223,6 +225,9 @@ local function main_loop()
|
|||||||
quest_status.update_is_online();
|
quest_status.update_is_online();
|
||||||
--quest_status.update_is_quest_host();
|
--quest_status.update_is_quest_host();
|
||||||
time.tick();
|
time.tick();
|
||||||
|
consumables.update();
|
||||||
|
|
||||||
|
--buffs.debug();
|
||||||
|
|
||||||
if quest_status.flow_state == quest_status.flow_states.IN_TRAINING_AREA then
|
if quest_status.flow_state == quest_status.flow_states.IN_TRAINING_AREA then
|
||||||
|
|
||||||
@@ -254,12 +259,12 @@ local function main_loop()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--[[if config.current_config.buff_UI.enabled and module_visibility_config.buff_UI then
|
if config.current_config.buff_UI.enabled and module_visibility_config.buff_UI then
|
||||||
local success = pcall(buff_UI.draw);
|
local success = pcall(buff_UI.draw);
|
||||||
if not success then
|
if not success then
|
||||||
customization_menu.status = "[In Training Area] Buff UI Drawing Function threw an Exception";
|
customization_menu.status = "[In Training Area] Buff UI Drawing Function threw an Exception";
|
||||||
end
|
end
|
||||||
end]]
|
end
|
||||||
|
|
||||||
|
|
||||||
elseif quest_status.flow_state == quest_status.flow_states.CUTSCENE then
|
elseif quest_status.flow_state == quest_status.flow_states.CUTSCENE then
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ local this = {};
|
|||||||
|
|
||||||
local buff_UI_entity;
|
local buff_UI_entity;
|
||||||
local config;
|
local config;
|
||||||
|
local singletons;
|
||||||
|
|
||||||
local sdk = sdk;
|
local sdk = sdk;
|
||||||
local tostring = tostring;
|
local tostring = tostring;
|
||||||
@@ -37,12 +38,23 @@ local package = package;
|
|||||||
|
|
||||||
this.list = {};
|
this.list = {};
|
||||||
|
|
||||||
function this.new(name)
|
function this.new(name, value, duration)
|
||||||
|
local is_infinite = false;
|
||||||
|
|
||||||
|
value = value or 0;
|
||||||
|
|
||||||
|
if duration == nil then
|
||||||
|
duration = 0;
|
||||||
|
is_infinite = true;
|
||||||
|
end
|
||||||
|
|
||||||
local buff = {};
|
local buff = {};
|
||||||
|
|
||||||
buff.name = name;
|
buff.name = name;
|
||||||
buff.timer = 0;
|
buff.value = value;
|
||||||
buff.duration = 0;
|
|
||||||
|
buff.timer = duration;
|
||||||
|
buff.duration = duration;
|
||||||
|
|
||||||
buff.is_active = true;
|
buff.is_active = true;
|
||||||
|
|
||||||
@@ -51,7 +63,9 @@ function this.new(name)
|
|||||||
buff.minutes_left = 0;
|
buff.minutes_left = 0;
|
||||||
buff.seconds_left = 0;
|
buff.seconds_left = 0;
|
||||||
|
|
||||||
buff.is_infinite = false;
|
buff.is_infinite = is_infinite;
|
||||||
|
|
||||||
|
this.update_timer(buff, buff.timer);
|
||||||
|
|
||||||
this.init_UI(buff);
|
this.init_UI(buff);
|
||||||
|
|
||||||
@@ -71,12 +85,28 @@ function this.draw(buff, buff_UI, position_on_screen, opacity_scale)
|
|||||||
buff_UI_entity.draw(buff, buff_UI, position_on_screen, opacity_scale);
|
buff_UI_entity.draw(buff, buff_UI, position_on_screen, opacity_scale);
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function this.update_timer(buff, timer)
|
||||||
|
if timer < 0 then
|
||||||
|
timer = 0;
|
||||||
|
end
|
||||||
|
|
||||||
|
local minutes_left = math.floor(timer / 60);
|
||||||
|
|
||||||
|
buff.timer = timer;
|
||||||
|
buff.minutes_left = minutes_left;
|
||||||
|
buff.seconds_left = math.floor(timer - 60 * minutes_left);
|
||||||
|
|
||||||
|
if buff.duration ~= 0 then
|
||||||
|
buff.timer_percentage = timer / buff.duration;
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function this.init_module()
|
function this.init_module()
|
||||||
config = require("MHR_Overlay.Misc.config");
|
config = require("MHR_Overlay.Misc.config");
|
||||||
buff_UI_entity = require("MHR_Overlay.UI.UI_Entities.buff_UI_entity");
|
buff_UI_entity = require("MHR_Overlay.UI.UI_Entities.buff_UI_entity");
|
||||||
|
singletons = require("MHR_Overlay.Game_Handler.singletons");
|
||||||
|
|
||||||
|
--[[local buff = this.new("Enviroment Damage Negated");
|
||||||
local buff = this.new("Enviroment Damage Negated");
|
|
||||||
buff.duration = 90;
|
buff.duration = 90;
|
||||||
buff.timer = 65;
|
buff.timer = 65;
|
||||||
buff.timer_percentage = 0.66;
|
buff.timer_percentage = 0.66;
|
||||||
@@ -102,7 +132,214 @@ function this.init_module()
|
|||||||
buff.seconds_left = 10
|
buff.seconds_left = 10
|
||||||
buff.is_infinite = true;
|
buff.is_infinite = true;
|
||||||
|
|
||||||
this.list["Sharpness Loss Reduced 2"] = buff;
|
this.list["Sharpness Loss Reduced 2"] = buff;]]
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.debug()
|
||||||
|
--Buffs location:
|
||||||
|
--snow.player.PlayerManager -> <PlayerData> k_BackingField -> [0]
|
||||||
|
|
||||||
|
-- snow.player.PlayerManager ->
|
||||||
|
-- <PlayerData>k_BackingField -> [0]
|
||||||
|
|
||||||
|
-- Attack Up
|
||||||
|
-- Defense Up
|
||||||
|
-- Affinity Up _AtkUpEcSecond and _AtkUpEcSecondTimer
|
||||||
|
-- Sharpness Loss Reduced
|
||||||
|
-- Elemental Attack Boost
|
||||||
|
-- Divine Protection
|
||||||
|
-- Health Regeneration
|
||||||
|
-- Natural Healing Up
|
||||||
|
-- Blight Negated
|
||||||
|
-- Immunity
|
||||||
|
-- Stamina Recovery Up
|
||||||
|
-- Stamina Use Reduced
|
||||||
|
-- Knockbacks Negated _DefUpEcSecond and _DefUpEcSecondTimer
|
||||||
|
-- Sonic Barrier
|
||||||
|
-- Earplugs (S)
|
||||||
|
-- Earplugs (L)
|
||||||
|
-- Tremor Negated
|
||||||
|
-- Enviroment Damage Negated
|
||||||
|
-- Stun Negated
|
||||||
|
-- Wind Pressure Negated
|
||||||
|
-- Gourmet Fish Effect
|
||||||
|
-- Self Improvement
|
||||||
|
-- Infernal Melody
|
||||||
|
|
||||||
|
local player_data_array = singletons.player_manager:get_field("<PlayerData>k__BackingField");
|
||||||
|
local player_data = player_data_array:get_element(0);
|
||||||
|
|
||||||
|
local _AtkUpAlive = player_data:get_field("_AtkUpAlive");
|
||||||
|
local _DefUpAlive = player_data:get_field("_DefUpAlive");
|
||||||
|
|
||||||
|
xy = "AtkUpAlive: " .. tostring(_AtkUpAlive);
|
||||||
|
xy = xy .. "\n_DefUpAlive: " .. tostring(_DefUpAlive);
|
||||||
|
|
||||||
|
local _AtkUpBuffSecond = player_data:get_field("_AtkUpBuffSecond");
|
||||||
|
local _DefUpBuffSecond = player_data:get_field("_DefUpBuffSecond");
|
||||||
|
local _DefUpBuffSecondRate = player_data:get_field("_DefUpBuffSecondRate");
|
||||||
|
|
||||||
|
xy = xy .. "\n_AtkUpBuffSecond: " .. tostring(_AtkUpBuffSecond);
|
||||||
|
xy = xy .. "\n_DefUpBuffSecond: " .. tostring(_DefUpBuffSecond);
|
||||||
|
xy = xy .. "\n_DefUpBuffSecondRate: " .. tostring(_DefUpBuffSecondRate);
|
||||||
|
|
||||||
|
local _AtkUpBuffSecondTimer = player_data:get_field("_AtkUpBuffSecondTimer");
|
||||||
|
local _DefUpBuffSecondTimer = player_data:get_field("_DefUpBuffSecondTimer");
|
||||||
|
local _DefUpBuffSecondRateTimer = player_data:get_field("_DefUpBuffSecondRateTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_AtkUpBuffSecondTimer: " .. tostring(_AtkUpBuffSecondTimer);
|
||||||
|
xy = xy .. "\n_DefUpBuffSecondTimer: " .. tostring(_DefUpBuffSecondTimer);
|
||||||
|
xy = xy .. "\n_DefUpBuffSecondRateTimer: " .. tostring(_DefUpBuffSecondRateTimer);
|
||||||
|
|
||||||
|
local _StaminaUpBuffSecondTimer = player_data:get_field("_StaminaUpBuffSecondTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_StaminaUpBuffSecondTimer: " .. tostring(_StaminaUpBuffSecondTimer);
|
||||||
|
|
||||||
|
local _AtkUpItemSecond = player_data:get_field("_AtkUpItemSecond");
|
||||||
|
local _DefUpItemSecond = player_data:get_field("_DefUpItemSecond");
|
||||||
|
|
||||||
|
xy = xy .. "\n_AtkUpItemSecond: " .. tostring(_AtkUpItemSecond);
|
||||||
|
xy = xy .. "\n_DefUpItemSecond: " .. tostring(_DefUpItemSecond);
|
||||||
|
|
||||||
|
local _AtkUpItemSecondTimer = player_data:get_field("_AtkUpItemSecondTimer");
|
||||||
|
local _DefUpItemSecondTimer = player_data:get_field("_DefUpItemSecondTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_AtkUpItemSecondTimer: " .. tostring(_AtkUpItemSecondTimer);
|
||||||
|
xy = xy .. "\n_DefUpItemSecondTimer: " .. tostring(_DefUpItemSecondTimer);
|
||||||
|
|
||||||
|
local _SuperArmorItemTimer = player_data:get_field("_SuperArmorItemTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_SuperArmorItemTimer: " .. tostring(_SuperArmorItemTimer);
|
||||||
|
|
||||||
|
local _AtkUpEcSecondTimer = player_data:get_field("_AtkUpEcSecondTimer");
|
||||||
|
local _AtkUpEcSecond = player_data:get_field("_AtkUpEcSecond");
|
||||||
|
|
||||||
|
xy = xy .. "\n_AtkUpEcSecondTimer: " .. tostring(_AtkUpEcSecondTimer);
|
||||||
|
xy = xy .. "\n_AtkUpEcSecond: " .. tostring(_AtkUpEcSecond);
|
||||||
|
|
||||||
|
local _DefUpEcSecondTimer = player_data:get_field("_DefUpEcSecondTimer");
|
||||||
|
local _DefUpEcSecond = player_data:get_field("_DefUpEcSecond");
|
||||||
|
|
||||||
|
xy = xy .. "\n_DefUpEcSecondTimer: " .. tostring(_DefUpEcSecondTimer);
|
||||||
|
xy = xy .. "\n_DefUpEcSecond: " .. tostring(_DefUpEcSecond);
|
||||||
|
|
||||||
|
local _CritUpEcSecondTimer = player_data:get_field("_CritUpEcSecondTimer");
|
||||||
|
local _CritChanceUpBowTimer = player_data:get_field("_CritChanceUpBowTimer");
|
||||||
|
local _CritChanceUpBow = player_data:get_field("_CritChanceUpBow");
|
||||||
|
|
||||||
|
xy = xy .. "\n_CritUpEcSecondTimer: " .. tostring(_CritUpEcSecondTimer);
|
||||||
|
xy = xy .. "\n_CritChanceUpBowTimer: " .. tostring(_CritChanceUpBowTimer);
|
||||||
|
xy = xy .. "\n_CritChanceUpBow: " .. tostring(_CritChanceUpBow);
|
||||||
|
|
||||||
|
local _MusicRegeneTimer = player_data:get_field("_MusicRegeneTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_MusicRegeneTimer: " .. tostring(_MusicRegeneTimer);
|
||||||
|
|
||||||
|
local _LeadEnemyTimer = player_data:get_field("_LeadEnemyTimer");
|
||||||
|
local _IsLeadEnemy = player_data:get_field("_IsLeadEnemy");
|
||||||
|
|
||||||
|
xy = xy .. "\n_LeadEnemyTimer: " .. tostring(_LeadEnemyTimer);
|
||||||
|
xy = xy .. "\n_IsLeadEnemy: " .. tostring(_IsLeadEnemy);
|
||||||
|
|
||||||
|
local _DebuffPreventionTimer = player_data:get_field("_DebuffPreventionTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_DebuffPreventionTimer: " .. tostring(_DebuffPreventionTimer);
|
||||||
|
|
||||||
|
local _FishRegeneTimer = player_data:get_field("_FishRegeneTimer");
|
||||||
|
local _FishRegeneEnableTimer = player_data:get_field("_FishRegeneEnableTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_FishRegeneTimer: " .. tostring(_FishRegeneTimer);
|
||||||
|
xy = xy .. "\n_FishRegeneEnableTimer: " .. tostring(_FishRegeneEnableTimer);
|
||||||
|
|
||||||
|
local _VitalizerTimer = player_data:get_field("_VitalizerTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_VitalizerTimer: " .. tostring(_VitalizerTimer);
|
||||||
|
|
||||||
|
local _RunhighOtomoTimer = player_data:get_field("_RunhighOtomoTimer");
|
||||||
|
local _KijinBulletTimer = player_data:get_field("_KijinBulletTimer");
|
||||||
|
local _KoukaBulletTimer = player_data:get_field("_KoukaBulletTimer");
|
||||||
|
local _EquipSkill_036_Timer = player_data:get_field("_EquipSkill_036_Timer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_RunhighOtomoTimer: " .. tostring(_RunhighOtomoTimer);
|
||||||
|
xy = xy .. "\n_KijinBulletTimer: " .. tostring(_KijinBulletTimer);
|
||||||
|
xy = xy .. "\n_KoukaBulletTimer: " .. tostring(_KoukaBulletTimer);
|
||||||
|
xy = xy .. "\n_EquipSkill_036_Timer: " .. tostring(_EquipSkill_036_Timer);
|
||||||
|
|
||||||
|
local _HyperArmorItemTimer = player_data:get_field("_HyperArmorItemTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_HyperArmorItemTimer: " .. tostring(_HyperArmorItemTimer);
|
||||||
|
|
||||||
|
local _KijinOtomoTimer = player_data:get_field("_KijinOtomoTimer");
|
||||||
|
local _BeastRoarOtomoTimer = player_data:get_field("_BeastRoarOtomoTimer");
|
||||||
|
local _ChallengeTimer = player_data:get_field("_ChallengeTimer");
|
||||||
|
local _WholeBodyTimer = player_data:get_field("_WholeBodyTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_KijinOtomoTimer: " .. tostring(_KijinOtomoTimer);
|
||||||
|
xy = xy .. "\n_BeastRoarOtomoTimer: " .. tostring(_BeastRoarOtomoTimer);
|
||||||
|
xy = xy .. "\n_ChallengeTimer: " .. tostring(_ChallengeTimer);
|
||||||
|
xy = xy .. "\n_WholeBodyTimer: " .. tostring(_WholeBodyTimer);
|
||||||
|
|
||||||
|
local _SlidingTimer = player_data:get_field("_SlidingTimer");
|
||||||
|
local _SlidingPowerupTimer = player_data:get_field("_SlidingPowerupTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_SlidingTimer: " .. tostring(_SlidingTimer);
|
||||||
|
xy = xy .. "\n_SlidingPowerupTimer: " .. tostring(_SlidingPowerupTimer);
|
||||||
|
|
||||||
|
local _WallRunTimer = player_data:get_field("_WallRunTimer");
|
||||||
|
local _WallRunPowerupTimer = player_data:get_field("_WallRunPowerupTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_WallRunTimer: " .. tostring(_WallRunTimer);
|
||||||
|
xy = xy .. "\n_WallRunPowerupTimer: " .. tostring(_WallRunPowerupTimer);
|
||||||
|
|
||||||
|
local _CounterattackPowerupTimer = player_data:get_field("_CounterattackPowerupTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_CounterattackPowerupTimer: " .. tostring(_CounterattackPowerupTimer);
|
||||||
|
|
||||||
|
-- sic!
|
||||||
|
local _OnibiPowerUpTiemr = player_data:get_field("_OnibiPowerUpTiemr");
|
||||||
|
local _OnibiPowerUpInterval = player_data:get_field("_OnibiPowerUpInterval");
|
||||||
|
|
||||||
|
xy = xy .. "\n_OnibiPowerUpTiemr: " .. tostring(_OnibiPowerUpTiemr);
|
||||||
|
xy = xy .. "\n_OnibiPowerUpInterval: " .. tostring(_OnibiPowerUpInterval);
|
||||||
|
|
||||||
|
local _HyakuryuDragonPowerUpTimer = player_data:get_field("_HyakuryuDragonPowerUpTimer");
|
||||||
|
local _HyakuryuDragonPowerUpCnt = player_data:get_field("_HyakuryuDragonPowerUpCnt");
|
||||||
|
local _HyakuryuHyakuryuOnazutiPowerUpInterval = player_data:get_field("_HyakuryuHyakuryuOnazutiPowerUpInterval");
|
||||||
|
|
||||||
|
xy = xy .. "\n_HyakuryuDragonPowerUpTimer: " .. tostring(_HyakuryuDragonPowerUpTimer);
|
||||||
|
xy = xy .. "\n_HyakuryuDragonPowerUpCnt: " .. tostring(_HyakuryuDragonPowerUpCnt);
|
||||||
|
xy = xy .. "\n_HyakuryuHyakuryuOnazutiPowerUpInterval: " .. tostring(_HyakuryuHyakuryuOnazutiPowerUpInterval);
|
||||||
|
|
||||||
|
local _KitchenSkill027Timer = player_data:get_field("_KitchenSkill027Timer");
|
||||||
|
local _KitchenSkill045Timer = player_data:get_field("_KitchenSkill045Timer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_KitchenSkill027Timer: " .. tostring(_KitchenSkill027Timer);
|
||||||
|
xy = xy .. "\n_KitchenSkill045Timer: " .. tostring(_KitchenSkill045Timer);
|
||||||
|
|
||||||
|
-- sic!
|
||||||
|
local _ReduseUseStaminaKichenSkillActive = player_data:get_field("_ReduseUseStaminaKichenSkillActive");
|
||||||
|
|
||||||
|
xy = xy .. "\n_ReduseUseStaminaKichenSkillActive: " .. tostring(_ReduseUseStaminaKichenSkillActive);
|
||||||
|
|
||||||
|
local _HeavyBowgunWyvernSnipeTimer = player_data:get_field("_HeavyBowgunWyvernSnipeTimer");
|
||||||
|
local _HeavyBowgunWyvernMachineGunTimer = player_data:get_field("_HeavyBowgunWyvernMachineGunTimer");
|
||||||
|
local _HeavyBowgunWyvernSnipeBullet = player_data:get_field("_HeavyBowgunWyvernSnipeBullet");
|
||||||
|
local _HeavyBowgunWyvernMachineGunBullet = player_data:get_field("_HeavyBowgunWyvernMachineGunBullet");
|
||||||
|
|
||||||
|
xy = xy .. "\n_HeavyBowgunWyvernSnipeTimer: " .. tostring(_HeavyBowgunWyvernSnipeTimer);
|
||||||
|
xy = xy .. "\n_HeavyBowgunWyvernMachineGunTimer: " .. tostring(_HeavyBowgunWyvernMachineGunTimer);
|
||||||
|
xy = xy .. "\n_HeavyBowgunWyvernSnipeBullet: " .. tostring(_HeavyBowgunWyvernSnipeBullet);
|
||||||
|
xy = xy .. "\n_HeavyBowgunWyvernMachineGunBullet: " .. tostring(_HeavyBowgunWyvernMachineGunBullet);
|
||||||
|
|
||||||
|
local _ChargeDragonSlayCannonTime = player_data:get_field("_ChargeDragonSlayCannonTime");
|
||||||
|
|
||||||
|
xy = xy .. "\n_ChargeDragonSlayCannonTime: " .. tostring(_ChargeDragonSlayCannonTime);
|
||||||
|
|
||||||
|
local _WyvernBlastGauge = player_data:get_field("_WyvernBlastGauge");
|
||||||
|
local _WyvernBlastReloadTimer = player_data:get_field("_WyvernBlastReloadTimer");
|
||||||
|
|
||||||
|
xy = xy .. "\n_WyvernBlastGauge: " .. tostring(_WyvernBlastGauge);
|
||||||
|
xy = xy .. "\n_WyvernBlastReloadTimer: " .. tostring(_WyvernBlastReloadTimer);
|
||||||
end
|
end
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
406
reframework/autorun/MHR_Overlay/Buffs/consumables.lua
Normal file
406
reframework/autorun/MHR_Overlay/Buffs/consumables.lua
Normal file
@@ -0,0 +1,406 @@
|
|||||||
|
local this = {};
|
||||||
|
|
||||||
|
local buffs;
|
||||||
|
local buff_UI_entity;
|
||||||
|
local config;
|
||||||
|
local singletons;
|
||||||
|
local players;
|
||||||
|
local utils;
|
||||||
|
|
||||||
|
local sdk = sdk;
|
||||||
|
local tostring = tostring;
|
||||||
|
local pairs = pairs;
|
||||||
|
local ipairs = ipairs;
|
||||||
|
local tonumber = tonumber;
|
||||||
|
local require = require;
|
||||||
|
local pcall = pcall;
|
||||||
|
local table = table;
|
||||||
|
local string = string;
|
||||||
|
local Vector3f = Vector3f;
|
||||||
|
local d2d = d2d;
|
||||||
|
local math = math;
|
||||||
|
local json = json;
|
||||||
|
local log = log;
|
||||||
|
local fs = fs;
|
||||||
|
local next = next;
|
||||||
|
local type = type;
|
||||||
|
local setmetatable = setmetatable;
|
||||||
|
local getmetatable = getmetatable;
|
||||||
|
local assert = assert;
|
||||||
|
local select = select;
|
||||||
|
local coroutine = coroutine;
|
||||||
|
local utf8 = utf8;
|
||||||
|
local re = re;
|
||||||
|
local imgui = imgui;
|
||||||
|
local draw = draw;
|
||||||
|
local Vector2f = Vector2f;
|
||||||
|
local reframework = reframework;
|
||||||
|
local os = os;
|
||||||
|
local ValueType = ValueType;
|
||||||
|
local package = package;
|
||||||
|
|
||||||
|
|
||||||
|
local ids = {
|
||||||
|
demondrug = 0,
|
||||||
|
mega_demondrug = 1,
|
||||||
|
armorskin = 2,
|
||||||
|
mega_armorskin = 4,
|
||||||
|
might_seed = 8,
|
||||||
|
adamant_seed = 16,
|
||||||
|
demon_powder = 32,
|
||||||
|
hardshell_powder = 64,
|
||||||
|
immunizer = 128,
|
||||||
|
dash_juice = 256
|
||||||
|
};
|
||||||
|
|
||||||
|
this.list = {
|
||||||
|
demondrug = nil,
|
||||||
|
mega_demondrug = nil,
|
||||||
|
armorskin = nil,
|
||||||
|
mega_armorskin = nil,
|
||||||
|
might_seed = nil,
|
||||||
|
adamant_seed = nil,
|
||||||
|
hardshell_powder = nil,
|
||||||
|
immunizer = nil,
|
||||||
|
dash_juice = nil
|
||||||
|
};
|
||||||
|
|
||||||
|
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
|
||||||
|
local get_player_data_method = player_manager_type_def:get_method("get_PlayerData");
|
||||||
|
local get_ref_item_parameter_method = player_manager_type_def:get_method("get_RefItemParameter");
|
||||||
|
|
||||||
|
local player_user_data_item_parameter_type_def = get_ref_item_parameter_method:get_return_type();
|
||||||
|
|
||||||
|
local demondrug_atk_up_field = player_user_data_item_parameter_type_def:get_field("_DemondrugAtkUp");
|
||||||
|
local great_demondrug_atk_up_field = player_user_data_item_parameter_type_def:get_field("_GreatDemondrugAtkUp");
|
||||||
|
local armorskin_def_up_field = player_user_data_item_parameter_type_def:get_field("_ArmorSkinDefUp");
|
||||||
|
local great_armorskin_def_up_field = player_user_data_item_parameter_type_def:get_field("_GreatArmorSkinDefUp");
|
||||||
|
|
||||||
|
local might_seed_timer_field = player_user_data_item_parameter_type_def:get_field("_MightSeedTimer");
|
||||||
|
local adamant_seed_timer_field = player_user_data_item_parameter_type_def:get_field("_AdamantSeedTimer");
|
||||||
|
local demondrug_powder_timer_field = player_user_data_item_parameter_type_def:get_field("_DemondrugPowderTimer");
|
||||||
|
local armorskin_powder_timer_field = player_user_data_item_parameter_type_def:get_field("_ArmorSkinPowderTimer");
|
||||||
|
local vitalizer_timer_const_field = player_user_data_item_parameter_type_def:get_field("_VitalizerTimer");
|
||||||
|
local stamina_up_buff_second_field = player_user_data_item_parameter_type_def:get_field("_StaminaUpBuffSecond");
|
||||||
|
|
||||||
|
local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData");
|
||||||
|
-- Demondrug/Mega Demondrug
|
||||||
|
local atk_up_alive_field = player_data_type_def:get_field("_AtkUpAlive");
|
||||||
|
-- Armorskin/Mega Armorskin
|
||||||
|
local def_up_alive_field = player_data_type_def:get_field("_DefUpAlive");
|
||||||
|
-- Might Seed
|
||||||
|
local atk_up_buff_second_field = player_data_type_def:get_field("_AtkUpBuffSecond");
|
||||||
|
local atk_up_buff_second_timer_field = player_data_type_def:get_field("_AtkUpBuffSecondTimer");
|
||||||
|
-- Adamant Seed
|
||||||
|
local def_up_buff_second_field = player_data_type_def:get_field("_DefUpBuffSecond");
|
||||||
|
local def_up_buff_second_timer_field = player_data_type_def:get_field("_DefUpBuffSecondTimer");
|
||||||
|
-- Demon Powder
|
||||||
|
local atk_up_item_second_field = player_data_type_def:get_field("_AtkUpItemSecond");
|
||||||
|
local atk_up_item_second_timer_field = player_data_type_def:get_field("_AtkUpItemSecondTimer");
|
||||||
|
-- Hardshell Powder
|
||||||
|
local def_up_item_second_field = player_data_type_def:get_field("_DefUpItemSecond");
|
||||||
|
local def_up_item_second_timer_field = player_data_type_def:get_field("_DefUpItemSecondTimer");
|
||||||
|
-- Immunizer
|
||||||
|
local vitalizer_timer_field = player_data_type_def:get_field("_VitalizerTimer");
|
||||||
|
-- Dash Juice
|
||||||
|
local stamina_up_buff_second_timer_field = player_data_type_def:get_field("_StaminaUpBuffSecondTimer");
|
||||||
|
|
||||||
|
local system_array_type_def = sdk.find_type_definition("System.Array");
|
||||||
|
local length_method = system_array_type_def:get_method("get_Length");
|
||||||
|
local get_value_method = system_array_type_def:get_method("GetValue(System.Int32)");
|
||||||
|
|
||||||
|
function this.update()
|
||||||
|
local player_data_array = get_player_data_method:call(singletons.player_manager);
|
||||||
|
if player_data_array == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local player_data = get_value_method:call(player_data_array, players.myself.id);
|
||||||
|
if player_data == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local item_parameter = get_ref_item_parameter_method:call(singletons.player_manager);
|
||||||
|
if item_parameter == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
this.update_demondrug(player_data, item_parameter);
|
||||||
|
this.update_armorskin(player_data, item_parameter);
|
||||||
|
this.update_might_seed(player_data, item_parameter);
|
||||||
|
this.update_adamant_seed(player_data, item_parameter);
|
||||||
|
this.update_demon_powder(player_data, item_parameter);
|
||||||
|
this.update_hardshell_powder(player_data, item_parameter);
|
||||||
|
this.update_immunizer(player_data, item_parameter);
|
||||||
|
this.update_dash_juice(player_data, item_parameter);
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_demondrug(player_data, item_parameter)
|
||||||
|
local demondrug = atk_up_alive_field:get_data(player_data);
|
||||||
|
if demondrug == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if demondrug == 0 then
|
||||||
|
this.list.demondrug = nil;
|
||||||
|
this.list.mega_demondrug = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local demondrug_const_value = demondrug_atk_up_field:get_data(item_parameter);
|
||||||
|
if demondrug_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local mega_demondrug_const_value = great_demondrug_atk_up_field:get_data(item_parameter);
|
||||||
|
if mega_demondrug_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if demondrug == demondrug_const_value then
|
||||||
|
local buff = this.list.demondrug;
|
||||||
|
if buff ~= nil and buff.value == demondrug then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
this.list.demondrug = buffs.new("Demondrug", demondrug);
|
||||||
|
this.list.mega_demondrug = nil;
|
||||||
|
|
||||||
|
elseif demondrug == mega_demondrug_const_value then
|
||||||
|
local buff = this.list.mega_demondrug;
|
||||||
|
if buff ~= nil and buff.value == demondrug then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
this.list.demondrug = nil;
|
||||||
|
this.list.mega_demondrug = buffs.new("Mega Demondrug", demondrug);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_armorskin(player_data, item_parameter)
|
||||||
|
local armorskin = def_up_alive_field:get_data(player_data);
|
||||||
|
if armorskin == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if armorskin == 0 then
|
||||||
|
this.list.armorskin = nil;
|
||||||
|
this.list.mega_armorskin = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local armorskin_const_value = armorskin_def_up_field:get_data(item_parameter);
|
||||||
|
if armorskin_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local mega_armorskin_const_value = great_armorskin_def_up_field:get_data(item_parameter);
|
||||||
|
if mega_armorskin_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if armorskin == armorskin_const_value then
|
||||||
|
local buff = this.list.armorskin;
|
||||||
|
if buff ~= nil and buff.value == armorskin then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
this.list.armorskin = buffs.new("Armorskin", armorskin);
|
||||||
|
this.list.mega_armorskin = nil;
|
||||||
|
|
||||||
|
elseif armorskin == mega_armorskin_const_value then
|
||||||
|
local buff = this.list.mega_armorskin;
|
||||||
|
if buff ~= nil and buff.value == armorskin then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
this.list.armorskin = nil;
|
||||||
|
this.list.mega_armorskin = buffs.new("Mega Armorskin", armorskin);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_might_seed(player_data, item_parameter)
|
||||||
|
local might_seed = atk_up_buff_second_field:get_data(player_data);
|
||||||
|
if might_seed == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if might_seed == 0 then
|
||||||
|
this.list.might_seed = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local might_seed_timer = atk_up_buff_second_timer_field:get_data(player_data);
|
||||||
|
if might_seed_timer == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local buff = this.list.might_seed;
|
||||||
|
if buff == nil then
|
||||||
|
local might_seed_timer_const_value = might_seed_timer_field:get_data(item_parameter);
|
||||||
|
if might_seed_timer_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
buff = buffs.new("Might Seed", might_seed, might_seed_timer_const_value);
|
||||||
|
this.list.might_seed = buff;
|
||||||
|
else
|
||||||
|
buff.value = might_seed;
|
||||||
|
buffs.update_timer(buff, might_seed_timer / 60);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_adamant_seed(player_data, item_parameter)
|
||||||
|
local adamant_seed = def_up_buff_second_field:get_data(player_data);
|
||||||
|
if adamant_seed == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if adamant_seed == 0 then
|
||||||
|
this.list.adamant_seed = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local adamant_seed_timer = def_up_buff_second_timer_field:get_data(player_data);
|
||||||
|
if adamant_seed_timer == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local buff = this.list.adamant_seed;
|
||||||
|
if buff == nil then
|
||||||
|
local adamant_seed_timer_const_value = adamant_seed_timer_field:get_data(item_parameter);
|
||||||
|
if adamant_seed_timer_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
buff = buffs.new("Adamant Seed", adamant_seed, adamant_seed_timer_const_value);
|
||||||
|
this.list.adamant_seed = buff;
|
||||||
|
else
|
||||||
|
buff.value = adamant_seed;
|
||||||
|
buffs.update_timer(buff, adamant_seed_timer / 60);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_demon_powder(player_data, item_parameter)
|
||||||
|
local demon_powder = atk_up_item_second_field:get_data(player_data);
|
||||||
|
if demon_powder == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if demon_powder == 0 then
|
||||||
|
this.list.demon_powder = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local demon_powder_timer = atk_up_item_second_timer_field:get_data(player_data);
|
||||||
|
if demon_powder_timer == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local buff = this.list.demon_powder;
|
||||||
|
if buff == nil then
|
||||||
|
local demon_powder_timer_const_value = demondrug_powder_timer_field:get_data(item_parameter);
|
||||||
|
if demon_powder_timer_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
buff = buffs.new("Demon Powder", demon_powder, demon_powder_timer_const_value);
|
||||||
|
this.list.demon_powder = buff;
|
||||||
|
else
|
||||||
|
buff.value = demon_powder;
|
||||||
|
buffs.update_timer(buff, demon_powder_timer / 60);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_hardshell_powder(player_data, item_parameter)
|
||||||
|
local hardshell_powder = def_up_item_second_field:get_data(player_data);
|
||||||
|
if hardshell_powder == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if hardshell_powder == 0 then
|
||||||
|
this.list.hardshell_powder = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local hardshell_powder_timer = def_up_item_second_timer_field:get_data(player_data);
|
||||||
|
if hardshell_powder_timer == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local buff = this.list.hardshell_powder;
|
||||||
|
if buff == nil then
|
||||||
|
local demon_powder_timer_const_value = armorskin_powder_timer_field:get_data(item_parameter);
|
||||||
|
if demon_powder_timer_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
buff = buffs.new("Hardshell Powder", hardshell_powder, demon_powder_timer_const_value);
|
||||||
|
this.list.hardshell_powder = buff;
|
||||||
|
else
|
||||||
|
buff.value = hardshell_powder;
|
||||||
|
buffs.update_timer(buff, hardshell_powder_timer / 60);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_immunizer(player_data, item_parameter)
|
||||||
|
local immunizer_timer = vitalizer_timer_field:get_data(player_data);
|
||||||
|
if immunizer_timer == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if immunizer_timer == 0 then
|
||||||
|
this.list.immunizer = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local buff = this.list.immunizer;
|
||||||
|
if buff == nil then
|
||||||
|
local immunizer_timer_const_value = vitalizer_timer_const_field:get_data(item_parameter);
|
||||||
|
if immunizer_timer_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
buff = buffs.new("Immunizer", 0, immunizer_timer_const_value);
|
||||||
|
this.list.immunizer = buff;
|
||||||
|
else
|
||||||
|
buffs.update_timer(buff, immunizer_timer / 60);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_dash_juice(player_data, item_parameter)
|
||||||
|
local dash_juice_timer = stamina_up_buff_second_timer_field:get_data(player_data);
|
||||||
|
|
||||||
|
if dash_juice_timer == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if dash_juice_timer == 0 then
|
||||||
|
this.list.dash_juice = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local buff = this.list.dash_juice;
|
||||||
|
if buff == nil then
|
||||||
|
local dash_juice_timer_const_value = stamina_up_buff_second_field:get_data(item_parameter);
|
||||||
|
if dash_juice_timer_const_value == nil then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
buff = buffs.new("Dash Juice", 0, dash_juice_timer_const_value);
|
||||||
|
this.list.dash_juice = buff;
|
||||||
|
else
|
||||||
|
buffs.update_timer(buff, dash_juice_timer / 60);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.init_module()
|
||||||
|
buffs = require("MHR_Overlay.Buffs.buffs");
|
||||||
|
config = require("MHR_Overlay.Misc.config");
|
||||||
|
utils = require("MHR_Overlay.Misc.utils");
|
||||||
|
buff_UI_entity = require("MHR_Overlay.UI.UI_Entities.buff_UI_entity");
|
||||||
|
singletons = require("MHR_Overlay.Game_Handler.singletons");
|
||||||
|
players = require("MHR_Overlay.Damage_Meter.players");
|
||||||
|
end
|
||||||
|
|
||||||
|
return this;
|
||||||
@@ -260,6 +260,7 @@ end
|
|||||||
function this.cart(dead_player_id, flag_cat_skill_insurance)
|
function this.cart(dead_player_id, flag_cat_skill_insurance)
|
||||||
-- flag_cat_skill_insurance = 0
|
-- flag_cat_skill_insurance = 0
|
||||||
-- flag_cat_skill_insurance = 1
|
-- flag_cat_skill_insurance = 1
|
||||||
|
|
||||||
local player = players.list[dead_player_id];
|
local player = players.list[dead_player_id];
|
||||||
if player == nil then
|
if player == nil then
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -353,7 +353,7 @@ function this.update()
|
|||||||
|
|
||||||
|
|
||||||
if new_hotkey_registered then
|
if new_hotkey_registered then
|
||||||
config.save();
|
config.save_current();
|
||||||
else
|
else
|
||||||
this.check_hotkeys(hard_keyboard);
|
this.check_hotkeys(hard_keyboard);
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -90,6 +90,8 @@ function this.tick()
|
|||||||
|
|
||||||
players.update_dps(false);
|
players.update_dps(false);
|
||||||
players.sort_players();
|
players.sort_players();
|
||||||
|
|
||||||
|
quest_status.get_cart_count();
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ function this.init_default()
|
|||||||
large_monster_highlighted_UI = true,
|
large_monster_highlighted_UI = true,
|
||||||
damage_meter_UI = true,
|
damage_meter_UI = true,
|
||||||
endemic_life_UI = true,
|
endemic_life_UI = true,
|
||||||
--buff_UI = true
|
buff_UI = true
|
||||||
},
|
},
|
||||||
|
|
||||||
cutscene = {
|
cutscene = {
|
||||||
@@ -100,7 +100,7 @@ function this.init_default()
|
|||||||
time_UI = false,
|
time_UI = false,
|
||||||
damage_meter_UI = false,
|
damage_meter_UI = false,
|
||||||
endemic_life_UI = false,
|
endemic_life_UI = false,
|
||||||
--buff_UI = false
|
buff_UI = false
|
||||||
},
|
},
|
||||||
|
|
||||||
loading_quest = {
|
loading_quest = {
|
||||||
@@ -111,7 +111,7 @@ function this.init_default()
|
|||||||
time_UI = false,
|
time_UI = false,
|
||||||
damage_meter_UI = false,
|
damage_meter_UI = false,
|
||||||
endemic_life_UI = false,
|
endemic_life_UI = false,
|
||||||
--buff_UI = false
|
buff_UI = false
|
||||||
},
|
},
|
||||||
|
|
||||||
quest_start_animation = {
|
quest_start_animation = {
|
||||||
@@ -122,7 +122,7 @@ function this.init_default()
|
|||||||
time_UI = true,
|
time_UI = true,
|
||||||
damage_meter_UI = true,
|
damage_meter_UI = true,
|
||||||
endemic_life_UI = true,
|
endemic_life_UI = true,
|
||||||
--buff_UI = true
|
buff_UI = true
|
||||||
},
|
},
|
||||||
|
|
||||||
playing_quest = {
|
playing_quest = {
|
||||||
@@ -133,7 +133,7 @@ function this.init_default()
|
|||||||
time_UI = true,
|
time_UI = true,
|
||||||
damage_meter_UI = true,
|
damage_meter_UI = true,
|
||||||
endemic_life_UI = true,
|
endemic_life_UI = true,
|
||||||
--buff_UI = true
|
buff_UI = true
|
||||||
},
|
},
|
||||||
|
|
||||||
killcam = {
|
killcam = {
|
||||||
@@ -144,7 +144,7 @@ function this.init_default()
|
|||||||
time_UI = true,
|
time_UI = true,
|
||||||
damage_meter_UI = true,
|
damage_meter_UI = true,
|
||||||
endemic_life_UI = true,
|
endemic_life_UI = true,
|
||||||
--buff_UI = true
|
buff_UI = true
|
||||||
},
|
},
|
||||||
|
|
||||||
quest_end_timer = {
|
quest_end_timer = {
|
||||||
@@ -155,7 +155,7 @@ function this.init_default()
|
|||||||
time_UI = true,
|
time_UI = true,
|
||||||
damage_meter_UI = true,
|
damage_meter_UI = true,
|
||||||
endemic_life_UI = true,
|
endemic_life_UI = true,
|
||||||
--buff_UI = true
|
buff_UI = true
|
||||||
},
|
},
|
||||||
|
|
||||||
quest_end_animation = {
|
quest_end_animation = {
|
||||||
@@ -166,7 +166,7 @@ function this.init_default()
|
|||||||
time_UI = false,
|
time_UI = false,
|
||||||
damage_meter_UI = false,
|
damage_meter_UI = false,
|
||||||
endemic_life_UI = false,
|
endemic_life_UI = false,
|
||||||
--buff_UI = false
|
buff_UI = false
|
||||||
},
|
},
|
||||||
|
|
||||||
quest_end_screen = {
|
quest_end_screen = {
|
||||||
@@ -177,7 +177,7 @@ function this.init_default()
|
|||||||
time_UI = false,
|
time_UI = false,
|
||||||
damage_meter_UI = false,
|
damage_meter_UI = false,
|
||||||
endemic_life_UI = false,
|
endemic_life_UI = false,
|
||||||
--buff_UI = false
|
buff_UI = false
|
||||||
},
|
},
|
||||||
|
|
||||||
reward_screen = {
|
reward_screen = {
|
||||||
@@ -188,7 +188,7 @@ function this.init_default()
|
|||||||
time_UI = true,
|
time_UI = true,
|
||||||
damage_meter_UI = true,
|
damage_meter_UI = true,
|
||||||
endemic_life_UI = false,
|
endemic_life_UI = false,
|
||||||
--buff_UI = false
|
buff_UI = false
|
||||||
},
|
},
|
||||||
|
|
||||||
summary_screen = {
|
summary_screen = {
|
||||||
@@ -199,7 +199,7 @@ function this.init_default()
|
|||||||
time_UI = true,
|
time_UI = true,
|
||||||
damage_meter_UI = true,
|
damage_meter_UI = true,
|
||||||
endemic_life_UI = false,
|
endemic_life_UI = false,
|
||||||
--buff_UI = false
|
buff_UI = false
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -7452,7 +7452,7 @@ function this.init_default()
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
--[[buff_UI = {
|
buff_UI = {
|
||||||
enabled = true,
|
enabled = true,
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
@@ -7564,7 +7564,7 @@ function this.init_default()
|
|||||||
outline = 0xC0000000
|
outline = 0xC0000000
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}]]
|
}
|
||||||
};
|
};
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -61,6 +61,17 @@ function this.draw(label_name, label)
|
|||||||
imgui.tree_pop();
|
imgui.tree_pop();
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if label.include ~= nil then
|
||||||
|
if imgui.tree_node(cached_language.include) then
|
||||||
|
for include_name, include in pairs(label.include) do
|
||||||
|
changed, label.include[include_name] = imgui.checkbox(cached_language[include_name], label.include[include_name]);
|
||||||
|
label_changed = label_changed or changed;
|
||||||
|
end
|
||||||
|
|
||||||
|
imgui.tree_pop();
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
if imgui.tree_node(cached_language.offset) then
|
if imgui.tree_node(cached_language.offset) then
|
||||||
changed, label.offset.x = imgui.drag_float(cached_language.x, label.offset.x, 0.1, -screen.width, screen.width, "%.1f");
|
changed, label.offset.x = imgui.drag_float(cached_language.x, label.offset.x, 0.1, -screen.width, screen.width, "%.1f");
|
||||||
label_changed = label_changed or changed;
|
label_changed = label_changed or changed;
|
||||||
@@ -79,8 +90,7 @@ function this.draw(label_name, label)
|
|||||||
end
|
end
|
||||||
|
|
||||||
if imgui.tree_node(cached_language.shadow) then
|
if imgui.tree_node(cached_language.shadow) then
|
||||||
changed, label.shadow.visibility = imgui.checkbox(cached_language
|
changed, label.shadow.visibility = imgui.checkbox(cached_language.visible, label.shadow.visibility);
|
||||||
.visible, label.shadow.visibility);
|
|
||||||
label_changed = label_changed or changed;
|
label_changed = label_changed or changed;
|
||||||
|
|
||||||
if imgui.tree_node(cached_language.offset) then
|
if imgui.tree_node(cached_language.offset) then
|
||||||
|
|||||||
@@ -92,11 +92,11 @@ function this.draw(cached_config)
|
|||||||
|
|
||||||
config_changed = config_changed or changed;
|
config_changed = config_changed or changed;
|
||||||
|
|
||||||
--[[changed, cached_config.buff_UI = imgui.checkbox(
|
changed, cached_config.buff_UI = imgui.checkbox(
|
||||||
language.current_language.customization_menu.buff_UI,
|
language.current_language.customization_menu.buff_UI,
|
||||||
cached_config.buff_UI);
|
cached_config.buff_UI);
|
||||||
|
|
||||||
config_changed = config_changed or changed;]]
|
config_changed = config_changed or changed;
|
||||||
|
|
||||||
return config_changed;
|
return config_changed;
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -3,7 +3,9 @@ local this = {};
|
|||||||
local buff_UI_entity;
|
local buff_UI_entity;
|
||||||
local config;
|
local config;
|
||||||
local buffs;
|
local buffs;
|
||||||
|
local consumables;
|
||||||
local screen;
|
local screen;
|
||||||
|
local utils;
|
||||||
|
|
||||||
local sdk = sdk;
|
local sdk = sdk;
|
||||||
local tostring = tostring;
|
local tostring = tostring;
|
||||||
@@ -54,6 +56,17 @@ function this.draw()
|
|||||||
::continue::
|
::continue::
|
||||||
end
|
end
|
||||||
|
|
||||||
|
for _, consumable in pairs(consumables.list) do
|
||||||
|
|
||||||
|
if not consumable.is_active then
|
||||||
|
goto continue2
|
||||||
|
end
|
||||||
|
|
||||||
|
table.insert(displayed_buffs, consumable);
|
||||||
|
|
||||||
|
::continue2::
|
||||||
|
end
|
||||||
|
|
||||||
-- sort
|
-- sort
|
||||||
if cached_config.sorting.type == "Name" then
|
if cached_config.sorting.type == "Name" then
|
||||||
if cached_config.sorting.reversed_order then
|
if cached_config.sorting.reversed_order then
|
||||||
@@ -87,15 +100,13 @@ function this.draw()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
local position_on_screen = screen.calculate_absolute_coordinates(cached_config.position);
|
local position_on_screen = screen.calculate_absolute_coordinates(cached_config.position);
|
||||||
|
|
||||||
-- draw
|
-- draw
|
||||||
for _, buff in ipairs(displayed_buffs) do
|
for _, buff in ipairs(displayed_buffs) do
|
||||||
|
|
||||||
if not buff.is_active then
|
if not buff.is_active then
|
||||||
goto continue2
|
goto continue3
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.draw(buff, buff.buff_UI, position_on_screen, 1);
|
buffs.draw(buff, buff.buff_UI, position_on_screen, 1);
|
||||||
@@ -106,13 +117,14 @@ function this.draw()
|
|||||||
position_on_screen.y = position_on_screen.y + cached_config.spacing.y * global_scale_modifier;
|
position_on_screen.y = position_on_screen.y + cached_config.spacing.y * global_scale_modifier;
|
||||||
end
|
end
|
||||||
|
|
||||||
::continue2::
|
::continue3::
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_module()
|
function this.init_module()
|
||||||
config = require("MHR_Overlay.Misc.config");
|
config = require("MHR_Overlay.Misc.config");
|
||||||
buff_UI_entity = require("MHR_Overlay.UI.UI_Entities.buff_UI_entity");
|
buff_UI_entity = require("MHR_Overlay.UI.UI_Entities.buff_UI_entity");
|
||||||
|
consumables = require("MHR_Overlay.Buffs.consumables");
|
||||||
buffs = require("MHR_Overlay.Buffs.buffs");
|
buffs = require("MHR_Overlay.Buffs.buffs");
|
||||||
--singletons = require("MHR_Overlay.Game_Handler.singletons");
|
--singletons = require("MHR_Overlay.Game_Handler.singletons");
|
||||||
config = require("MHR_Overlay.Misc.config");
|
config = require("MHR_Overlay.Misc.config");
|
||||||
@@ -122,6 +134,7 @@ function this.init_module()
|
|||||||
--quest_status = require("MHR_Overlay.Game_Handler.quest_status");
|
--quest_status = require("MHR_Overlay.Game_Handler.quest_status");
|
||||||
screen = require("MHR_Overlay.Game_Handler.screen");
|
screen = require("MHR_Overlay.Game_Handler.screen");
|
||||||
--drawing = require("MHR_Overlay.UI.drawing");
|
--drawing = require("MHR_Overlay.UI.drawing");
|
||||||
|
utils = require("MHR_Overlay.Misc.utils");
|
||||||
end
|
end
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
@@ -165,6 +165,7 @@ function this.draw(dynamic_enabled, static_enabled, highlighted_enabled)
|
|||||||
customization_menu.status = string.format("[%s] Highlighted Large Monster drawing function threw an exception");
|
customization_menu.status = string.format("[%s] Highlighted Large Monster drawing function threw an exception");
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if static_enabled then
|
if static_enabled then
|
||||||
local success = pcall(this.draw_static, displayed_monsters, highlighted_monster, cached_config);
|
local success = pcall(this.draw_static, displayed_monsters, highlighted_monster, cached_config);
|
||||||
if not success then
|
if not success then
|
||||||
|
|||||||
@@ -375,7 +375,7 @@ function this.draw()
|
|||||||
time_UI_changed = this.draw_time_UI();
|
time_UI_changed = this.draw_time_UI();
|
||||||
damage_meter_UI_changed = this.draw_damage_meter_UI();
|
damage_meter_UI_changed = this.draw_damage_meter_UI();
|
||||||
endemic_life_UI_changed = this.draw_endemic_life_UI()
|
endemic_life_UI_changed = this.draw_endemic_life_UI()
|
||||||
--buff_UI_changed = customization_menu.draw_buff_UI();
|
buff_UI_changed = this.draw_buff_UI();
|
||||||
|
|
||||||
imgui.pop_font();
|
imgui.pop_font();
|
||||||
imgui.end_window();
|
imgui.end_window();
|
||||||
@@ -434,11 +434,11 @@ function this.draw()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--[[if buff_UI_changed or modifiers_changed or config_changed then
|
if buff_UI_changed or modifiers_changed or config_changed then
|
||||||
for _, buff in pairs(buffs.list) do
|
for _, buff in pairs(buffs.list) do
|
||||||
buffs.init_UI(buff);
|
buffs.init_UI(buff);
|
||||||
end
|
end
|
||||||
end]]
|
end
|
||||||
|
|
||||||
if this.menu_font_changed and (apply_font_requested or config_changed) then
|
if this.menu_font_changed and (apply_font_requested or config_changed) then
|
||||||
this.menu_font_changed = false;
|
this.menu_font_changed = false;
|
||||||
@@ -569,9 +569,9 @@ function this.draw_modules()
|
|||||||
language.current_language.customization_menu.endemic_life_UI, config.current_config.endemic_life_UI.enabled);
|
language.current_language.customization_menu.endemic_life_UI, config.current_config.endemic_life_UI.enabled);
|
||||||
config_changed = config_changed or changed;
|
config_changed = config_changed or changed;
|
||||||
|
|
||||||
--[[changed, config.current_config.buff_UI.enabled = imgui.checkbox(
|
changed, config.current_config.buff_UI.enabled = imgui.checkbox(
|
||||||
language.current_language.customization_menu.buff_UI, config.current_config.buff_UI.enabled);
|
language.current_language.customization_menu.buff_UI, config.current_config.buff_UI.enabled);
|
||||||
config_changed = config_changed or changed;]]
|
config_changed = config_changed or changed;
|
||||||
|
|
||||||
imgui.tree_pop();
|
imgui.tree_pop();
|
||||||
end
|
end
|
||||||
@@ -1002,11 +1002,11 @@ function this.draw_global_settings(apply_font_requested, language_changed)
|
|||||||
|
|
||||||
config_changed = config_changed or changed;
|
config_changed = config_changed or changed;
|
||||||
|
|
||||||
--[[changed, cached_config.module_visibility.in_training_area.buff_UI = imgui.checkbox(
|
changed, cached_config.module_visibility.in_training_area.buff_UI = imgui.checkbox(
|
||||||
language.current_language.customization_menu.buff_UI,
|
language.current_language.customization_menu.buff_UI,
|
||||||
cached_config.module_visibility.in_training_area.buff_UI);
|
cached_config.module_visibility.in_training_area.buff_UI);
|
||||||
|
|
||||||
config_changed = config_changed or changed;]]
|
config_changed = config_changed or changed;
|
||||||
|
|
||||||
imgui.tree_pop();
|
imgui.tree_pop();
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
"gold": "금관",
|
"gold": "금관",
|
||||||
"mini": "최소",
|
"mini": "최소",
|
||||||
"otomo": "동반자",
|
"otomo": "동반자",
|
||||||
"part_anomaly_core": "Anomaly Core",
|
"part_anomaly_core": "괴이핵",
|
||||||
"part_break": "파괴",
|
"part_break": "파괴",
|
||||||
"part_sever": "절단",
|
"part_sever": "절단",
|
||||||
"player": "헌터",
|
"player": "헌터",
|
||||||
@@ -49,10 +49,10 @@
|
|||||||
"ailments": "상태이상",
|
"ailments": "상태이상",
|
||||||
"all_UI": "모든 UI",
|
"all_UI": "모든 UI",
|
||||||
"anchor": "기준",
|
"anchor": "기준",
|
||||||
"anomaly_cores": "Anomaly Cores",
|
"anomaly_cores": "괴이핵",
|
||||||
"anomaly_filter": "Anomaly Core",
|
"anomaly_filter": "괴이핵",
|
||||||
"anomaly_health": "Anomaly Core Health",
|
"anomaly_health": "괴이핵 체력",
|
||||||
"anomaly_health_percentage": "Anomaly Core Health Percentage",
|
"anomaly_health_percentage": "괴이핵 체력 비율",
|
||||||
"apply": "적용",
|
"apply": "적용",
|
||||||
"assign_new_key": "새 키를 할당",
|
"assign_new_key": "새 키를 할당",
|
||||||
"auto_highlight": "자동 타겟 설정",
|
"auto_highlight": "자동 타겟 설정",
|
||||||
@@ -61,17 +61,17 @@
|
|||||||
"blast": "폭파",
|
"blast": "폭파",
|
||||||
"body_parts": "부위",
|
"body_parts": "부위",
|
||||||
"bold": "굵게",
|
"bold": "굵게",
|
||||||
"bombs": "Bombs",
|
"bombs": "폭탄",
|
||||||
"bottom_left": "좌하단",
|
"bottom_left": "왼쪽 아래",
|
||||||
"bottom_right": "우하단",
|
"bottom_right": "오른쪽 아래",
|
||||||
"bottom_to_top": "Bottom to Top",
|
"bottom_to_top": "아래에서 위로",
|
||||||
"break_anomaly_filter": "Break + Anomaly Core",
|
"break_anomaly_filter": "파괴 + 괴이핵",
|
||||||
"break_count": "파괴 횟수",
|
"break_count": "파괴 횟수",
|
||||||
"break_filter": "파괴",
|
"break_filter": "파괴",
|
||||||
"break_health": "파괴 수치",
|
"break_health": "파괴 수치",
|
||||||
"break_health_percentage": "파괴 수치 비율",
|
"break_health_percentage": "파괴 수치 비율",
|
||||||
"break_max_count": "최대 파괴 횟수",
|
"break_max_count": "최대 파괴 횟수",
|
||||||
"break_sever_anomaly_filter": "Break + Sever + Anomaly Core",
|
"break_sever_anomaly_filter": "파괴 + 절단 + 괴이핵",
|
||||||
"break_sever_filter": "파괴 + 절단",
|
"break_sever_filter": "파괴 + 절단",
|
||||||
"buff_UI": "버프 UI",
|
"buff_UI": "버프 UI",
|
||||||
"buildup": "누적치",
|
"buildup": "누적치",
|
||||||
@@ -91,8 +91,8 @@
|
|||||||
"creature_name_label": "환경생물 이름 정보",
|
"creature_name_label": "환경생물 이름 정보",
|
||||||
"crown": "금관",
|
"crown": "금관",
|
||||||
"crown_thresholds": "금관 판정값",
|
"crown_thresholds": "금관 판정값",
|
||||||
"current_state": "Current State",
|
"current_state": "현재 상태",
|
||||||
"current_value": "Current Value",
|
"current_value": "현재 값",
|
||||||
"cutscene": "컷신",
|
"cutscene": "컷신",
|
||||||
"damage": "대미지",
|
"damage": "대미지",
|
||||||
"damage_bar": "대미지 막대",
|
"damage_bar": "대미지 막대",
|
||||||
@@ -100,7 +100,7 @@
|
|||||||
"damage_meter_UI": "대미지 미터 UI",
|
"damage_meter_UI": "대미지 미터 UI",
|
||||||
"damage_percentage_label": "대미지 비율 정보",
|
"damage_percentage_label": "대미지 비율 정보",
|
||||||
"damage_value_label": "대미지 값 정보",
|
"damage_value_label": "대미지 값 정보",
|
||||||
"default_state": "Default State",
|
"default_state": "기본 상태",
|
||||||
"delete": "삭제하기",
|
"delete": "삭제하기",
|
||||||
"distance": "간격",
|
"distance": "간격",
|
||||||
"dps": "DPS",
|
"dps": "DPS",
|
||||||
@@ -112,14 +112,14 @@
|
|||||||
"dynamically_positioned": "유동 위치 UI",
|
"dynamically_positioned": "유동 위치 UI",
|
||||||
"enable_for": "표시 대상",
|
"enable_for": "표시 대상",
|
||||||
"enabled": "사용함",
|
"enabled": "사용함",
|
||||||
"endemic_life": "Endemic Life",
|
"endemic_life": "환경생물",
|
||||||
"endemic_life_UI": "환경생물 UI",
|
"endemic_life_UI": "환경생물 UI",
|
||||||
"family": "글꼴",
|
"family": "글꼴",
|
||||||
"farthest": "가장 멀리있는",
|
"farthest": "가장 멀리있는",
|
||||||
"fight_time": "전투 시간",
|
"fight_time": "전투 시간",
|
||||||
"fill_direction": "Fill Direction",
|
"fill_direction": "채우는 방향",
|
||||||
"filter": "필터",
|
"filter": "필터",
|
||||||
"filter_mode": "Filter Mode",
|
"filter_mode": "필터 모드",
|
||||||
"first": "맨 앞",
|
"first": "맨 앞",
|
||||||
"first_hit": "첫 공격",
|
"first_hit": "첫 공격",
|
||||||
"flinch_count": "경직 횟수",
|
"flinch_count": "경직 횟수",
|
||||||
@@ -129,14 +129,14 @@
|
|||||||
"global_scale_modifier": "전역 크기 배율",
|
"global_scale_modifier": "전역 크기 배율",
|
||||||
"global_settings": "전역 설정",
|
"global_settings": "전역 설정",
|
||||||
"health": "체력",
|
"health": "체력",
|
||||||
"health_anomaly_filter": "Health + Anomaly Core",
|
"health_anomaly_filter": "체력 + 괴이핵",
|
||||||
"health_break_anomaly_filter": "Health + Break + Anomaly Core",
|
"health_break_anomaly_filter": "체력 + 파괴 + 괴이핵",
|
||||||
"health_break_filter": "체력 + 파괴",
|
"health_break_filter": "체력 + 파괴",
|
||||||
"health_break_sever_anomaly_filter": "Health + Break + Sever + Anomaly Core",
|
"health_break_sever_anomaly_filter": "체력 + 파괴 + 절단 + 괴이핵",
|
||||||
"health_break_sever_filter": "체력 + 파괴 + 절단",
|
"health_break_sever_filter": "체력 + 파괴 + 절단",
|
||||||
"health_filter": "체력",
|
"health_filter": "체력",
|
||||||
"health_percentage": "체력 비율",
|
"health_percentage": "체력 비율",
|
||||||
"health_sever_anomaly_filter": "Health + Sever + Anomaly Core",
|
"health_sever_anomaly_filter": "체력 + 절단 + 괴이핵",
|
||||||
"health_sever_filter": "체력 + 절단",
|
"health_sever_filter": "체력 + 절단",
|
||||||
"height": "높이",
|
"height": "높이",
|
||||||
"hide_ailments_with_zero_buildup": "누적치가 0이면 상태이상 표시 안 함",
|
"hide_ailments_with_zero_buildup": "누적치가 0이면 상태이상 표시 안 함",
|
||||||
@@ -172,11 +172,11 @@
|
|||||||
"in_training_area": "훈련구역 내",
|
"in_training_area": "훈련구역 내",
|
||||||
"include": "포함",
|
"include": "포함",
|
||||||
"inside": "내부",
|
"inside": "내부",
|
||||||
"installations": "Installations",
|
"installations": "설치",
|
||||||
"italic": "기울임",
|
"italic": "기울임",
|
||||||
"join_time": "참가 시간",
|
"join_time": "참가 시간",
|
||||||
"killcam": "처치 영상",
|
"killcam": "처치 영상",
|
||||||
"kunai": "Kunai",
|
"kunai": "쿠나이",
|
||||||
"language": "언어",
|
"language": "언어",
|
||||||
"large_monster_UI": "대형 몬스터 UI",
|
"large_monster_UI": "대형 몬스터 UI",
|
||||||
"large_monster_dynamic_UI": "대형 몬스터 유동 UI",
|
"large_monster_dynamic_UI": "대형 몬스터 유동 UI",
|
||||||
@@ -184,7 +184,7 @@
|
|||||||
"large_monster_static_UI": "대형 몬스터 고정 UI",
|
"large_monster_static_UI": "대형 몬스터 고정 UI",
|
||||||
"large_monsters": "대형 몬스터",
|
"large_monsters": "대형 몬스터",
|
||||||
"last": "맨 뒤",
|
"last": "맨 뒤",
|
||||||
"left_to_right": "Left to Right",
|
"left_to_right": "왼쪽에서 오른쪽",
|
||||||
"level": "레벨",
|
"level": "레벨",
|
||||||
"level_label": "레벨 정보",
|
"level_label": "레벨 정보",
|
||||||
"loading_quest": "퀘스트 로딩 중",
|
"loading_quest": "퀘스트 로딩 중",
|
||||||
@@ -195,7 +195,7 @@
|
|||||||
"master_rank": "마스터 랭크",
|
"master_rank": "마스터 랭크",
|
||||||
"max_distance": "최대 거리",
|
"max_distance": "최대 거리",
|
||||||
"max_monster_updates_per_tick": "틱당 최대 몬스터 갱신 횟수",
|
"max_monster_updates_per_tick": "틱당 최대 몬스터 갱신 횟수",
|
||||||
"max_value": "Max Value",
|
"max_value": "최대값",
|
||||||
"me": "나",
|
"me": "나",
|
||||||
"menu_font": "메뉴 글꼴",
|
"menu_font": "메뉴 글꼴",
|
||||||
"menu_font_change_disclaimer": "언어 및 메뉴 글꼴 크기를 여러 번 변경하면 비정상 종료가 될 수 있습니다!",
|
"menu_font_change_disclaimer": "언어 및 메뉴 글꼴 크기를 여러 번 변경하면 비정상 종료가 될 수 있습니다!",
|
||||||
@@ -203,28 +203,28 @@
|
|||||||
"mode": "모드",
|
"mode": "모드",
|
||||||
"modifiers": "설정 배율",
|
"modifiers": "설정 배율",
|
||||||
"module_visibility_based_on_game_state": "게임 상태에 따라 모듈 표시",
|
"module_visibility_based_on_game_state": "게임 상태에 따라 모듈 표시",
|
||||||
"modules": "UI",
|
"modules": "모듈",
|
||||||
"monster_can_be_captured": "몬스터 포획 가능",
|
"monster_can_be_captured": "몬스터 포획 가능",
|
||||||
"monster_id": "몬스터 ID",
|
"monster_id": "몬스터 ID",
|
||||||
"monster_name": "몬스터명",
|
"monster_name": "몬스터명",
|
||||||
"monster_name_label": "몬스터명 정보",
|
"monster_name_label": "몬스터명 정보",
|
||||||
"monsters": "Monsters",
|
"monsters": "몬스터",
|
||||||
"my_damage_bar_location": "내 대미지 막대 위치",
|
"my_damage_bar_location": "내 대미지 막대 위치",
|
||||||
"my_otomos": "내 동반자",
|
"my_otomos": "내 동반자",
|
||||||
"myself": "나",
|
"myself": "나",
|
||||||
"name": "이름",
|
"name": "이름",
|
||||||
"name_label": "이름 정보",
|
"name_label": "이름 정보",
|
||||||
"new": "새",
|
"new": "새로 만들기",
|
||||||
"none": "없음",
|
"none": "없음",
|
||||||
"normal": "기본",
|
"normal": "기본",
|
||||||
"offset": "오프셋",
|
"offset": "오프셋",
|
||||||
"offset_is_relative_to_parts": "오프셋을 부위 기준으로",
|
"offset_is_relative_to_parts": "오프셋을 부위 기준으로",
|
||||||
"opacity_falloff": "투명도 감소",
|
"opacity_falloff": "투명도 감소",
|
||||||
"orientation": "방향",
|
"orientation": "방향",
|
||||||
"other": "Other",
|
"other": "기타",
|
||||||
"other_player_otomos": "다른 플레이어 동반자",
|
"other_player_otomos": "다른 플레이어 동반자",
|
||||||
"other_players": "다른 헌터",
|
"other_players": "다른 헌터",
|
||||||
"otomos": "Buddies",
|
"otomos": "동반자",
|
||||||
"outline": "외곽선",
|
"outline": "외곽선",
|
||||||
"outside": "외부",
|
"outside": "외부",
|
||||||
"part_health": "부위 수치",
|
"part_health": "부위 수치",
|
||||||
@@ -235,7 +235,7 @@
|
|||||||
"player_name_label": "헌터명 정보",
|
"player_name_label": "헌터명 정보",
|
||||||
"player_name_size_limit": "헌터명 크기 제한",
|
"player_name_size_limit": "헌터명 크기 제한",
|
||||||
"player_spacing": "플레이어 간격",
|
"player_spacing": "플레이어 간격",
|
||||||
"players": "Players",
|
"players": "모든 플레이어",
|
||||||
"playing_quest": "퀘스트 중",
|
"playing_quest": "퀘스트 중",
|
||||||
"poison": "독",
|
"poison": "독",
|
||||||
"position": "위치",
|
"position": "위치",
|
||||||
@@ -251,18 +251,18 @@
|
|||||||
"relative_offset": "상대적 위치 오프셋",
|
"relative_offset": "상대적 위치 오프셋",
|
||||||
"rename": "이름 변경",
|
"rename": "이름 변경",
|
||||||
"render_highlighted_monster": "주시대상 몬스터 표시",
|
"render_highlighted_monster": "주시대상 몬스터 표시",
|
||||||
"render_inactive_anomaly_cores": "Render Inactive Anomaly Cores",
|
"render_inactive_anomaly_cores": "비활성화 된 괴이핵 표시",
|
||||||
"render_not_highlighted_monsters": "주시대상이 아닌 아닌 몬스터 표시",
|
"render_not_highlighted_monsters": "주시대상이 아닌 아닌 몬스터 표시",
|
||||||
"renderer": "렌더링",
|
"renderer": "렌더링",
|
||||||
"reset": "리셋",
|
"reset": "리셋",
|
||||||
"reversed_order": "역순",
|
"reversed_order": "역순",
|
||||||
"reward_screen": "보상 화면",
|
"reward_screen": "보상 화면",
|
||||||
"right_alignment_shift": "Right Alignment Shift",
|
"right_alignment_shift": "우측정렬 이동",
|
||||||
"right_to_left": "Right to Left",
|
"right_to_left": "오른쪽에서 왼쪽",
|
||||||
"servant_otomos": "맹우 동반자",
|
"servant_otomos": "맹우 동반자",
|
||||||
"servants": "맹우",
|
"servants": "맹우",
|
||||||
"settings": "설정",
|
"settings": "설정",
|
||||||
"sever_anomaly_filter": "Sever + Anomaly Core",
|
"sever_anomaly_filter": "절단 + 괴이핵",
|
||||||
"sever_filter": "절단",
|
"sever_filter": "절단",
|
||||||
"shadow": "그림자",
|
"shadow": "그림자",
|
||||||
"show_my_otomos_separately": "내 동반자를 따로",
|
"show_my_otomos_separately": "내 동반자를 따로",
|
||||||
@@ -292,9 +292,9 @@
|
|||||||
"top_buildup": "총 누적치",
|
"top_buildup": "총 누적치",
|
||||||
"top_damage": "최고 대미지",
|
"top_damage": "최고 대미지",
|
||||||
"top_dps": "최고 DPS",
|
"top_dps": "최고 DPS",
|
||||||
"top_left": "좌상단",
|
"top_left": "왼쪽 위",
|
||||||
"top_right": "우상단",
|
"top_right": "오른쪽 위",
|
||||||
"top_to_bottom": "Top to Bottom",
|
"top_to_bottom": "위에서 아래",
|
||||||
"total": "전체",
|
"total": "전체",
|
||||||
"total_buildup": "총 누적치",
|
"total_buildup": "총 누적치",
|
||||||
"total_buildup_label": "총 누적치 정보",
|
"total_buildup_label": "총 누적치 정보",
|
||||||
@@ -317,7 +317,7 @@
|
|||||||
"visible": "표시함",
|
"visible": "표시함",
|
||||||
"width": "너비",
|
"width": "너비",
|
||||||
"world_offset": "전역 오프셋",
|
"world_offset": "전역 오프셋",
|
||||||
"wyvern_riding": "Wyvern Riding",
|
"wyvern_riding": "용조종",
|
||||||
"x": "X",
|
"x": "X",
|
||||||
"y": "Y",
|
"y": "Y",
|
||||||
"z": "Z"
|
"z": "Z"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
"gold": "金冠",
|
"gold": "金冠",
|
||||||
"mini": "小型",
|
"mini": "小型",
|
||||||
"otomo": "随从",
|
"otomo": "随从",
|
||||||
"part_anomaly_core": "Anomaly Core",
|
"part_anomaly_core": "怪异核",
|
||||||
"part_break": "部位破坏",
|
"part_break": "部位破坏",
|
||||||
"part_sever": "部位切断",
|
"part_sever": "部位切断",
|
||||||
"player": "玩家",
|
"player": "玩家",
|
||||||
@@ -49,10 +49,10 @@
|
|||||||
"ailments": "状态异常",
|
"ailments": "状态异常",
|
||||||
"all_UI": "所有UI",
|
"all_UI": "所有UI",
|
||||||
"anchor": "锚点",
|
"anchor": "锚点",
|
||||||
"anomaly_cores": "Anomaly Cores",
|
"anomaly_cores": "怪异核",
|
||||||
"anomaly_filter": "Anomaly Core",
|
"anomaly_filter": "怪异核",
|
||||||
"anomaly_health": "Anomaly Core Health",
|
"anomaly_health": "怪异核破坏值",
|
||||||
"anomaly_health_percentage": "Anomaly Core Health Percentage",
|
"anomaly_health_percentage": "怪异核破坏百分比",
|
||||||
"apply": "应用",
|
"apply": "应用",
|
||||||
"assign_new_key": "指定新按键",
|
"assign_new_key": "指定新按键",
|
||||||
"auto_highlight": "自动高亮",
|
"auto_highlight": "自动高亮",
|
||||||
@@ -61,17 +61,17 @@
|
|||||||
"blast": "爆破",
|
"blast": "爆破",
|
||||||
"body_parts": "身体部位",
|
"body_parts": "身体部位",
|
||||||
"bold": "粗体",
|
"bold": "粗体",
|
||||||
"bombs": "Bombs",
|
"bombs": "爆桶",
|
||||||
"bottom_left": "左下",
|
"bottom_left": "左下",
|
||||||
"bottom_right": "右下",
|
"bottom_right": "右下",
|
||||||
"bottom_to_top": "Bottom to Top",
|
"bottom_to_top": "从下到上",
|
||||||
"break_anomaly_filter": "Break + Anomaly Core",
|
"break_anomaly_filter": "破坏+怪异核",
|
||||||
"break_count": "破坏次数",
|
"break_count": "破坏次数",
|
||||||
"break_filter": "破坏",
|
"break_filter": "破坏",
|
||||||
"break_health": "破坏值",
|
"break_health": "破坏值",
|
||||||
"break_health_percentage": "破坏值百分比",
|
"break_health_percentage": "破坏值百分比",
|
||||||
"break_max_count": "最大破坏次数",
|
"break_max_count": "最大破坏次数",
|
||||||
"break_sever_anomaly_filter": "Break + Sever + Anomaly Core",
|
"break_sever_anomaly_filter": "破坏+切断+怪异核",
|
||||||
"break_sever_filter": "破坏+切断",
|
"break_sever_filter": "破坏+切断",
|
||||||
"buff_UI": "Buff UI",
|
"buff_UI": "Buff UI",
|
||||||
"buildup": "积累值",
|
"buildup": "积累值",
|
||||||
@@ -112,12 +112,12 @@
|
|||||||
"dynamically_positioned": "动态位置",
|
"dynamically_positioned": "动态位置",
|
||||||
"enable_for": "开启",
|
"enable_for": "开启",
|
||||||
"enabled": "开启",
|
"enabled": "开启",
|
||||||
"endemic_life": "Endemic Life",
|
"endemic_life": "环境生物",
|
||||||
"endemic_life_UI": "环境生物UI",
|
"endemic_life_UI": "环境生物UI",
|
||||||
"family": "字体",
|
"family": "字体",
|
||||||
"farthest": "最远",
|
"farthest": "最远",
|
||||||
"fight_time": "战斗时间",
|
"fight_time": "战斗时间",
|
||||||
"fill_direction": "Fill Direction",
|
"fill_direction": "填充方向",
|
||||||
"filter": "筛选器",
|
"filter": "筛选器",
|
||||||
"filter_mode": "筛选方式",
|
"filter_mode": "筛选方式",
|
||||||
"first": "第一",
|
"first": "第一",
|
||||||
@@ -129,14 +129,14 @@
|
|||||||
"global_scale_modifier": "全局比例更改",
|
"global_scale_modifier": "全局比例更改",
|
||||||
"global_settings": "全局设定",
|
"global_settings": "全局设定",
|
||||||
"health": "生命",
|
"health": "生命",
|
||||||
"health_anomaly_filter": "Health + Anomaly Core",
|
"health_anomaly_filter": "生命+怪异核",
|
||||||
"health_break_anomaly_filter": "Health + Break + Anomaly Core",
|
"health_break_anomaly_filter": "生命+破坏+怪异核",
|
||||||
"health_break_filter": "生命+破坏",
|
"health_break_filter": "生命+破坏",
|
||||||
"health_break_sever_anomaly_filter": "Health + Break + Sever + Anomaly Core",
|
"health_break_sever_anomaly_filter": "生命+破坏+切断+怪异核",
|
||||||
"health_break_sever_filter": "生命+破坏+切断",
|
"health_break_sever_filter": "生命+破坏+切断",
|
||||||
"health_filter": "生命",
|
"health_filter": "生命",
|
||||||
"health_percentage": "生命百分比",
|
"health_percentage": "生命百分比",
|
||||||
"health_sever_anomaly_filter": "Health + Sever + Anomaly Core",
|
"health_sever_anomaly_filter": "生命+切断+怪异核",
|
||||||
"health_sever_filter": "生命+切断",
|
"health_sever_filter": "生命+切断",
|
||||||
"height": "高度",
|
"height": "高度",
|
||||||
"hide_ailments_with_zero_buildup": "当积累值为0时隐藏该状态异常",
|
"hide_ailments_with_zero_buildup": "当积累值为0时隐藏该状态异常",
|
||||||
@@ -172,11 +172,11 @@
|
|||||||
"in_training_area": "在修炼场",
|
"in_training_area": "在修炼场",
|
||||||
"include": "包含",
|
"include": "包含",
|
||||||
"inside": "里面",
|
"inside": "里面",
|
||||||
"installations": "Installations",
|
"installations": "狩猎设备",
|
||||||
"italic": "斜体",
|
"italic": "斜体",
|
||||||
"join_time": "加入时间",
|
"join_time": "加入时间",
|
||||||
"killcam": "击杀镜头",
|
"killcam": "击杀镜头",
|
||||||
"kunai": "Kunai",
|
"kunai": "苦无",
|
||||||
"language": "语言",
|
"language": "语言",
|
||||||
"large_monster_UI": "大型怪物UI",
|
"large_monster_UI": "大型怪物UI",
|
||||||
"large_monster_dynamic_UI": "大型怪物浮动UI",
|
"large_monster_dynamic_UI": "大型怪物浮动UI",
|
||||||
@@ -184,7 +184,7 @@
|
|||||||
"large_monster_static_UI": "大型怪物固定UI",
|
"large_monster_static_UI": "大型怪物固定UI",
|
||||||
"large_monsters": "大型怪物群",
|
"large_monsters": "大型怪物群",
|
||||||
"last": "最后",
|
"last": "最后",
|
||||||
"left_to_right": "Left to Right",
|
"left_to_right": "从左到右",
|
||||||
"level": "等级",
|
"level": "等级",
|
||||||
"level_label": "等级标签",
|
"level_label": "等级标签",
|
||||||
"loading_quest": "任务加载中",
|
"loading_quest": "任务加载中",
|
||||||
@@ -208,7 +208,7 @@
|
|||||||
"monster_id": "怪物ID",
|
"monster_id": "怪物ID",
|
||||||
"monster_name": "怪物名",
|
"monster_name": "怪物名",
|
||||||
"monster_name_label": "怪物名标签",
|
"monster_name_label": "怪物名标签",
|
||||||
"monsters": "Monsters",
|
"monsters": "怪物",
|
||||||
"my_damage_bar_location": "我的伤害条位置",
|
"my_damage_bar_location": "我的伤害条位置",
|
||||||
"my_otomos": "我的随从",
|
"my_otomos": "我的随从",
|
||||||
"myself": "我自己",
|
"myself": "我自己",
|
||||||
@@ -221,10 +221,10 @@
|
|||||||
"offset_is_relative_to_parts": "根据部位偏移",
|
"offset_is_relative_to_parts": "根据部位偏移",
|
||||||
"opacity_falloff": "透明度增加",
|
"opacity_falloff": "透明度增加",
|
||||||
"orientation": "方向",
|
"orientation": "方向",
|
||||||
"other": "Other",
|
"other": "其它",
|
||||||
"other_player_otomos": "其他玩家的随从",
|
"other_player_otomos": "其他玩家的随从",
|
||||||
"other_players": "其他玩家",
|
"other_players": "其他玩家",
|
||||||
"otomos": "Buddies",
|
"otomos": "随从",
|
||||||
"outline": "轮廓",
|
"outline": "轮廓",
|
||||||
"outside": "外面",
|
"outside": "外面",
|
||||||
"part_health": "部位生命值",
|
"part_health": "部位生命值",
|
||||||
@@ -235,7 +235,7 @@
|
|||||||
"player_name_label": "玩家名标签",
|
"player_name_label": "玩家名标签",
|
||||||
"player_name_size_limit": "玩家名长度限制",
|
"player_name_size_limit": "玩家名长度限制",
|
||||||
"player_spacing": "玩家间距",
|
"player_spacing": "玩家间距",
|
||||||
"players": "Players",
|
"players": "玩家",
|
||||||
"playing_quest": "操作界面/正常游玩时",
|
"playing_quest": "操作界面/正常游玩时",
|
||||||
"poison": "中毒",
|
"poison": "中毒",
|
||||||
"position": "位置",
|
"position": "位置",
|
||||||
@@ -251,18 +251,18 @@
|
|||||||
"relative_offset": "相对偏移",
|
"relative_offset": "相对偏移",
|
||||||
"rename": "重命名",
|
"rename": "重命名",
|
||||||
"render_highlighted_monster": "渲染高亮怪物",
|
"render_highlighted_monster": "渲染高亮怪物",
|
||||||
"render_inactive_anomaly_cores": "Render Inactive Anomaly Cores",
|
"render_inactive_anomaly_cores": "渲染不活跃的怪异核",
|
||||||
"render_not_highlighted_monsters": "渲染非高亮怪物",
|
"render_not_highlighted_monsters": "渲染非高亮怪物",
|
||||||
"renderer": "渲染器",
|
"renderer": "渲染器",
|
||||||
"reset": "重置",
|
"reset": "重置",
|
||||||
"reversed_order": "逆向排序",
|
"reversed_order": "逆向排序",
|
||||||
"reward_screen": "奖励界面",
|
"reward_screen": "奖励界面",
|
||||||
"right_alignment_shift": "Right Alignment Shift",
|
"right_alignment_shift": "右对齐偏移距离",
|
||||||
"right_to_left": "Right to Left",
|
"right_to_left": "从右到左",
|
||||||
"servant_otomos": "盟友随从",
|
"servant_otomos": "盟友随从",
|
||||||
"servants": "盟友",
|
"servants": "盟友",
|
||||||
"settings": "设定",
|
"settings": "设定",
|
||||||
"sever_anomaly_filter": "Sever + Anomaly Core",
|
"sever_anomaly_filter": "切断+怪异核",
|
||||||
"sever_filter": "切断",
|
"sever_filter": "切断",
|
||||||
"shadow": "阴影",
|
"shadow": "阴影",
|
||||||
"show_my_otomos_separately": "分开显示我的随从",
|
"show_my_otomos_separately": "分开显示我的随从",
|
||||||
@@ -290,11 +290,11 @@
|
|||||||
"timer": "计时器",
|
"timer": "计时器",
|
||||||
"timer_label": "计时器标签",
|
"timer_label": "计时器标签",
|
||||||
"top_buildup": "最高积累值",
|
"top_buildup": "最高积累值",
|
||||||
"top_damage": "Top Damage",
|
"top_damage": "最高伤害",
|
||||||
"top_dps": "最高DPS",
|
"top_dps": "最高DPS",
|
||||||
"top_left": "左上",
|
"top_left": "左上",
|
||||||
"top_right": "右上",
|
"top_right": "右上",
|
||||||
"top_to_bottom": "Top to Bottom",
|
"top_to_bottom": "从上到下",
|
||||||
"total": "总计",
|
"total": "总计",
|
||||||
"total_buildup": "总积累值",
|
"total_buildup": "总积累值",
|
||||||
"total_buildup_label": "总积累值标签",
|
"total_buildup_label": "总积累值标签",
|
||||||
@@ -317,7 +317,7 @@
|
|||||||
"visible": "可见",
|
"visible": "可见",
|
||||||
"width": "宽度",
|
"width": "宽度",
|
||||||
"world_offset": "整体偏移",
|
"world_offset": "整体偏移",
|
||||||
"wyvern_riding": "Wyvern Riding",
|
"wyvern_riding": "御龙",
|
||||||
"x": "X轴",
|
"x": "X轴",
|
||||||
"y": "Y轴",
|
"y": "Y轴",
|
||||||
"z": "Z轴"
|
"z": "Z轴"
|
||||||
|
|||||||
Reference in New Issue
Block a user