mirror of
https://github.com/GreenComfyTea/MHR-Overlay.git
synced 2026-01-30 07:18:03 -08:00
Compare commits
10 Commits
a8060c8c58
...
50131b08f1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
50131b08f1 | ||
|
|
89bb48602d | ||
|
|
1580b4c4c2 | ||
|
|
5c42502700 | ||
|
|
d7a4450a37 | ||
|
|
590b3b17c2 | ||
|
|
e20af6479e | ||
|
|
6bab1b2435 | ||
|
|
195252ed70 | ||
|
|
b9a3088658 |
@@ -53,6 +53,7 @@ local dango_skills = require("MHR_Overlay.Buffs.dango_skills");
|
||||
local abnormal_statuses = require("MHR_Overlay.Buffs.abnormal_statuses");
|
||||
local otomo_moves = require("MHR_Overlay.Buffs.otomo_moves");
|
||||
local weapon_skills = require("MHR_Overlay.Buffs.weapon_skills");
|
||||
local rampage_skills = require("MHR_Overlay.Buffs.rampage_skills");
|
||||
local misc_buffs = require("MHR_Overlay.Buffs.misc_buffs");
|
||||
|
||||
local players = require("MHR_Overlay.Damage_Meter.players");
|
||||
@@ -136,6 +137,7 @@ dango_skills.init_dependencies();
|
||||
abnormal_statuses.init_dependencies();
|
||||
otomo_moves.init_dependencies();
|
||||
weapon_skills.init_dependencies();
|
||||
rampage_skills.init_dependencies();
|
||||
misc_buffs.init_dependencies();
|
||||
|
||||
damage_hook.init_dependencies();
|
||||
@@ -214,6 +216,7 @@ dango_skills.init_module();
|
||||
abnormal_statuses.init_module();
|
||||
otomo_moves.init_module();
|
||||
weapon_skills.init_module();
|
||||
rampage_skills.init_module();
|
||||
misc_buffs.init_module();
|
||||
|
||||
damage_hook.init_module();
|
||||
|
||||
@@ -82,54 +82,55 @@ local frenzy_infected_duration = 121;
|
||||
local player_quest_base_type_def = sdk.find_type_definition("snow.player.PlayerQuestBase");
|
||||
|
||||
-- Fireblight
|
||||
local fire_duration_timer = player_quest_base_type_def:get_field("_FireLDurationTimer");
|
||||
local fire_duration_timer_field = player_quest_base_type_def:get_field("_FireLDurationTimer");
|
||||
-- Waterblight
|
||||
local water_duration_timer = player_quest_base_type_def:get_field("_WaterLDurationTimer");
|
||||
local water_duration_timer_field = player_quest_base_type_def:get_field("_WaterLDurationTimer");
|
||||
-- Iceblight
|
||||
local ice_duration_timer = player_quest_base_type_def:get_field("_IceLDurationTimer");
|
||||
local ice_duration_timer_field = player_quest_base_type_def:get_field("_IceLDurationTimer");
|
||||
-- Thunderblight
|
||||
local thunder_duration_timer = player_quest_base_type_def:get_field("_ThunderLDurationTimer");
|
||||
local thunder_duration_timer_field = player_quest_base_type_def:get_field("_ThunderLDurationTimer");
|
||||
-- Dragonblight
|
||||
local dragon_duration_timer = player_quest_base_type_def:get_field("_DragonLDurationTimer");
|
||||
local dragon_duration_timer_field = player_quest_base_type_def:get_field("_DragonLDurationTimer");
|
||||
-- blastblight
|
||||
local bomb_duration_timer = player_quest_base_type_def:get_field("_BombDurationTimer");
|
||||
local bomb_duration_timer_field = player_quest_base_type_def:get_field("_BombDurationTimer");
|
||||
-- Bubbleblight
|
||||
local bubble_type_field = player_quest_base_type_def:get_field("_BubbleType");
|
||||
local bubble_damage_timer = player_quest_base_type_def:get_field("_BubbleDamageTimer");
|
||||
local bubble_damage_timer_field = player_quest_base_type_def:get_field("_BubbleDamageTimer");
|
||||
-- Hellfireblight
|
||||
local oni_bomb_duration_timer = player_quest_base_type_def:get_field("_OniBombDurationTimer");
|
||||
local oni_bomb_duration_timer_field = player_quest_base_type_def:get_field("_OniBombDurationTimer");
|
||||
-- Bloodblight
|
||||
local mystery_debuff_timer = player_quest_base_type_def:get_field("_MysteryDebuffTimer");
|
||||
local mystery_debuff_timer_field = player_quest_base_type_def:get_field("_MysteryDebuffTimer");
|
||||
-- Frostblight
|
||||
local get_is_frozen_damage_method = player_quest_base_type_def:get_method("get_IsFrozenDamage");
|
||||
|
||||
-- Poison
|
||||
local poison_level_field = player_quest_base_type_def:get_field("_PoisonLv");
|
||||
local poison_duration_timer = player_quest_base_type_def:get_field("_PoisonDurationTimer");
|
||||
local poison_duration_timer_field = player_quest_base_type_def:get_field("_PoisonDurationTimer");
|
||||
-- Stun
|
||||
local stun_duration_timer = player_quest_base_type_def:get_field("_StunDurationTimer");
|
||||
local stun_duration_timer_field = player_quest_base_type_def:get_field("_StunDurationTimer");
|
||||
-- Falling Sleep
|
||||
local get_sleep_movable_timer_method = player_quest_base_type_def:get_method("get_SleepMovableTimer");
|
||||
-- Sleep
|
||||
local sleep_duration_timer = player_quest_base_type_def:get_field("_SleepDurationTimer");
|
||||
local sleep_duration_timer_field = player_quest_base_type_def:get_field("_SleepDurationTimer");
|
||||
-- Paralysis
|
||||
local paralyze_duration_timer = player_quest_base_type_def:get_field("_ParalyzeDurationTimer");
|
||||
local paralyze_duration_timer_field = player_quest_base_type_def:get_field("_ParalyzeDurationTimer");
|
||||
|
||||
-- Defense Down
|
||||
local defense_down_duration_timer = player_quest_base_type_def:get_field("_DefenceDownDurationTimer");
|
||||
local defense_down_duration_timer_field = player_quest_base_type_def:get_field("_DefenceDownDurationTimer");
|
||||
-- Resistance Down
|
||||
local resistance_down_duration_timer = player_quest_base_type_def:get_field("_ResistanceDownDurationTimer");
|
||||
local resistance_down_duration_timer_field = player_quest_base_type_def:get_field("_ResistanceDownDurationTimer");
|
||||
|
||||
-- Tremor
|
||||
local quake_duration_timer = player_quest_base_type_def:get_field("_QuakeDurationTimer");
|
||||
local quake_duration_timer_field = player_quest_base_type_def:get_field("_QuakeDurationTimer");
|
||||
-- Roar
|
||||
local ear_duration_timer = player_quest_base_type_def:get_field("_EarDurationTimer");
|
||||
local ear_duration_timer_field = player_quest_base_type_def:get_field("_EarDurationTimer");
|
||||
-- Webbed
|
||||
local beto_duration_timer = player_quest_base_type_def:get_field("_BetoDurationTimer");
|
||||
local beto_duration_timer_field = player_quest_base_type_def:get_field("_BetoDurationTimer");
|
||||
-- Stench
|
||||
local stink_duration_timer = player_quest_base_type_def:get_field("_StinkDurationTimer");
|
||||
local stink_duration_timer_field = player_quest_base_type_def:get_field("_StinkDurationTimer");
|
||||
-- Leeched
|
||||
local blooding_enemy_timer = player_quest_base_type_def:get_field("_BloodingEnemyTimer");
|
||||
local blooding_enemy_timer_field = player_quest_base_type_def:get_field("_BloodingEnemyTimer");
|
||||
-- Bleeding
|
||||
local bleeding_debuff_timer = player_quest_base_type_def:get_field("_BleedingDebuffTimer");
|
||||
local bleeding_debuff_timer_field = player_quest_base_type_def:get_field("_BleedingDebuffTimer");
|
||||
-- Engulfed
|
||||
local get_is_vacuum_damage_method = player_quest_base_type_def:get_method("get__IsVacuumDamage");
|
||||
-- Muck
|
||||
@@ -143,6 +144,7 @@ local virus_timer_field = player_quest_base_type_def:get_field("_VirusTimer");
|
||||
local virus_onset_timer_field = player_quest_base_type_def:get_field("_VirusOnsetTimer");
|
||||
|
||||
local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData");
|
||||
|
||||
-- Frenzy Overcome
|
||||
local virus_overcome_buff_timer_field = player_data_type_def:get_field("_VirusOvercomeBuffTimer");
|
||||
|
||||
@@ -162,34 +164,36 @@ function this.update(player, player_data)
|
||||
this.update_muck(player);
|
||||
this.update_frenzy_infection(player);
|
||||
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "fireblight", this.get_abnormal_status_name, nil, nil, player, fire_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "fireblight", this.get_abnormal_status_name, nil, nil, player, fire_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "waterblight", this.get_abnormal_status_name, nil, nil, player, water_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "iceblight", this.get_abnormal_status_name, nil, nil, player, ice_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "thunderblight", this.get_abnormal_status_name, nil, nil, player, thunder_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "dragonblight", this.get_abnormal_status_name, nil, nil, player, dragon_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "blastblight", this.get_abnormal_status_name, nil, nil, player, bomb_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "hellfireblight", this.get_abnormal_status_name, nil, nil, player, oni_bomb_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "bloodblight", this.get_abnormal_status_name, nil, nil, player, mystery_debuff_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "fireblight", this.get_abnormal_status_name, nil, nil, player, fire_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "fireblight", this.get_abnormal_status_name, nil, nil, player, fire_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "waterblight", this.get_abnormal_status_name, nil, nil, player, water_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "iceblight", this.get_abnormal_status_name, nil, nil, player, ice_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "thunderblight", this.get_abnormal_status_name, nil, nil, player, thunder_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "dragonblight", this.get_abnormal_status_name, nil, nil, player, dragon_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "blastblight", this.get_abnormal_status_name, nil, nil, player, bomb_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "hellfireblight", this.get_abnormal_status_name, nil, nil, player, oni_bomb_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "bloodblight", this.get_abnormal_status_name, nil, nil, player, mystery_debuff_timer_field);
|
||||
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "stun", this.get_abnormal_status_name, nil, nil, player, stun_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "paralysis", this.get_abnormal_status_name, nil, nil, player, paralyze_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "sleep", this.get_abnormal_status_name, nil, nil, player, sleep_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "defense_down", this.get_abnormal_status_name, nil, nil, player, defense_down_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "resistance_down", this.get_abnormal_status_name, nil, nil, player, resistance_down_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "stun", this.get_abnormal_status_name, nil, nil, player, stun_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "paralysis", this.get_abnormal_status_name, nil, nil, player, paralyze_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "falling_asleep", this.get_abnormal_status_name, nil, nil, player, get_sleep_movable_timer_method);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "defense_down", this.get_abnormal_status_name, nil, nil, player, defense_down_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "resistance_down", this.get_abnormal_status_name, nil, nil, player, resistance_down_duration_timer_field);
|
||||
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "tremor", this.get_abnormal_status_name, nil, nil, player, quake_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "roar", this.get_abnormal_status_name, nil, nil, player, ear_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "webbed", this.get_abnormal_status_name, nil, nil, player, beto_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "stench", this.get_abnormal_status_name, nil, nil, player, stink_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "leeched", this.get_abnormal_status_name, nil, nil, player, blooding_enemy_timer, nil, nil, true);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "bleeding", this.get_abnormal_status_name, nil, nil, player, bleeding_debuff_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "tremor", this.get_abnormal_status_name, nil, nil, player, quake_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "roar", this.get_abnormal_status_name, nil, nil, player, ear_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "webbed", this.get_abnormal_status_name, nil, nil, player, beto_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "stench", this.get_abnormal_status_name, nil, nil, player, stink_duration_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "leeched", this.get_abnormal_status_name, nil, nil, player, blooding_enemy_timer_field, nil, nil, true);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "bleeding", this.get_abnormal_status_name, nil, nil, player, bleeding_debuff_timer_field);
|
||||
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "frenzy", this.get_abnormal_status_name, nil, nil, player, virus_onset_timer_field);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "frenzy_overcome", this.get_abnormal_status_name, nil, nil, player_data, virus_overcome_buff_timer_field);
|
||||
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "engulfed", this.get_abnormal_status_name, player, get_is_vacuum_damage_method);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "frostblight", this.get_abnormal_status_name, player, get_is_frozen_damage_method);
|
||||
|
||||
this.update_sleep(player);
|
||||
end
|
||||
|
||||
function this.update_poison(player)
|
||||
@@ -206,10 +210,10 @@ function this.update_poison(player)
|
||||
end
|
||||
|
||||
if poison_level == 1 then
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "poison", this.get_abnormal_status_name, player, poison_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "poison", this.get_abnormal_status_name, player, poison_duration_timer_field);
|
||||
this.list.deadly_poison = nil;
|
||||
else
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "deadly_poison", this.get_abnormal_status_name, player, poison_duration_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "deadly_poison", this.get_abnormal_status_name, player, poison_duration_timer_field);
|
||||
this.list.poison = nil;
|
||||
end
|
||||
end
|
||||
@@ -228,10 +232,10 @@ function this.update_bubbleblight(player)
|
||||
end
|
||||
|
||||
if bubble_type == 1 then
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "minor_bubbleblight", this.get_abnormal_status_name, player, bubble_damage_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "minor_bubbleblight", this.get_abnormal_status_name, player, bubble_damage_timer_field);
|
||||
this.list.major_bubbleblight = nil;
|
||||
else
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "major_bubbleblight", this.get_abnormal_status_name, player, bubble_damage_timer);
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "major_bubbleblight", this.get_abnormal_status_name, player, bubble_damage_timer_field);
|
||||
this.list.minor_bubbleblight = nil;
|
||||
end
|
||||
end
|
||||
@@ -280,6 +284,15 @@ function this.update_frenzy_infection(player)
|
||||
buffs.update_generic(this.list, ailments_type_name, "frenzy_infection", this.get_abnormal_status_name, 1, timer, frenzy_infected_duration);
|
||||
end
|
||||
|
||||
function this.update_sleep(player)
|
||||
if this.list.falling_asleep ~= nil then
|
||||
this.list.sleep = nil;
|
||||
return;
|
||||
end
|
||||
|
||||
buffs.update_generic_buff(this.list, ailments_type_name, "sleep", this.get_abnormal_status_name, nil, nil, player, sleep_duration_timer_field);
|
||||
end
|
||||
|
||||
function this.init_names()
|
||||
for abnormal_status_key, debuff in pairs(this.list) do
|
||||
debuff.name = this.get_abnormal_status_name(abnormal_status_key);
|
||||
|
||||
@@ -18,6 +18,7 @@ local abnormal_statuses;
|
||||
local otomo_moves;
|
||||
local weapon_skills;
|
||||
local misc_buffs;
|
||||
local rampage_skills;
|
||||
|
||||
local sdk = sdk;
|
||||
local tostring = tostring;
|
||||
@@ -54,12 +55,31 @@ local package = package;
|
||||
--[[
|
||||
TODO:
|
||||
[x] DONE! Wirebug-related skills
|
||||
More otomo skills
|
||||
[x] DONE! More Dango skills
|
||||
Part breaker, charge master
|
||||
[x] DONE! Weapon buffs
|
||||
More endemic life, such as Lampsquid
|
||||
[x] DONE! Horn music
|
||||
[x] DONE! abnormal_statuses: Immunity
|
||||
[x] DONE! consumables: Stinkmink
|
||||
[x] DONE! rampage skills: Chameleos Soul
|
||||
[x] WONT IMPLEMENT! skills: Furious Buildup
|
||||
[x] DONE! skills: powder mantle
|
||||
[x] WONT IMPLEMENT! skills: frostcraft
|
||||
[x] COULDNT FIND! skills: defiance --
|
||||
[x] DONE! skills: embolden
|
||||
[x] DONE! skills: strife
|
||||
[x] DONE! skills: berserk
|
||||
[x] DONE! skills: dragon conversion
|
||||
[x] DONE! abnormal_statuses: Pre-Sleep
|
||||
More otomo skills
|
||||
skills: Part breaker, charge master
|
||||
Demon Ammo, Armor Ammo
|
||||
weapon skills - Arc Shot: Affinity, Arc Shot: Brace
|
||||
endemic_life_buffs: Red, Yellow Lampsquid
|
||||
Add duration detection to skills
|
||||
Add duration detection to otomo moves
|
||||
Add duration detection to dango skills
|
||||
Add duration detection to rampage skills
|
||||
Add duration detection to endemic life buffs
|
||||
]]
|
||||
|
||||
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
|
||||
@@ -173,6 +193,7 @@ function this.update()
|
||||
|
||||
consumables.update(master_player_data);
|
||||
otomo_moves.update(master_player_data);
|
||||
rampage_skills.update(master_player_data);
|
||||
|
||||
if not is_player_lobby_base then
|
||||
skills.update(master_player, master_player_data, weapon_type);
|
||||
@@ -183,19 +204,20 @@ function this.update()
|
||||
misc_buffs.update(master_player, master_player_data);
|
||||
end
|
||||
|
||||
-- local tbl = {
|
||||
-- "_IsEnable_KitchenSkill048_Reduce",
|
||||
-- "_KitchenSkill_Insurance_DefUp_Lv3",
|
||||
-- "_KitchenSkill_Insurance_DefUp_Lv4",
|
||||
-- "_KitchenSkill051_AtkUpTimer",
|
||||
-- "_KitchenSkill051_AtkUp",
|
||||
-- "_KitchenSkill054_Timer",
|
||||
-- "_KitchenSkill054_DefUp",
|
||||
-- };
|
||||
|
||||
-- xy = "";
|
||||
-- for _, key in ipairs(tbl) do
|
||||
-- xy = string.format("%s%s: %s\n", xy, key, tostring(master_player_data:get_field(key)));
|
||||
|
||||
-- local fields = sdk.find_type_definition("snow.player.PlayerData"):get_fields();
|
||||
-- for i = 1, 999 do
|
||||
-- if fields[i] ~= nil then
|
||||
-- local value = fields[i]:get_data(master_player_data);
|
||||
-- if value ~= nil then
|
||||
-- pcall(function()
|
||||
-- if not utils.number.is_equal(value, 0) then
|
||||
-- xy = string.format("%s%s: %s\n", xy, fields[i]:get_name(), tostring(value));
|
||||
-- end
|
||||
-- end);
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
end
|
||||
|
||||
@@ -355,6 +377,7 @@ function this.init_dependencies()
|
||||
abnormal_statuses = require("MHR_Overlay.Buffs.abnormal_statuses");
|
||||
otomo_moves = require("MHR_Overlay.Buffs.otomo_moves");
|
||||
weapon_skills = require("MHR_Overlay.Buffs.weapon_skills");
|
||||
rampage_skills = require("MHR_Overlay.Buffs.rampage_skills");
|
||||
misc_buffs = require("MHR_Overlay.Buffs.misc_buffs");
|
||||
end
|
||||
|
||||
|
||||
@@ -47,12 +47,12 @@ this.list = {
|
||||
mega_demondrug = nil,
|
||||
armorskin = nil,
|
||||
mega_armorskin = nil,
|
||||
might_seed = nil,
|
||||
adamant_seed = nil,
|
||||
-- might_seed = nil,
|
||||
-- adamant_seed = nil,
|
||||
demon_powder = nil,
|
||||
hardshell_powder = nil,
|
||||
immunizer = nil,
|
||||
dash_juice = nil,
|
||||
-- dash_juice = nil,
|
||||
gourmet_fish = nil,
|
||||
};
|
||||
|
||||
@@ -61,12 +61,12 @@ local consumable_ids = {
|
||||
mega_demondrug = 68157918,
|
||||
armorskin = 68157922,
|
||||
mega_armorskin = 68157923,
|
||||
might_seed = 68157919,
|
||||
adamant_seed = 68157924,
|
||||
--might_seed = 68157919,
|
||||
--adamant_seed = 68157924,
|
||||
demon_powder = 68157920,
|
||||
hardshell_powder = 68157925,
|
||||
immunizer = 68157911,
|
||||
dash_juice = 68157913,
|
||||
--dash_juice = 68157913,
|
||||
gourmet_fish = 68157909
|
||||
}
|
||||
|
||||
@@ -98,12 +98,6 @@ local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData");
|
||||
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");
|
||||
@@ -112,8 +106,6 @@ local def_up_item_second_field = player_data_type_def:get_field("_DefUpItemSecon
|
||||
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");
|
||||
-- Gourmet Fish
|
||||
local fish_regene_enable_field = player_data_type_def:get_field("_FishRegeneEnableTimer");
|
||||
|
||||
@@ -131,11 +123,6 @@ function this.update(player_data)
|
||||
|
||||
this.update_demondrug(player_data, item_parameter);
|
||||
this.update_armorskin(player_data, item_parameter);
|
||||
this.update_might_seed(player_data, item_parameter);
|
||||
this.update_dash_juice(player_data, item_parameter);
|
||||
|
||||
buffs.update_generic_buff(this.list, consumables_type_name, "adamant_seed", this.get_consumable_name,
|
||||
player_data, def_up_buff_second_field, player_data, def_up_buff_second_timer_field, item_parameter, adamant_seed_timer_field);
|
||||
|
||||
buffs.update_generic_buff(this.list, consumables_type_name, "demon_powder", this.get_consumable_name,
|
||||
player_data, atk_up_item_second_field, player_data, atk_up_item_second_timer_field, item_parameter, demondrug_powder_timer_field);
|
||||
@@ -226,60 +213,6 @@ function this.update_armorskin(player_data, item_parameter)
|
||||
buffs.update_generic(this.list, consumables_type_name, consumable_key, this.get_consumable_name);
|
||||
end
|
||||
|
||||
function this.update_might_seed(player_data, item_parameter)
|
||||
local atk_up_buff_second = atk_up_buff_second_field:get_data(player_data);
|
||||
if atk_up_buff_second == nil then
|
||||
error_handler.report("consumables.update_might_seed", "Failed to access Data: atk_up_buff_second");
|
||||
return;
|
||||
end
|
||||
|
||||
local might_seed_atk_up = might_seed_atk_up_field:get_data(item_parameter);
|
||||
if might_seed_atk_up == nil then
|
||||
error_handler.report("consumables.update_might_seed", "Failed to access Data: might_seed_atk_up");
|
||||
return;
|
||||
end
|
||||
|
||||
if atk_up_buff_second ~= might_seed_atk_up then
|
||||
this.list.might_seed = nil;
|
||||
return;
|
||||
end
|
||||
|
||||
this.update_generic_buff(this.list, consumables_type_name, "might_seed", this.get_consumable_name,
|
||||
nil, nil, player_data, atk_up_buff_second_timer_field, item_parameter, might_seed_timer_field);
|
||||
end
|
||||
|
||||
function this.update_dash_juice(player_data, item_parameter)
|
||||
local stamina_up_buff_second_timer = stamina_up_buff_second_timer_field:get_data(player_data);
|
||||
if stamina_up_buff_second_timer == nil then
|
||||
error_handler.report("consumables.update_dash_juice", "Failed to access Data: stamina_up_buff_second_timer");
|
||||
return;
|
||||
end
|
||||
|
||||
local stamina_up_buff_second = stamina_up_buff_second_field:get_data(item_parameter);
|
||||
if stamina_up_buff_second == nil then
|
||||
error_handler.report("consumables.update_dash_juice", "Failed to access Data: stamina_up_buff_second");
|
||||
return;
|
||||
end
|
||||
|
||||
if utils.number.is_equal(stamina_up_buff_second_timer, 0) then
|
||||
this.list.dash_juice = nil;
|
||||
return;
|
||||
end
|
||||
|
||||
local timer = stamina_up_buff_second_timer / 60;
|
||||
local dash_juice_consumable = this.list.dash_juice;
|
||||
|
||||
if dash_juice_consumable == nil
|
||||
or (dash_juice_consumable ~= nil and timer > dash_juice_consumable.timer) then
|
||||
if timer <= endemic_life_buffs.peepersects_duration + 0.1 then
|
||||
this.list.dash_juice = nil;
|
||||
return;
|
||||
end
|
||||
end
|
||||
|
||||
buffs.update_generic(this.list, consumables_type_name, "dash_juice", this.get_consumable_name, 1, timer, stamina_up_buff_second);
|
||||
end
|
||||
|
||||
function this.get_consumable_name(consumable_key)
|
||||
local consumable_name = get_name_method:call(nil, consumable_ids[consumable_key]);
|
||||
if consumable_name == nil then
|
||||
|
||||
@@ -44,7 +44,6 @@ local package = package;
|
||||
this.list = {
|
||||
dango_adrenaline = nil,
|
||||
dango_booster = nil,
|
||||
dango_bulker = nil,
|
||||
dango_insurance = nil,
|
||||
dango_insurance_defense_up = nil,
|
||||
dango_glutton = nil,
|
||||
@@ -56,60 +55,60 @@ this.list = {
|
||||
};
|
||||
|
||||
local dango_ids = {
|
||||
dango_polisher = 1,
|
||||
dango_rider = 2,
|
||||
-- dango_polisher = 1,
|
||||
-- dango_rider = 2,
|
||||
dango_adrenaline = 3,
|
||||
dango_carver_lo = 4,
|
||||
dango_carver_hi = 5,
|
||||
dango_medic_lo = 6,
|
||||
dango_medic_hi = 7,
|
||||
dango_fighter = 8,
|
||||
dango_pyro = 9,
|
||||
dango_specialist = 10,
|
||||
dango_defender_lo = 11,
|
||||
dango_defender_hi = 12,
|
||||
dango_harvester = 13,
|
||||
dango_marksman = 14,
|
||||
dango_fortune_caller = 15,
|
||||
dango_miracle_worker = 16,
|
||||
dango_deflector = 17,
|
||||
dango_weakener = 18,
|
||||
dango_calculator = 19,
|
||||
dango_temper = 20,
|
||||
dango_wall_runner = 21,
|
||||
dango_slugger = 22,
|
||||
dango_money_maker = 23,
|
||||
dango_bombardier = 24,
|
||||
dango_moxie = 25,
|
||||
dango_immunizer = 26,
|
||||
dango_trainer = 27,
|
||||
-- dango_carver_lo = 4,
|
||||
-- dango_carver_hi = 5,
|
||||
-- dango_medic_lo = 6,
|
||||
-- dango_medic_hi = 7,
|
||||
-- dango_fighter = 8,
|
||||
-- dango_pyro = 9,
|
||||
-- dango_specialist = 10,
|
||||
-- dango_defender_lo = 11,
|
||||
-- dango_defender_hi = 12,
|
||||
-- dango_harvester = 13,
|
||||
-- dango_marksman = 14,
|
||||
-- dango_fortune_caller = 15,
|
||||
-- dango_miracle_worker = 16,
|
||||
-- dango_deflector = 17,
|
||||
-- dango_weakener = 18,
|
||||
-- dango_calculator = 19,
|
||||
-- dango_temper = 20,
|
||||
-- dango_wall_runner = 21,
|
||||
-- dango_slugger = 22,
|
||||
-- dango_money_maker = 23,
|
||||
-- dango_bombardier = 24,
|
||||
-- dango_moxie = 25,
|
||||
-- dango_immunizer = 26,
|
||||
-- dango_trainer = 27,
|
||||
dango_booster = 28,
|
||||
dango_feet = 29,
|
||||
dango_bulker = 30,
|
||||
-- dango_feet = 29,
|
||||
-- dango_bulker = 30,
|
||||
dango_insurance = 31,
|
||||
dango_reviver = 32,
|
||||
dango_summoner = 33,
|
||||
dango_hurler = 34,
|
||||
dango_fire_res_lo = 35,
|
||||
dango_fire_res_hi = 36,
|
||||
dango_water_res_lo = 37,
|
||||
dango_water_res_hi = 38,
|
||||
dango_thunder_res_lo = 39,
|
||||
dango_thunder_res_hi = 40,
|
||||
dango_ice_res_lo = 41,
|
||||
dango_ice_res_hi = 42,
|
||||
dango_dragon_res_lo = 43,
|
||||
dango_dragon_res_hi = 44,
|
||||
dango_gatherer = 45,
|
||||
-- dango_reviver = 32,
|
||||
-- dango_summoner = 33,
|
||||
-- dango_hurler = 34,
|
||||
-- dango_fire_res_lo = 35,
|
||||
-- dango_fire_res_hi = 36,
|
||||
-- dango_water_res_lo = 37,
|
||||
-- dango_water_res_hi = 38,
|
||||
-- dango_thunder_res_lo = 39,
|
||||
-- dango_thunder_res_hi = 40,
|
||||
-- dango_ice_res_lo = 41,
|
||||
-- dango_ice_res_hi = 42,
|
||||
-- dango_dragon_res_lo = 43,
|
||||
-- dango_dragon_res_hi = 44,
|
||||
-- dango_gatherer = 45,
|
||||
dango_glutton = 46,
|
||||
dango_bird_caller = 47,
|
||||
-- dango_bird_caller = 47,
|
||||
dango_flyer = 48,
|
||||
dango_defender = 49,
|
||||
enhanced_dango_fighter = 50,
|
||||
dango_driver = 51,
|
||||
-- enhanced_dango_fighter = 50,
|
||||
-- dango_driver = 51,
|
||||
dango_hunter = 52,
|
||||
dango_guard = 53,
|
||||
dango_shifter = 54,
|
||||
-- dango_guard = 53,
|
||||
-- dango_shifter = 54,
|
||||
dango_connector = 55,
|
||||
super_recovery_dango = 56
|
||||
};
|
||||
@@ -136,9 +135,6 @@ local is_enable_kitchen_skill_048_reduce_method = player_data_type_def:get_field
|
||||
local kitchen_skill_027_timer_field = player_data_type_def:get_field("_KitchenSkill027Timer");
|
||||
-- Dango Glutton
|
||||
local kitchen_skill_045_timer_field = player_data_type_def:get_field("_KitchenSkill045Timer");
|
||||
-- Dango Bulker
|
||||
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");
|
||||
-- Dango Insurance
|
||||
local kitchen_skill_insurance_def_up_lv3_field = player_data_type_def:get_field("_KitchenSkill_Insurance_DefUp_Lv3");
|
||||
local kitchen_skill_insurance_def_up_lv4_field = player_data_type_def:get_field("_KitchenSkill_Insurance_DefUp_Lv4");
|
||||
@@ -182,7 +178,6 @@ function this.update(player, player_data)
|
||||
end
|
||||
|
||||
this.update_dango_adrenaline();
|
||||
this.update_dango_bulker(player_data);
|
||||
this.update_dango_hunter(player_data);
|
||||
this.update_dango_insurance();
|
||||
this.update_dango_insurance_defense_up(player_data);
|
||||
@@ -211,21 +206,6 @@ function this.update_dango_adrenaline()
|
||||
buffs.update_generic(this.list, dango_skills_type_name, "dango_adrenaline", this.get_dango_name);
|
||||
end
|
||||
|
||||
function this.update_dango_bulker(player_data)
|
||||
local atk_up_buff_second = atk_up_buff_second_field:get_data(player_data);
|
||||
if atk_up_buff_second == nil then
|
||||
error_handler.report("consumables.update_dango_bulker", "Failed to access Data: atk_up_buff_second");
|
||||
return;
|
||||
end
|
||||
|
||||
if atk_up_buff_second ~= dango_bulker_attack_up then
|
||||
this.list.dango_bulker = nil;
|
||||
return;
|
||||
end
|
||||
|
||||
buffs.update_generic_buff(this.list, dango_skills_type_name, "dango_bulker", this.get_dango_name, nil, nil, player_data, atk_up_buff_second_timer_field);
|
||||
end
|
||||
|
||||
function this.update_dango_insurance()
|
||||
if singletons.player_manager == nil then
|
||||
error_handler.report("consumables.update_dango_insurance", "Failed to access Data: player_manager");
|
||||
|
||||
@@ -44,8 +44,11 @@ local ValueType = ValueType;
|
||||
local package = package;
|
||||
|
||||
this.list = {
|
||||
cutterfly = nil,
|
||||
clothfly = nil,
|
||||
stinkmink = nil,
|
||||
butterflame = nil,
|
||||
-- peepersects = nil,
|
||||
cutterfly = nil,
|
||||
ruby_wirebug = nil,
|
||||
gold_wirebug = nil
|
||||
};
|
||||
@@ -75,8 +78,8 @@ local wirebug_powerup_timer_field = player_data_type_def:get_field("_WireBugPowe
|
||||
-- Butterflame
|
||||
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");
|
||||
-- Peepersects
|
||||
local stamina_up_buff_second_timer_field = player_data_type_def:get_field("_StaminaUpBuffSecondTimer");
|
||||
-- Stinkmink
|
||||
local lead_enemy_timer_field = player_data_type_def:get_field("_LeadEnemyTimer");
|
||||
|
||||
local player_quest_base_type_def = sdk.find_type_definition("snow.player.PlayerQuestBase");
|
||||
-- Ruby/Gold Wirebugs
|
||||
@@ -88,13 +91,15 @@ local get_env_creature_name_message_method = message_manager_type_def:get_method
|
||||
function this.update(player, player_data, item_parameter)
|
||||
this.update_ruby_and_gold_wirebugs(player, player_data);
|
||||
this.update_butterflame(player_data);
|
||||
this.update_peepersects(player_data);
|
||||
|
||||
buffs.update_generic_buff(this.list, endemic_life_buffs_type_name, "cutterfly", this.get_endemic_life_name,
|
||||
nil, nil, player_data, crit_up_ec_second_timer_field);
|
||||
|
||||
buffs.update_generic_buff(this.list, endemic_life_buffs_type_name, "clothfly", this.get_endemic_life_name,
|
||||
nil, nil, player_data, def_up_buff_second_rate_timer_field);
|
||||
|
||||
buffs.update_generic_buff(this.list, endemic_life_buffs_type_name, "stinkmink", this.get_endemic_life_name,
|
||||
nil, nil, player_data, lead_enemy_timer_field);
|
||||
end
|
||||
|
||||
function this.update_ruby_and_gold_wirebugs(player, player_data)
|
||||
|
||||
@@ -44,38 +44,51 @@ local ValueType = ValueType;
|
||||
local package = package;
|
||||
|
||||
this.list = {
|
||||
attack_up = nil,
|
||||
defense_up = nil,
|
||||
stamina_use_down = nil,
|
||||
};
|
||||
|
||||
local misc_buffs_type_name = "misc_buffs";
|
||||
|
||||
-- Attack Up
|
||||
-- Might Seed +10 3min
|
||||
-- Dango Bulker + 15 30sec
|
||||
-- Chameleos Souls +15 30sec
|
||||
|
||||
-- Defense Up
|
||||
-- Adamant Seed +20 3min
|
||||
-- Chameleos Souls +20 30sec
|
||||
|
||||
-- Stamina Use Down
|
||||
-- Dash Juice 3min
|
||||
-- Peepersects 1.5min
|
||||
-- Chameleos Soul 30sec
|
||||
|
||||
local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData");
|
||||
-- Dash Juice/Peepersects
|
||||
-- Attack Up
|
||||
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");
|
||||
-- Defense Up
|
||||
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");
|
||||
-- Stamina Use Down
|
||||
local stamina_up_buff_second_timer_field = player_data_type_def:get_field("_StaminaUpBuffSecondTimer");
|
||||
-- Immunity
|
||||
local debuff_prevention_timer_field = player_data_type_def:get_field("_DebuffPreventionTimer");
|
||||
|
||||
function this.update(player, player_data)
|
||||
this.update_stamina_use_down(player_data);
|
||||
end
|
||||
buffs.update_generic_buff(this.list, misc_buffs_type_name, "stamina_use_down", this.get_misc_buff_name,
|
||||
nil, nil, player_data, stamina_up_buff_second_timer_field);
|
||||
|
||||
function this.update_stamina_use_down(player_data)
|
||||
if consumables.list.dash_juice ~= nil or endemic_life_buffs.list.peepersects ~= nil then
|
||||
this.list.stamina_use_down = nil;
|
||||
return;
|
||||
end
|
||||
buffs.update_generic_buff(this.list, misc_buffs_type_name, "attack_up", this.get_misc_buff_name,
|
||||
player_data, atk_up_buff_second_field, player_data, atk_up_buff_second_timer_field);
|
||||
|
||||
local stamina_up_buff_second_timer = stamina_up_buff_second_timer_field:get_data(player_data);
|
||||
if stamina_up_buff_second_timer == nil then
|
||||
error_handler.report("consumables.update_stamina_use_down", "Failed to access Data: stamina_up_buff_second_timer");
|
||||
return;
|
||||
end
|
||||
buffs.update_generic_buff(this.list, misc_buffs_type_name, "defense_up", this.get_misc_buff_name,
|
||||
player_data, def_up_buff_second_field, player_data, def_up_buff_second_timer_field);
|
||||
|
||||
if utils.number.is_equal(stamina_up_buff_second_timer, 0) then
|
||||
this.list.stamina_use_down = nil;
|
||||
return;
|
||||
end
|
||||
|
||||
buffs.update_generic(this.list, misc_buffs_type_name, "stamina_use_down", this.get_misc_buff_name, 1,
|
||||
stamina_up_buff_second_timer / 60, endemic_life_buffs.peepersects_duration);
|
||||
buffs.update_generic_buff(this.list, misc_buffs_type_name, "immunity", this.get_misc_buff_name,
|
||||
nil, nil, player_data, debuff_prevention_timer_field);
|
||||
end
|
||||
|
||||
function this.init_names()
|
||||
|
||||
160
reframework/autorun/MHR_Overlay/Buffs/rampage_skills.lua
Normal file
160
reframework/autorun/MHR_Overlay/Buffs/rampage_skills.lua
Normal file
@@ -0,0 +1,160 @@
|
||||
local this = {};
|
||||
|
||||
local buffs;
|
||||
local buff_UI_entity;
|
||||
local config;
|
||||
local singletons;
|
||||
local players;
|
||||
local utils;
|
||||
local language;
|
||||
local error_handler;
|
||||
local env_creature;
|
||||
local player_info;
|
||||
local time;
|
||||
local abnormal_statuses;
|
||||
|
||||
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 skills_type_name = 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;
|
||||
|
||||
this.list = {
|
||||
burst = nil,
|
||||
kushala_daora_soul = nil,
|
||||
intrepid_heart = nil,
|
||||
dereliction = nil,
|
||||
latent_power = nil,
|
||||
protective_polish = nil,
|
||||
wind_mantle = nil,
|
||||
grinder_s = nil,
|
||||
counterstrike = nil,
|
||||
affinity_sliding = nil,
|
||||
coalescence = nil,
|
||||
adrenaline_rush = nil,
|
||||
wall_runner = nil,
|
||||
offensive_guard = nil,
|
||||
hellfire_cloak = nil,
|
||||
agitator = nil,
|
||||
furious = nil,
|
||||
status_trigger = nil,
|
||||
heaven_sent = nil,
|
||||
heroics = nil,
|
||||
resuscitate = nil,
|
||||
maximum_might = nil,
|
||||
bloodlust = nil,
|
||||
frenzied_bloodlust = nil,
|
||||
peak_performance = nil,
|
||||
dragonheart = nil,
|
||||
resentment = nil,
|
||||
bladescale_hone = nil,
|
||||
spiribirds_call = nil,
|
||||
embolden = nil,
|
||||
berserk = nil,
|
||||
powder_mantle_red = nil,
|
||||
powder_mantle_blue = nil,
|
||||
strife = nil,
|
||||
inspiration = nil,
|
||||
blood_awakening = nil
|
||||
};
|
||||
|
||||
local rampage_skills_type_name = "rampage_skills";
|
||||
|
||||
local rampage_skill_ids = {
|
||||
chameleos_soul = 250,
|
||||
kushala_daora_soul = 251,
|
||||
};
|
||||
|
||||
local kushara_daora_soul_breakpoint = 5;
|
||||
|
||||
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 player_data_type_def = sdk.find_type_definition("snow.player.PlayerData");
|
||||
-- Kushala Daora Soul
|
||||
local hyakuryu_dragon_power_up_count_field = player_data_type_def:get_field("_HyakuryuDragonPowerUpCnt");
|
||||
local hyakuryu_dragon_power_up_timer_field = player_data_type_def:get_field("_HyakuryuDragonPowerUpTimer");
|
||||
-- Chameleos Soul
|
||||
local hyakuryu_onazuti_power_up_interval_field = player_data_type_def:get_field("_HyakuryuHyakuryuOnazutiPowerUpInterval");
|
||||
|
||||
local data_shortcut_type_def = sdk.find_type_definition("snow.data.DataShortcut");
|
||||
local get_name_method = data_shortcut_type_def:get_method("getName(snow.data.DataDef.PlHyakuryuSkillId)");
|
||||
|
||||
function this.update(player_data)
|
||||
--local item_parameter = get_ref_item_parameter_method:call(singletons.player_manager);
|
||||
--if item_parameter == nil then
|
||||
-- error_handler.report("skills.update", "Failed to access Data: item_parameter");
|
||||
-- return;
|
||||
--end
|
||||
|
||||
buffs.update_generic_buff(this.list, rampage_skills_type_name, "kushala_daora_soul", this.get_skill_name,
|
||||
player_data, hyakuryu_dragon_power_up_count_field, player_data, hyakuryu_dragon_power_up_timer_field, nil, nil, false, nil, {kushara_daora_soul_breakpoint});
|
||||
|
||||
buffs.update_generic_buff(this.list, rampage_skills_type_name, "chameleos_soul", this.get_skill_name,
|
||||
nil, nil, player_data, hyakuryu_onazuti_power_up_interval_field);
|
||||
end
|
||||
|
||||
function this.init_names()
|
||||
for rampage_skill_key, skill in pairs(this.list) do
|
||||
skill.name = this.get_skill_name(rampage_skill_key);
|
||||
end
|
||||
end
|
||||
|
||||
function this.get_skill_name(rampage_skill_key)
|
||||
local rampage_skill_name = get_name_method:call(nil, rampage_skill_ids[rampage_skill_key]);
|
||||
if rampage_skill_name == nil then
|
||||
error_handler.report("skills.get_skill_name", string.format("Failed to access Data: %s_name", rampage_skill_key));
|
||||
return rampage_skill_key;
|
||||
end
|
||||
|
||||
return rampage_skill_name;
|
||||
end
|
||||
|
||||
function this.init_dependencies()
|
||||
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");
|
||||
language = require("MHR_Overlay.Misc.language");
|
||||
error_handler = require("MHR_Overlay.Misc.error_handler");
|
||||
env_creature = require("MHR_Overlay.Endemic_Life.env_creature");
|
||||
player_info = require("MHR_Overlay.Misc.player_info");
|
||||
time = require("MHR_Overlay.Game_Handler.time");
|
||||
abnormal_statuses = require("MHR_Overlay.Buffs.abnormal_statuses");
|
||||
end
|
||||
|
||||
function this.init_module()
|
||||
end
|
||||
|
||||
return this;
|
||||
@@ -47,7 +47,6 @@ local package = package;
|
||||
|
||||
this.list = {
|
||||
burst = nil,
|
||||
kushala_daora_soul = nil,
|
||||
intrepid_heart = nil,
|
||||
dereliction = nil,
|
||||
latent_power = nil,
|
||||
@@ -74,7 +73,14 @@ this.list = {
|
||||
dragonheart = nil,
|
||||
resentment = nil,
|
||||
bladescale_hone = nil,
|
||||
spiribirds_call = nil
|
||||
spiribirds_call = nil,
|
||||
embolden = nil,
|
||||
berserk = nil,
|
||||
powder_mantle_red = nil,
|
||||
powder_mantle_blue = nil,
|
||||
strife = nil,
|
||||
inspiration = nil,
|
||||
blood_awakening = nil
|
||||
};
|
||||
|
||||
local skills_type_name = "skills";
|
||||
@@ -200,7 +206,7 @@ local skill_data_list = {
|
||||
-- defiance = { id = 118 },
|
||||
-- sneak_attack = { id = 119 },
|
||||
adrenaline_rush = { id = 120 },
|
||||
-- embolden = { id = 121 },
|
||||
embolden = { id = 121 },
|
||||
-- redirection = { id = 122 },
|
||||
spiribirds_call = { id = 123 },
|
||||
-- charge_master = { id = 124 },
|
||||
@@ -216,35 +222,27 @@ local skill_data_list = {
|
||||
status_trigger = { id = 134 },
|
||||
intrepid_heart = { id = 135 },
|
||||
-- buildup_boost = { id = 136 },
|
||||
-- berserk = { id = 137 },
|
||||
berserk = { id = 137 },
|
||||
wind_mantle = { id = 138 },
|
||||
-- powder_mantle = { id = 139 },
|
||||
-- frostcraft = { id = 140 },
|
||||
-- dragon_conversion = { id = 141 },
|
||||
heaven_sent = { id = 142 },
|
||||
frenzied_bloodlust = { id = 143 },
|
||||
-- blood_awakening = { id = 144 },
|
||||
-- strife = { id = 145 },
|
||||
blood_awakening = { id = 144 },
|
||||
strife = { id = 145, level = 0, is_equipped = false },
|
||||
-- shock_absorber = { id = 146 },
|
||||
-- inspiration = { id = 147 },
|
||||
inspiration = { id = 147 },
|
||||
}
|
||||
|
||||
local burst_breakpoints = {5};
|
||||
local kushara_daora_soul_breakpoint = 5;
|
||||
|
||||
local intrepid_heart_minimal_value = 400;
|
||||
local dereliction_breakpoints = {100, 50};
|
||||
|
||||
local maximum_might_delay_timer = nil;
|
||||
local maximum_might_previous_timer_value = 0;
|
||||
|
||||
local frenzied_bloodlust_duration = 0;
|
||||
local frenzied_bloodlust_sheathed_duration = 0;
|
||||
|
||||
local dragonheart_breakpoints = {0.5, 0.5, 0.7, 0.7, 0.8};
|
||||
|
||||
local spiribirds_call_duration = 60;
|
||||
|
||||
local wind_mantle_duration = 15;
|
||||
local burst_breakpoints = { 5 };
|
||||
local dereliction_breakpoints = { 100, 50 };
|
||||
local dragonheart_breakpoints = { 0.5, 0.5, 0.7, 0.7, 0.8 };
|
||||
local strife_breakpoints = { { 10 }, { 15 }, { 20 } };
|
||||
local blood_awakening_breakpoints = { 2 };
|
||||
local wind_mantle_breakpoints = { 20, 10 }; -- Sword & Shield, Lance, Hammer, Switch Axe, Insect Glaive, Long Sword, Hunting Horn
|
||||
local wind_mantle_special_breakpoints = {
|
||||
[0] = { 10, 5 }, -- Great Sword
|
||||
@@ -254,7 +252,17 @@ local wind_mantle_special_breakpoints = {
|
||||
[9] = { 40, 20 }, -- Dual Blades
|
||||
[11] = { 30, 15 }, -- Charge Blade
|
||||
[13] = { 60, 30 }, -- Bow
|
||||
}
|
||||
};
|
||||
|
||||
local maximum_might_delay_timer = nil;
|
||||
local maximum_might_previous_timer_value = 0;
|
||||
|
||||
local frenzied_bloodlust_duration = 0;
|
||||
local frenzied_bloodlust_sheathed_duration = 0;
|
||||
|
||||
local spiribirds_call_duration = 60;
|
||||
|
||||
local wind_mantle_duration = 15;
|
||||
|
||||
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");
|
||||
@@ -266,9 +274,6 @@ local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData");
|
||||
-- Burst
|
||||
local rengeki_power_up_count_field = player_data_type_def:get_field("_RengekiPowerUpCnt");
|
||||
local rengeki_power_up_timer_field = player_data_type_def:get_field("_RengekiPowerUpTimer");
|
||||
-- Kushala Daora Soul
|
||||
local hyakuryu_dragon_power_up_count_field = player_data_type_def:get_field("_HyakuryuDragonPowerUpCnt");
|
||||
local hyakuryu_dragon_power_up_timer_field = player_data_type_def:get_field("_HyakuryuDragonPowerUpTimer");
|
||||
-- Intrepid Heart
|
||||
local equip_skill_223_accumulator_field = player_data_type_def:get_field("_EquipSkill223Accumulator");
|
||||
-- Derelection
|
||||
@@ -304,6 +309,13 @@ local r_vital_field = player_data_type_def:get_field("_r_Vital");
|
||||
local equip_skill_222_timer_field = player_data_type_def:get_field("_EquipSkill222_Timer");
|
||||
-- Spiritbird's Call
|
||||
local equip_skill_211_timer_field = player_data_type_def:get_field("_EquipSkill211_Timer");
|
||||
-- Powder Mantle
|
||||
local equip_skill_227_state_field = player_data_type_def:get_field("_EquipSkill227State");
|
||||
local equip_skill_227_state_timer_field = player_data_type_def:get_field("_EquipSkill227StateTimer");
|
||||
-- Inspiration
|
||||
local equip_skill_235_atk_up_second_timer_field = player_data_type_def:get_field("_EquipSkill235AtkUpSecondTimer");
|
||||
-- Blood Awakening
|
||||
local equip_skill_232_timer_field = player_data_type_def:get_field("_EquipSkill232Timer");
|
||||
|
||||
|
||||
|
||||
@@ -317,6 +329,10 @@ local power_freedom_timer_field = player_base_type_def:get_field("_PowerFreedomT
|
||||
local sharpness_gauge_boost_timer_field = player_base_type_def:get_field("_SharpnessGaugeBoostTimer");
|
||||
-- Heroics
|
||||
local is_predicament_power_up_method = player_base_type_def:get_method("isPredicamentPowerUp");
|
||||
-- Berserk
|
||||
local get_is_enable_equip_skill_225_method = player_base_type_def:get_method("get_IsEnableEquipSkill225");
|
||||
-- Dragon Conversion
|
||||
local equip_skill_229_sum_resist_field = player_base_type_def:get_field("_EquipSkill229SumResist");
|
||||
-- Resuscitate
|
||||
local is_debuff_state_method = player_base_type_def:get_method("isDebuffState");
|
||||
|
||||
@@ -326,14 +342,30 @@ local get_skill_data_method = player_skill_list_type_def:get_method("getSkillDat
|
||||
local skill_data_type_def = get_skill_data_method:get_return_type();
|
||||
local skill_lv_field = skill_data_type_def:get_field("SkillLv");
|
||||
|
||||
|
||||
|
||||
local player_quest_base_type_def = sdk.find_type_definition("snow.player.PlayerQuestBase");
|
||||
-- Wind Mantle
|
||||
local is_equip_skill_226_enable_field = player_quest_base_type_def:get_field("_IsEquipSkill226Enable");
|
||||
local equip_skill_226_attack_count_field = player_quest_base_type_def:get_field("_EquipSkill226AttackCount");
|
||||
local equip_skill_226_attack_off_timer_field = player_quest_base_type_def:get_field("_EquipSkill226AttackOffTimer");
|
||||
-- Heaven-Sent
|
||||
local is_active_equip_skill_230_method = player_quest_base_type_def:get_method("isActiveEquipSkill230");
|
||||
-- Frenzied Bloodlust
|
||||
local get_hunter_wire_skill_231_num_method = player_quest_base_type_def:get_method("get_HunterWireSkill231Num");
|
||||
-- Embolden
|
||||
local get_active_equip_209_method = player_quest_base_type_def:get_method("getActiveEquipSkill209");
|
||||
-- Dragon Conversion
|
||||
local equip_skill_229_use_up_flag_field = player_quest_base_type_def:get_field("_EquipSkill229UseUpFlg");
|
||||
-- Strife
|
||||
local get_affinity_equip_skill_233_method = player_quest_base_type_def:get_method("getAffinityEquipSkill233");
|
||||
-- Blood Awakening
|
||||
local get_equip_skill_232_lv_method = player_quest_base_type_def:get_method("getEquipSkill232Lv");
|
||||
local get_equip_skill_232_param_method = player_quest_base_type_def:get_method("getEquipSkill232Param");
|
||||
|
||||
local equip_skill_232_param_type_def = get_equip_skill_232_param_method:get_return_type();
|
||||
local activation_time_lv_1_field = equip_skill_232_param_type_def:get_field("_ActivationTime_Lv1");
|
||||
local activation_time_lv_2_field = equip_skill_232_param_type_def:get_field("_ActivationTime_Lv2");
|
||||
|
||||
local bow_type_def = sdk.find_type_definition("snow.player.Bow");
|
||||
local _equip_skill_216_bottle_up_timer_field = bow_type_def:get_field("_EquipSkill216_BottleUpTimer");
|
||||
@@ -359,6 +391,8 @@ function this.update(player, player_data, weapon_type)
|
||||
this.update_resentment(player_data);
|
||||
this.update_bladescale_hone(player, weapon_type);
|
||||
this.update_spiribirds_call(player_data);
|
||||
this.update_powder_mantle(player_data);
|
||||
this.update_blood_awakening(player, player_data);
|
||||
|
||||
this.update_generic_skill("dereliction", player_data, symbiosis_skill_lost_vital_field,
|
||||
nil, nil, nil, nil, true, nil, dereliction_breakpoints);
|
||||
@@ -366,9 +400,6 @@ function this.update(player, player_data, weapon_type)
|
||||
this.update_generic_skill("burst", player_data, rengeki_power_up_count_field,
|
||||
player_data, rengeki_power_up_timer_field, nil, nil, false, nil, burst_breakpoints);
|
||||
|
||||
this.update_generic_skill("kushala_daora_soul", player_data, hyakuryu_dragon_power_up_count_field,
|
||||
player_data, hyakuryu_dragon_power_up_timer_field, nil, nil, false, nil, {kushara_daora_soul_breakpoint});
|
||||
|
||||
this.update_generic_skill("intrepid_heart", player_data, equip_skill_223_accumulator_field,
|
||||
nil, nil, nil, nil, true, intrepid_heart_minimal_value);
|
||||
|
||||
@@ -382,14 +413,21 @@ function this.update(player, player_data, weapon_type)
|
||||
this.update_generic_skill("wall_runner", nil, nil, player_data, wall_run_powerup_timer_field);
|
||||
this.update_generic_skill("offensive_guard", nil, nil, player_data, equip_skill_036_timer_field);
|
||||
this.update_generic_skill("hellfire_cloak", nil, nil, player_data, onibi_powerup_timer_field);
|
||||
this.update_generic_skill("agitator", nil, nil, player_data, challenge_timer_field, true);
|
||||
this.update_generic_skill("agitator", nil, nil, player_data, challenge_timer_field, nil, nil, true);
|
||||
this.update_generic_skill("furious", nil, nil, player_data, furious_skill_stamina_buff_second_timer_field);
|
||||
this.update_generic_skill("status_trigger", nil, nil, player_data, equip_skill_222_timer_field);
|
||||
this.update_generic_skill("inspiration", nil, nil, player_data, equip_skill_235_atk_up_second_timer_field);
|
||||
|
||||
this.update_generic_skill("heaven_sent", player, is_active_equip_skill_230_method);
|
||||
this.update_generic_skill("heroics", player, is_predicament_power_up_method);
|
||||
this.update_generic_skill("resuscitate", player, is_debuff_state_method);
|
||||
|
||||
this.update_generic_skill("embolden", player, get_active_equip_209_method);
|
||||
this.update_generic_skill("berserk", player, get_is_enable_equip_skill_225_method);
|
||||
this.update_generic_skill("dragon_conversion_elemental_attack_up", player, equip_skill_229_sum_resist_field);
|
||||
this.update_generic_skill("dragon_conversion_elemental_res_up", player, equip_skill_229_use_up_flag_field);
|
||||
|
||||
this.update_generic_skill("strife", player, get_affinity_equip_skill_233_method,
|
||||
nil, nil, nil, nil, nil, nil, strife_breakpoints[skill_data_list.strife.level]);
|
||||
end
|
||||
|
||||
function this.update_generic_skill(skill_key, value_owner, value_holder, timer_owner, timer_holder, duration_owner, duration_holder,
|
||||
@@ -444,17 +482,23 @@ function this.update_equipped_skill_data(player)
|
||||
end
|
||||
|
||||
function this.update_wind_mantle(player, weapon_type)
|
||||
local wind_mantle_timer = equip_skill_226_attack_off_timer_field:get_data(player);
|
||||
if wind_mantle_timer == nil then
|
||||
error_handler.report("skills.update_wind_mantle", "Failed to access Data: wind_mantle_timer");
|
||||
local is_wind_mantle_enable = is_equip_skill_226_enable_field:get_data(player);
|
||||
if is_wind_mantle_enable == nil then
|
||||
error_handler.report("skills.update_wind_mantle", "Failed to access Data: is_wind_mantle_enable");
|
||||
return;
|
||||
end
|
||||
|
||||
if utils.number.is_equal(wind_mantle_timer, 0) then
|
||||
if not is_wind_mantle_enable then
|
||||
this.list.wind_mantle = nil;
|
||||
return;
|
||||
end
|
||||
|
||||
local wind_mantle_timer = equip_skill_226_attack_off_timer_field:get_data(player);
|
||||
if wind_mantle_timer == nil then
|
||||
error_handler.report("skills.update_wind_mantle", "Failed to access Data: wind_mantle_timer");
|
||||
return;
|
||||
end
|
||||
|
||||
local wind_mantle_value = equip_skill_226_attack_count_field:get_data(player);
|
||||
if wind_mantle_value == nil then
|
||||
error_handler.report("skills.update_wind_mantle", "Failed to access Data: wind_mantle_value");
|
||||
@@ -685,6 +729,42 @@ function this.update_spiribirds_call(player_data)
|
||||
buffs.update_generic(this.list, skills_type_name, "spiribirds_call", this.get_skill_name, 1, timer, spiribirds_call_duration);
|
||||
end
|
||||
|
||||
function this.update_powder_mantle(player_data)
|
||||
this.update_generic_skill("powder_mantle_blue", player_data, equip_skill_227_state_field,
|
||||
player_data, equip_skill_227_state_timer_field, nil, nil, nil, 2);
|
||||
|
||||
if this.list.powder_mantle_blue ~= nil then
|
||||
this.list.powder_mantle_red = nil;
|
||||
return;
|
||||
end
|
||||
|
||||
this.update_generic_skill("powder_mantle_red", player_data, equip_skill_227_state_field,
|
||||
player_data, equip_skill_227_state_timer_field, nil, nil, nil);
|
||||
end
|
||||
|
||||
function this.update_blood_awakening(player, player_data)
|
||||
this.update_generic_skill("blood_awakening", player, get_equip_skill_232_lv_method,
|
||||
player_data, equip_skill_232_timer_field,
|
||||
nil, nil,
|
||||
nil, nil, blood_awakening_breakpoints);
|
||||
|
||||
local blood_awakening = this.list.blood_awakening;
|
||||
if this.list.blood_awakening == nil then
|
||||
return;
|
||||
end
|
||||
|
||||
local activation_time_field = activation_time_lv_1_field;
|
||||
if blood_awakening.level == 2 then
|
||||
activation_time_field = activation_time_lv_2_field;
|
||||
end
|
||||
|
||||
local blood_awakening_param = get_equip_skill_232_param_method:call(player);
|
||||
|
||||
local blood_awakening_duration = activation_time_field:get_data(blood_awakening_param);
|
||||
|
||||
blood_awakening.duration = blood_awakening_duration / 60;
|
||||
end
|
||||
|
||||
function this.init_names()
|
||||
for skill_key, skill in pairs(this.list) do
|
||||
skill.name = this.get_skill_name(skill_key);
|
||||
|
||||
@@ -43,6 +43,7 @@ this.list = {};
|
||||
|
||||
this.creature_ids = {
|
||||
clothfly = 7,
|
||||
stinkmink = 23,
|
||||
butterflame = 28,
|
||||
peepersects = 29,
|
||||
cutterfly = 50,
|
||||
|
||||
@@ -204,6 +204,7 @@ this.default_language = {
|
||||
defense_down = "Defense Down",
|
||||
resistance_down = "Resistance Down",
|
||||
|
||||
falling_asleep = "Falling Asleep",
|
||||
tremor = "Tremor",
|
||||
roar = "Roar",
|
||||
webbed = "Webbed",
|
||||
@@ -222,7 +223,10 @@ this.default_language = {
|
||||
},
|
||||
|
||||
skills = {
|
||||
kushala_daora_soul = "Kushala Daora Soul"
|
||||
powder_mantle_red = "Powder Mantle (Red)",
|
||||
powder_mantle_blue = "Powder Mantle (Blue)",
|
||||
dragon_conversion_elemental_attack_up = "Dragon Conversion Elem. Atk Up",
|
||||
dragon_conversion_elemental_res_up = "Dragon Conversion Elem. Res Up",
|
||||
},
|
||||
|
||||
weapon_skills = {
|
||||
@@ -277,7 +281,10 @@ this.default_language = {
|
||||
},
|
||||
|
||||
misc_buffs = {
|
||||
stamina_use_down = "Stamina Use Down"
|
||||
attack_up = "Attack Up",
|
||||
defense_up = "Defense Up",
|
||||
stamina_use_down = "Stamina Use Down",
|
||||
immunity = "Immunity"
|
||||
},
|
||||
|
||||
UI = {
|
||||
|
||||
@@ -15,6 +15,7 @@ local abnormal_statuses;
|
||||
local otomo_moves;
|
||||
local weapon_skills;
|
||||
local misc_buffs;
|
||||
local rampage_skills;
|
||||
|
||||
local sdk = sdk;
|
||||
local tostring = tostring;
|
||||
@@ -137,15 +138,26 @@ function this.update()
|
||||
::continue8::
|
||||
end
|
||||
|
||||
for key, rampage_skill in pairs(rampage_skills.list) do
|
||||
if not rampage_skill.is_active then
|
||||
goto continue9;
|
||||
end
|
||||
|
||||
table.insert(_displayed_buffs, rampage_skill);
|
||||
|
||||
::continue9::
|
||||
end
|
||||
|
||||
for key, misc_buffs in pairs(misc_buffs.list) do
|
||||
if not misc_buffs.is_active then
|
||||
goto continue9;
|
||||
goto continue10;
|
||||
end
|
||||
|
||||
table.insert(_displayed_buffs, misc_buffs);
|
||||
|
||||
::continue9::
|
||||
::continue10::
|
||||
end
|
||||
|
||||
|
||||
displayed_buffs = this.sort_buffs(_displayed_buffs, cached_config);
|
||||
end
|
||||
@@ -232,6 +244,7 @@ function this.init_dependencies()
|
||||
otomo_moves = require("MHR_Overlay.Buffs.otomo_moves");
|
||||
weapon_skills = require("MHR_Overlay.Buffs.weapon_skills");
|
||||
misc_buffs = require("MHR_Overlay.Buffs.misc_buffs");
|
||||
rampage_skills = require("MHR_Overlay.Buffs.rampage_skills");
|
||||
end
|
||||
|
||||
function this.init_module()
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
"exhaust": "Exhaust",
|
||||
"fall_otomo_trap": "Fall Buddy Trap",
|
||||
"fall_trap": "Fall Trap",
|
||||
"falling_asleep": "Falling Asleep",
|
||||
"fireblight": "Fireblight",
|
||||
"flash": "Flash",
|
||||
"frenzy": "Frenzy",
|
||||
@@ -368,6 +369,9 @@
|
||||
},
|
||||
"font_name": "",
|
||||
"misc_buffs": {
|
||||
"attack_up": "Attack Up",
|
||||
"defense_up": "Defense Up",
|
||||
"immunity": "Immunity",
|
||||
"stamina_use_down": "Stamina Use Down"
|
||||
},
|
||||
"parts": {
|
||||
@@ -440,7 +444,11 @@
|
||||
"wings": "Wings"
|
||||
},
|
||||
"skills": {
|
||||
"kushala_daora_soul": "Kushala Daora Soul"
|
||||
"dragon_conversion_elemental_attack_up": "Dragon Conversion Elem. Atk Up",
|
||||
"dragon_conversion_elemental_res_up": "Dragon Conversion Elem. Res Up",
|
||||
"kushala_daora_soul": "Kushala Daora Soul",
|
||||
"powder_mantle_blue": "Powder Mantle (Blue)",
|
||||
"powder_mantle_red": "Powder Mantle (Red)"
|
||||
},
|
||||
"stats": {
|
||||
"affinity": "Affinity",
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
"exhaust": "疲労",
|
||||
"fall_otomo_trap": "オトモ落とし穴",
|
||||
"fall_trap": "落とし穴",
|
||||
"falling_asleep": "Falling Asleep",
|
||||
"fireblight": "火属性やられ",
|
||||
"flash": "目くらまし",
|
||||
"frenzy": "Frenzy",
|
||||
@@ -458,6 +459,10 @@
|
||||
"wind_pressure_negated": "Wind Pressure Negated"
|
||||
},
|
||||
"misc_buffs": {
|
||||
"attack_up": "Attack Up",
|
||||
"defense_down": "Defense Down",
|
||||
"defense_up": "Defense Up",
|
||||
"immunity": "Immunity",
|
||||
"stamina_use_down": "Stamina Use Down"
|
||||
},
|
||||
"otomo_moves": {
|
||||
@@ -544,6 +549,8 @@
|
||||
"coalescence": "Coalescence",
|
||||
"counterstrike": "Counterstrike",
|
||||
"dereliction": "Dereliction",
|
||||
"dragon_conversion_elemental_attack_up": "Dragon Conversion Elem. Attack Up",
|
||||
"dragon_conversion_elemental_res_up": "Dragon Conversion Elem. Res. Up",
|
||||
"dragonheart": "Dragonheart",
|
||||
"frenzied_bloodlust": "Frenzied Bloodlust",
|
||||
"furious": "Furious",
|
||||
@@ -557,6 +564,8 @@
|
||||
"maximum_might": "Maximum Might",
|
||||
"offensive_guard": "Offensive Guard",
|
||||
"peak_performance": "Peak Performance",
|
||||
"powder_mantle_blue": "Powder Mantle (Blue)",
|
||||
"powder_mantle_red": "Powder Mantle (Red)",
|
||||
"protective_polish": "Protective Polish",
|
||||
"resentment": "Resentment",
|
||||
"resuscitate": "Resuscitate",
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
"exhaust": "탈진",
|
||||
"fall_otomo_trap": "동반자 구멍 함정",
|
||||
"fall_trap": "구멍 함정",
|
||||
"falling_asleep": "Falling Asleep",
|
||||
"fireblight": "불바위구리",
|
||||
"flash": "섬광",
|
||||
"frenzy": "Frenzy",
|
||||
@@ -459,6 +460,10 @@
|
||||
"wind_pressure_negated": "Wind Pressure Negated"
|
||||
},
|
||||
"misc_buffs": {
|
||||
"attack_up": "Attack Up",
|
||||
"defense_down": "Defense Down",
|
||||
"defense_up": "Defense Up",
|
||||
"immunity": "Immunity",
|
||||
"stamina_use_down": "Stamina Use Down"
|
||||
},
|
||||
"otomo_moves": {
|
||||
@@ -545,6 +550,8 @@
|
||||
"coalescence": "Coalescence",
|
||||
"counterstrike": "Counterstrike",
|
||||
"dereliction": "Dereliction",
|
||||
"dragon_conversion_elemental_attack_up": "Dragon Conversion Elem. Attack Up",
|
||||
"dragon_conversion_elemental_res_up": "Dragon Conversion Elem. Res. Up",
|
||||
"dragonheart": "Dragonheart",
|
||||
"frenzied_bloodlust": "Frenzied Bloodlust",
|
||||
"furious": "Furious",
|
||||
@@ -558,6 +565,8 @@
|
||||
"maximum_might": "Maximum Might",
|
||||
"offensive_guard": "Offensive Guard",
|
||||
"peak_performance": "Peak Performance",
|
||||
"powder_mantle_blue": "Powder Mantle (Blue)",
|
||||
"powder_mantle_red": "Powder Mantle (Red)",
|
||||
"protective_polish": "Protective Polish",
|
||||
"resentment": "Resentment",
|
||||
"resuscitate": "Resuscitate",
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
"exhaust": "Усталость",
|
||||
"fall_otomo_trap": "Волчья яма спутника",
|
||||
"fall_trap": "Волчья яма",
|
||||
"falling_asleep": "Falling Asleep",
|
||||
"fireblight": "Огненная порча",
|
||||
"flash": "Оглушение",
|
||||
"frenzy": "Frenzy",
|
||||
@@ -459,6 +460,10 @@
|
||||
"wind_pressure_negated": "Wind Pressure Negated"
|
||||
},
|
||||
"misc_buffs": {
|
||||
"attack_up": "Attack Up",
|
||||
"defense_down": "Defense Down",
|
||||
"defense_up": "Defense Up",
|
||||
"immunity": "Immunity",
|
||||
"stamina_use_down": "Stamina Use Down"
|
||||
},
|
||||
"otomo_moves": {
|
||||
@@ -545,6 +550,8 @@
|
||||
"coalescence": "Coalescence",
|
||||
"counterstrike": "Counterstrike",
|
||||
"dereliction": "Dereliction",
|
||||
"dragon_conversion_elemental_attack_up": "Dragon Conversion Elem. Attack Up",
|
||||
"dragon_conversion_elemental_res_up": "Dragon Conversion Elem. Res. Up",
|
||||
"dragonheart": "Dragonheart",
|
||||
"frenzied_bloodlust": "Frenzied Bloodlust",
|
||||
"furious": "Furious",
|
||||
@@ -558,6 +565,8 @@
|
||||
"maximum_might": "Maximum Might",
|
||||
"offensive_guard": "Offensive Guard",
|
||||
"peak_performance": "Peak Performance",
|
||||
"powder_mantle_blue": "Powder Mantle (Blue)",
|
||||
"powder_mantle_red": "Powder Mantle (Red)",
|
||||
"protective_polish": "Protective Polish",
|
||||
"resentment": "Resentment",
|
||||
"resuscitate": "Resuscitate",
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
"exhaust": "减气",
|
||||
"fall_otomo_trap": "随从落穴陷阱",
|
||||
"fall_trap": "落穴陷阱",
|
||||
"falling_asleep": "Falling Asleep",
|
||||
"fireblight": "火异常状态",
|
||||
"flash": "闪光",
|
||||
"frenzy": "Frenzy",
|
||||
@@ -459,6 +460,10 @@
|
||||
"wind_pressure_negated": "Wind Pressure Negated"
|
||||
},
|
||||
"misc_buffs": {
|
||||
"attack_up": "Attack Up",
|
||||
"defense_down": "Defense Down",
|
||||
"defense_up": "Defense Up",
|
||||
"immunity": "Immunity",
|
||||
"stamina_use_down": "Stamina Use Down"
|
||||
},
|
||||
"otomo_moves": {
|
||||
@@ -545,6 +550,8 @@
|
||||
"coalescence": "Coalescence",
|
||||
"counterstrike": "Counterstrike",
|
||||
"dereliction": "Dereliction",
|
||||
"dragon_conversion_elemental_attack_up": "Dragon Conversion Elem. Attack Up",
|
||||
"dragon_conversion_elemental_res_up": "Dragon Conversion Elem. Res. Up",
|
||||
"dragonheart": "Dragonheart",
|
||||
"frenzied_bloodlust": "Frenzied Bloodlust",
|
||||
"furious": "Furious",
|
||||
@@ -558,6 +565,8 @@
|
||||
"maximum_might": "Maximum Might",
|
||||
"offensive_guard": "Offensive Guard",
|
||||
"peak_performance": "Peak Performance",
|
||||
"powder_mantle_blue": "Powder Mantle (Blue)",
|
||||
"powder_mantle_red": "Powder Mantle (Red)",
|
||||
"protective_polish": "Protective Polish",
|
||||
"resentment": "Resentment",
|
||||
"resuscitate": "Resuscitate",
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
"exhaust": "疲勞",
|
||||
"fall_otomo_trap": "隨從地洞陷阱",
|
||||
"fall_trap": "地洞陷阱",
|
||||
"falling_asleep": "Falling Asleep",
|
||||
"fireblight": "火屬性異常",
|
||||
"flash": "失明",
|
||||
"frenzy": "Frenzy",
|
||||
@@ -459,6 +460,10 @@
|
||||
"wind_pressure_negated": "Wind Pressure Negated"
|
||||
},
|
||||
"misc_buffs": {
|
||||
"attack_up": "Attack Up",
|
||||
"defense_down": "Defense Down",
|
||||
"defense_up": "Defense Up",
|
||||
"immunity": "Immunity",
|
||||
"stamina_use_down": "Stamina Use Down"
|
||||
},
|
||||
"otomo_moves": {
|
||||
@@ -545,6 +550,8 @@
|
||||
"coalescence": "Coalescence",
|
||||
"counterstrike": "Counterstrike",
|
||||
"dereliction": "Dereliction",
|
||||
"dragon_conversion_elemental_attack_up": "Dragon Conversion Elem. Attack Up",
|
||||
"dragon_conversion_elemental_res_up": "Dragon Conversion Elem. Res. Up",
|
||||
"dragonheart": "Dragonheart",
|
||||
"frenzied_bloodlust": "Frenzied Bloodlust",
|
||||
"furious": "Furious",
|
||||
@@ -558,6 +565,8 @@
|
||||
"maximum_might": "Maximum Might",
|
||||
"offensive_guard": "Offensive Guard",
|
||||
"peak_performance": "Peak Performance",
|
||||
"powder_mantle_blue": "Powder Mantle (Blue)",
|
||||
"powder_mantle_red": "Powder Mantle (Red)",
|
||||
"protective_polish": "Protective Polish",
|
||||
"resentment": "Resentment",
|
||||
"resuscitate": "Resuscitate",
|
||||
|
||||
Reference in New Issue
Block a user