mirror of
https://github.com/GreenComfyTea/MHR-Overlay.git
synced 2026-01-24 12:28:03 -08:00
Pull Most Buff Name from the Game
+ Solve Consumable Buff Timer Collisions
This commit is contained in:
@@ -53,6 +53,7 @@ local dangos = require("MHR_Overlay.Buffs.dangos");
|
|||||||
local abnormal_statuses = require("MHR_Overlay.Buffs.abnormal_statuses");
|
local abnormal_statuses = require("MHR_Overlay.Buffs.abnormal_statuses");
|
||||||
local otomo_moves = require("MHR_Overlay.Buffs.otomo_moves");
|
local otomo_moves = require("MHR_Overlay.Buffs.otomo_moves");
|
||||||
local weapon_skills = require("MHR_Overlay.Buffs.weapon_skills");
|
local weapon_skills = require("MHR_Overlay.Buffs.weapon_skills");
|
||||||
|
local misc_buffs = require("MHR_Overlay.Buffs.misc_buffs");
|
||||||
|
|
||||||
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");
|
||||||
@@ -135,6 +136,7 @@ dangos.init_dependencies();
|
|||||||
abnormal_statuses.init_dependencies();
|
abnormal_statuses.init_dependencies();
|
||||||
otomo_moves.init_dependencies();
|
otomo_moves.init_dependencies();
|
||||||
weapon_skills.init_dependencies();
|
weapon_skills.init_dependencies();
|
||||||
|
misc_buffs.init_dependencies();
|
||||||
|
|
||||||
damage_hook.init_dependencies();
|
damage_hook.init_dependencies();
|
||||||
players.init_dependencies();
|
players.init_dependencies();
|
||||||
@@ -212,6 +214,7 @@ dangos.init_module();
|
|||||||
abnormal_statuses.init_module();
|
abnormal_statuses.init_module();
|
||||||
otomo_moves.init_module();
|
otomo_moves.init_module();
|
||||||
weapon_skills.init_module();
|
weapon_skills.init_module();
|
||||||
|
misc_buffs.init_module();
|
||||||
|
|
||||||
damage_hook.init_module();
|
damage_hook.init_module();
|
||||||
players.init_module();
|
players.init_module();
|
||||||
|
|||||||
@@ -162,36 +162,34 @@ function this.update(player, player_data)
|
|||||||
this.update_muck(player);
|
this.update_muck(player);
|
||||||
this.update_frenzy_infection(player);
|
this.update_frenzy_infection(player);
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "fireblight", 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, "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", nil, nil, player, fire_duration_timer);
|
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, "waterblight", nil, nil, player, water_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, "iceblight", nil, nil, player, ice_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, "thunderblight", nil, nil, player, thunder_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, "dragonblight", nil, nil, player, dragon_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, "blastblight", nil, nil, player, bomb_duration_timer);
|
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, "hellfireblight", nil, nil, player, oni_bomb_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, "bloodblight", nil, nil, player, mystery_debuff_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, "stun", nil, nil, player, stun_duration_timer);
|
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, "paralysis", nil, nil, player, paralyze_duration_timer);
|
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, "sleep", nil, nil, player, sleep_duration_timer);
|
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "defense_down", nil, nil, player, defense_down_duration_timer);
|
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, "resistance_down", nil, nil, player, resistance_down_duration_timer);
|
buffs.update_generic_buff(this.list, ailments_type_name, "frostblight", this.get_abnormal_status_name, player, get_is_frozen_damage_method);
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "tremor", nil, nil, player, quake_duration_timer);
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "roar", nil, nil, player, ear_duration_timer);
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "webbed", nil, nil, player, beto_duration_timer);
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "stench", nil, nil, player, stink_duration_timer);
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "leeched", nil, nil, player, blooding_enemy_timer, nil, nil, true);
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "bleeding", nil, nil, player, bleeding_debuff_timer);
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "frenzy", nil, nil, player, virus_onset_timer_field);
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "frenzy_overcome", nil, nil, player_data, virus_overcome_buff_timer_field);
|
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "engulfed", player, get_is_vacuum_damage_method);
|
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "frostblight", player, get_is_frozen_damage_method);
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_poison(player)
|
function this.update_poison(player)
|
||||||
@@ -208,10 +206,10 @@ function this.update_poison(player)
|
|||||||
end
|
end
|
||||||
|
|
||||||
if poison_level == 1 then
|
if poison_level == 1 then
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "poison", player, poison_duration_timer);
|
buffs.update_generic_buff(this.list, ailments_type_name, "poison", this.get_abnormal_status_name, player, poison_duration_timer);
|
||||||
this.list.deadly_poison = nil;
|
this.list.deadly_poison = nil;
|
||||||
else
|
else
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "deadly_poison", player, poison_duration_timer);
|
buffs.update_generic_buff(this.list, ailments_type_name, "deadly_poison", this.get_abnormal_status_name, player, poison_duration_timer);
|
||||||
this.list.poison = nil;
|
this.list.poison = nil;
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -230,10 +228,10 @@ function this.update_bubbleblight(player)
|
|||||||
end
|
end
|
||||||
|
|
||||||
if bubble_type == 1 then
|
if bubble_type == 1 then
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "minor_bubbleblight", player, bubble_damage_timer);
|
buffs.update_generic_buff(this.list, ailments_type_name, "minor_bubbleblight", this.get_abnormal_status_name, player, bubble_damage_timer);
|
||||||
this.list.major_bubbleblight = nil;
|
this.list.major_bubbleblight = nil;
|
||||||
else
|
else
|
||||||
buffs.update_generic_buff(this.list, ailments_type_name, "major_bubbleblight", player, bubble_damage_timer);
|
buffs.update_generic_buff(this.list, ailments_type_name, "major_bubbleblight", this.get_abnormal_status_name, player, bubble_damage_timer);
|
||||||
this.list.minor_bubbleblight = nil;
|
this.list.minor_bubbleblight = nil;
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -256,7 +254,7 @@ function this.update_muck(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(ailments_type_name, "muck");
|
buffs.update_generic(ailments_type_name, "muck", this.get_abnormal_status_name);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_frenzy_infection(player)
|
function this.update_frenzy_infection(player)
|
||||||
@@ -279,21 +277,24 @@ function this.update_frenzy_infection(player)
|
|||||||
|
|
||||||
local timer = frenzy_infected_duration - (virus_accumulator_value + virus_timer / 60);
|
local timer = frenzy_infected_duration - (virus_accumulator_value + virus_timer / 60);
|
||||||
|
|
||||||
buffs.update_generic(this.list, ailments_type_name, "frenzy_infection", 1, timer, frenzy_infected_duration);
|
buffs.update_generic(this.list, ailments_type_name, "frenzy_infection", this.get_abnormal_status_name, 1, timer, frenzy_infected_duration);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_names()
|
function this.init_names()
|
||||||
for debuff_key, debuff in pairs(this.list) do
|
for abnormal_status_key, debuff in pairs(this.list) do
|
||||||
local name = language.current_language.ailments[debuff_key];
|
debuff.name = this.get_abnormal_status_name(abnormal_status_key);
|
||||||
|
|
||||||
if name == nil then
|
|
||||||
name = debuff_key;
|
|
||||||
end
|
|
||||||
|
|
||||||
debuff.name = name;
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function this.get_abnormal_status_name(abnormal_status_key)
|
||||||
|
local abnormal_status_name = language.current_language.ailments[abnormal_status_key];
|
||||||
|
if abnormal_status_name == nil then
|
||||||
|
return abnormal_status_key;
|
||||||
|
end
|
||||||
|
|
||||||
|
return abnormal_status_name;
|
||||||
|
end
|
||||||
|
|
||||||
function this.init_dependencies()
|
function this.init_dependencies()
|
||||||
buffs = require("MHR_Overlay.Buffs.buffs");
|
buffs = require("MHR_Overlay.Buffs.buffs");
|
||||||
config = require("MHR_Overlay.Misc.config");
|
config = require("MHR_Overlay.Misc.config");
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ local dangos;
|
|||||||
local abnormal_statuses;
|
local abnormal_statuses;
|
||||||
local otomo_moves;
|
local otomo_moves;
|
||||||
local weapon_skills;
|
local weapon_skills;
|
||||||
|
local misc_buffs;
|
||||||
|
|
||||||
local sdk = sdk;
|
local sdk = sdk;
|
||||||
local tostring = tostring;
|
local tostring = tostring;
|
||||||
@@ -50,6 +51,17 @@ local os = os;
|
|||||||
local ValueType = ValueType;
|
local ValueType = ValueType;
|
||||||
local package = package;
|
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
|
||||||
|
]]
|
||||||
|
|
||||||
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
|
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
|
||||||
local get_player_method = player_manager_type_def:get_method("getPlayer");
|
local get_player_method = player_manager_type_def:get_method("getPlayer");
|
||||||
local find_master_player_method = player_manager_type_def:get_method("findMasterPlayer");
|
local find_master_player_method = player_manager_type_def:get_method("findMasterPlayer");
|
||||||
@@ -115,11 +127,7 @@ function this.init_UI(buff)
|
|||||||
end
|
end
|
||||||
|
|
||||||
function this.init_names()
|
function this.init_names()
|
||||||
consumables.init_names();
|
|
||||||
melody_effects.init_names();
|
|
||||||
endemic_life_buffs.init_names();
|
|
||||||
skills.init_names();
|
skills.init_names();
|
||||||
dangos.init_names();
|
|
||||||
abnormal_statuses.init_names();
|
abnormal_statuses.init_names();
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -170,7 +178,23 @@ function this.update()
|
|||||||
endemic_life_buffs.update(master_player, master_player_data);
|
endemic_life_buffs.update(master_player, master_player_data);
|
||||||
abnormal_statuses.update(master_player, master_player_data);
|
abnormal_statuses.update(master_player, master_player_data);
|
||||||
weapon_skills.update(master_player, master_player_data, weapon_type);
|
weapon_skills.update(master_player, master_player_data, weapon_type);
|
||||||
|
misc_buffs.update(master_player, master_player_data);
|
||||||
end
|
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)));
|
||||||
|
-- end
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_timer(buff, timer, duration)
|
function this.update_timer(buff, timer, duration)
|
||||||
@@ -199,7 +223,7 @@ function this.update_timer(buff, timer, duration)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_generic_buff(buff_list, buff_type, buff_key,
|
function this.update_generic_buff(buff_list, buff_type, buff_key, get_name_function,
|
||||||
value_owner, value_holder,
|
value_owner, value_holder,
|
||||||
timer_owner, timer_holder,
|
timer_owner, timer_holder,
|
||||||
duration_owner, duration_holder,
|
duration_owner, duration_holder,
|
||||||
@@ -286,17 +310,17 @@ function this.update_generic_buff(buff_list, buff_type, buff_key,
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
return this.update_generic(buff_list, buff_type, buff_key, level, timer, duration);
|
return this.update_generic(buff_list, buff_type, buff_key, get_name_function, level, timer, duration);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_generic(buff_list, buff_type, buff_key, level, timer, duration)
|
function this.update_generic(buff_list, buff_type, buff_key, get_name_function, level, timer, duration)
|
||||||
duration = duration or timer;
|
duration = duration or timer;
|
||||||
level = level or 1;
|
level = level or 1;
|
||||||
|
|
||||||
local buff = buff_list[buff_key];
|
local buff = buff_list[buff_key];
|
||||||
if buff == nil then
|
if buff == nil then
|
||||||
local name = language.current_language[buff_type][buff_key];
|
local name = get_name_function(buff_key);
|
||||||
|
|
||||||
buff = this.new(buff_type, buff_key, name, level, duration);
|
buff = this.new(buff_type, buff_key, name, level, duration);
|
||||||
buff_list[buff_key] = buff;
|
buff_list[buff_key] = buff;
|
||||||
else
|
else
|
||||||
@@ -329,6 +353,7 @@ function this.init_dependencies()
|
|||||||
abnormal_statuses = require("MHR_Overlay.Buffs.abnormal_statuses");
|
abnormal_statuses = require("MHR_Overlay.Buffs.abnormal_statuses");
|
||||||
otomo_moves = require("MHR_Overlay.Buffs.otomo_moves");
|
otomo_moves = require("MHR_Overlay.Buffs.otomo_moves");
|
||||||
weapon_skills = require("MHR_Overlay.Buffs.weapon_skills");
|
weapon_skills = require("MHR_Overlay.Buffs.weapon_skills");
|
||||||
|
misc_buffs = require("MHR_Overlay.Buffs.misc_buffs");
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_module()
|
function this.init_module()
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ local players;
|
|||||||
local utils;
|
local utils;
|
||||||
local language;
|
local language;
|
||||||
local error_handler;
|
local error_handler;
|
||||||
|
local endemic_life_buffs;
|
||||||
|
|
||||||
local sdk = sdk;
|
local sdk = sdk;
|
||||||
local tostring = tostring;
|
local tostring = tostring;
|
||||||
@@ -55,6 +56,20 @@ this.list = {
|
|||||||
gourmet_fish = nil,
|
gourmet_fish = nil,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
local consumable_ids = {
|
||||||
|
demondrug = 68157917,
|
||||||
|
mega_demondrug = 68157918,
|
||||||
|
armorskin = 68157922,
|
||||||
|
mega_armorskin = 68157923,
|
||||||
|
might_seed = 68157919,
|
||||||
|
adamant_seed = 68157924,
|
||||||
|
demon_powder = 68157920,
|
||||||
|
hardshell_powder = 68157925,
|
||||||
|
immunizer = 68157911,
|
||||||
|
dash_juice = 68157913,
|
||||||
|
gourmet_fish = 68157909
|
||||||
|
}
|
||||||
|
|
||||||
local consumables_type_name = "consumables";
|
local consumables_type_name = "consumables";
|
||||||
|
|
||||||
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
|
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
|
||||||
@@ -65,10 +80,13 @@ local player_user_data_item_parameter_type_def = get_ref_item_parameter_method:g
|
|||||||
|
|
||||||
local demondrug_atk_up_field = player_user_data_item_parameter_type_def:get_field("_DemondrugAtkUp");
|
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 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 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 great_armorskin_def_up_field = player_user_data_item_parameter_type_def:get_field("_GreatArmorSkinDefUp");
|
||||||
|
|
||||||
|
local might_seed_atk_up_field = player_user_data_item_parameter_type_def:get_field("_MightSeedAtkUp");
|
||||||
local might_seed_timer_field = player_user_data_item_parameter_type_def:get_field("_MightSeedTimer");
|
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 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 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 armorskin_powder_timer_field = player_user_data_item_parameter_type_def:get_field("_ArmorSkinPowderTimer");
|
||||||
@@ -99,6 +117,9 @@ local stamina_up_buff_second_timer_field = player_data_type_def:get_field("_Stam
|
|||||||
-- Gourmet Fish
|
-- Gourmet Fish
|
||||||
local fish_regene_enable_field = player_data_type_def:get_field("_FishRegeneEnableTimer");
|
local fish_regene_enable_field = player_data_type_def:get_field("_FishRegeneEnableTimer");
|
||||||
|
|
||||||
|
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.ContentsIdSystem.ItemId)");
|
||||||
|
|
||||||
function this.update(player_data)
|
function this.update(player_data)
|
||||||
local item_parameter = get_ref_item_parameter_method:call(singletons.player_manager);
|
local item_parameter = get_ref_item_parameter_method:call(singletons.player_manager);
|
||||||
if item_parameter == nil then
|
if item_parameter == nil then
|
||||||
@@ -106,44 +127,27 @@ function this.update(player_data)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local cached_language = language.current_language
|
||||||
|
|
||||||
this.update_demondrug(player_data, item_parameter);
|
this.update_demondrug(player_data, item_parameter);
|
||||||
this.update_armorskin(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);
|
||||||
|
|
||||||
|
buffs.update_generic_buff(this.list, consumables_type_name, "hardshell_powder", this.get_consumable_name,
|
||||||
|
player_data, def_up_item_second_field, player_data, def_up_item_second_timer_field, item_parameter, armorskin_powder_timer_field);
|
||||||
|
|
||||||
|
buffs.update_generic_buff(this.list, consumables_type_name, "immunizer", this.get_consumable_name,
|
||||||
|
nil, nil, player_data, vitalizer_timer_field, item_parameter, vitalizer_timer_const_field);
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, consumables_type_name, "might_seed",
|
buffs.update_generic_buff(this.list, consumables_type_name, "gourmet_fish", this.get_consumable_name,
|
||||||
player_data, atk_up_buff_second_field,
|
nil, nil, player_data, fish_regene_enable_field, nil, nil);
|
||||||
player_data, atk_up_buff_second_timer_field,
|
|
||||||
item_parameter, might_seed_timer_field);
|
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, consumables_type_name, "adamant_seed",
|
|
||||||
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",
|
|
||||||
player_data, atk_up_item_second_field,
|
|
||||||
player_data, atk_up_item_second_timer_field,
|
|
||||||
item_parameter, demondrug_powder_timer_field);
|
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, consumables_type_name, "hardshell_powder",
|
|
||||||
player_data, def_up_item_second_field,
|
|
||||||
player_data, def_up_item_second_timer_field,
|
|
||||||
item_parameter, armorskin_powder_timer_field);
|
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, consumables_type_name, "immunizer",
|
|
||||||
nil, nil,
|
|
||||||
player_data, vitalizer_timer_field,
|
|
||||||
item_parameter, vitalizer_timer_const_field);
|
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, consumables_type_name, "immunizer",
|
|
||||||
nil, nil,
|
|
||||||
player_data, stamina_up_buff_second_timer_field,
|
|
||||||
item_parameter, stamina_up_buff_second_field);
|
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, consumables_type_name, "gourmet_fish",
|
|
||||||
nil, nil,
|
|
||||||
player_data, fish_regene_enable_field,
|
|
||||||
nil, nil);
|
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_demondrug(player_data, item_parameter)
|
function this.update_demondrug(player_data, item_parameter)
|
||||||
@@ -171,14 +175,17 @@ function this.update_demondrug(player_data, item_parameter)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local consumable_key;
|
||||||
if demondrug_value == demondrug_const_value then
|
if demondrug_value == demondrug_const_value then
|
||||||
buffs.update_generic(this.list, consumables_type_name, "demondrug");
|
consumable_key = "demondrug";
|
||||||
this.list.mega_demondrug = nil;
|
this.list.mega_demondrug = nil;
|
||||||
|
|
||||||
elseif demondrug_value == mega_demondrug_const_value then
|
elseif demondrug_value == mega_demondrug_const_value then
|
||||||
buffs.update_generic(this.list, consumables_type_name, "mega_demondrug");
|
consumable_key = "mega_demondrug";
|
||||||
this.list.demondrug = nil;
|
this.list.demondrug = nil;
|
||||||
end
|
end
|
||||||
|
|
||||||
|
buffs.update_generic(this.list, consumables_type_name, consumable_key, this.get_consumable_name);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_armorskin(player_data, item_parameter)
|
function this.update_armorskin(player_data, item_parameter)
|
||||||
@@ -206,26 +213,81 @@ function this.update_armorskin(player_data, item_parameter)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local consumable_key;
|
||||||
if armorskin_value == armorskin_const_value then
|
if armorskin_value == armorskin_const_value then
|
||||||
buffs.update_generic(this.list, consumables_type_name, "armorskin");
|
consumable_key = "armorskin";
|
||||||
this.list.mega_armorskin = nil;
|
this.list.mega_armorskin = nil;
|
||||||
|
|
||||||
elseif armorskin_value == mega_armorskin_const_value then
|
elseif armorskin_value == mega_armorskin_const_value then
|
||||||
buffs.update_generic(this.list, consumables_type_name, "mega_armorskin");
|
consumable_key = "mega_armorskin";
|
||||||
this.list.armorskin = nil;
|
this.list.armorskin = nil;
|
||||||
end
|
end
|
||||||
|
|
||||||
|
buffs.update_generic(this.list, consumables_type_name, consumable_key, this.get_consumable_name);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_names()
|
function this.update_might_seed(player_data, item_parameter)
|
||||||
for consumable_key, consumable in pairs(this.list) do
|
local atk_up_buff_second = atk_up_buff_second_field:get_data(player_data);
|
||||||
local name = language.current_language.consumables[consumable_key];
|
if atk_up_buff_second == nil then
|
||||||
|
error_handler.report("consumables.update_might_seed", "Failed to access Data: atk_up_buff_second");
|
||||||
if name == nil then
|
return;
|
||||||
name = consumable_key;
|
|
||||||
end
|
|
||||||
|
|
||||||
consumable.name = name;
|
|
||||||
end
|
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
|
||||||
|
error_handler.report("consumables.get_consumable_name", string.format("Failed to access Data: %s_name", consumable_key));
|
||||||
|
return consumable_key;
|
||||||
|
end
|
||||||
|
|
||||||
|
return consumable_name;
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_dependencies()
|
function this.init_dependencies()
|
||||||
@@ -237,6 +299,7 @@ function this.init_dependencies()
|
|||||||
players = require("MHR_Overlay.Damage_Meter.players");
|
players = require("MHR_Overlay.Damage_Meter.players");
|
||||||
language = require("MHR_Overlay.Misc.language");
|
language = require("MHR_Overlay.Misc.language");
|
||||||
error_handler = require("MHR_Overlay.Misc.error_handler");
|
error_handler = require("MHR_Overlay.Misc.error_handler");
|
||||||
|
endemic_life_buffs = require("MHR_Overlay.Buffs.endemic_life_buffs");
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_module()
|
function this.init_module()
|
||||||
|
|||||||
@@ -43,13 +43,77 @@ local package = package;
|
|||||||
|
|
||||||
this.list = {
|
this.list = {
|
||||||
dango_defender = nil,
|
dango_defender = nil,
|
||||||
dango_adrenaline = nil
|
dango_adrenaline = nil,
|
||||||
|
dango_booster = nil,
|
||||||
|
dango_glutton = nil,
|
||||||
|
|
||||||
|
dango_bulker = nil,
|
||||||
|
};
|
||||||
|
|
||||||
|
local dango_ids = {
|
||||||
|
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_booster = 28,
|
||||||
|
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_glutton = 46,
|
||||||
|
dango_bird_caller = 47,
|
||||||
|
dango_flyer = 48,
|
||||||
|
dango_defender = 49,
|
||||||
|
enhanced_dango_fighter = 50,
|
||||||
|
dango_driver = 51,
|
||||||
|
dango_hunter = 52,
|
||||||
|
dango_guard = 53,
|
||||||
|
dango_shifter = 54,
|
||||||
|
dango_connector = 55,
|
||||||
|
super_recovery_dango = 56
|
||||||
};
|
};
|
||||||
|
|
||||||
this.is_dango_adrenaline_active = false;
|
this.is_dango_adrenaline_active = false;
|
||||||
|
|
||||||
local dangos_type_name = "dangos";
|
local dangos_type_name = "dangos";
|
||||||
local dango_defender_minimal_value = 200;
|
local dango_defender_minimal_value = 200;
|
||||||
|
local dango_bulker_attack_up = 15;
|
||||||
|
|
||||||
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
|
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_player_data_method = player_manager_type_def:get_method("get_PlayerData");
|
||||||
@@ -62,11 +126,22 @@ local player_user_data_item_parameter_type_def = get_ref_item_parameter_method:g
|
|||||||
local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData");
|
local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData");
|
||||||
-- Dango Defender
|
-- Dango Defender
|
||||||
local kitchen_skill_048_field = player_data_type_def:get_field("_KitchenSkill048_Damage");
|
local kitchen_skill_048_field = player_data_type_def:get_field("_KitchenSkill048_Damage");
|
||||||
|
-- Dango Booster
|
||||||
|
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");
|
||||||
|
|
||||||
|
|
||||||
local player_base_type_def = sdk.find_type_definition("snow.player.PlayerBase");
|
local player_base_type_def = sdk.find_type_definition("snow.player.PlayerBase");
|
||||||
-- Dango Adrenaline
|
-- Dango Adrenaline
|
||||||
local is_kitchen_skill_predicament_powerup_method = player_base_type_def:get_method("isKitchenSkillPredicamentPowerUp");
|
local is_kitchen_skill_predicament_powerup_method = player_base_type_def:get_method("isKitchenSkillPredicamentPowerUp");
|
||||||
|
|
||||||
|
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.PlKitchenSkillId)");
|
||||||
|
|
||||||
function this.update(player, player_data)
|
function this.update(player, player_data)
|
||||||
local item_parameter = get_ref_item_parameter_method:call(singletons.player_manager);
|
local item_parameter = get_ref_item_parameter_method:call(singletons.player_manager);
|
||||||
if item_parameter == nil then
|
if item_parameter == nil then
|
||||||
@@ -74,10 +149,20 @@ function this.update(player, player_data)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, dangos_type_name, "dango_defender", player_data, kitchen_skill_048_field, nil, nil, nil, nil, true, dango_defender_minimal_value);
|
|
||||||
this.update_dango_adrenaline();
|
this.update_dango_adrenaline();
|
||||||
end
|
this.update_dango_bulker(player_data);
|
||||||
|
|
||||||
|
buffs.update_generic_buff(this.list, dangos_type_name, "dango_defender", this.get_dango_name,
|
||||||
|
player_data, kitchen_skill_048_field, nil, nil, nil, nil, true, dango_defender_minimal_value);
|
||||||
|
|
||||||
|
buffs.update_generic_buff(this.list, dangos_type_name, "dango_booster", this.get_dango_name,
|
||||||
|
nil, nil, player_data, kitchen_skill_027_timer_field);
|
||||||
|
|
||||||
|
buffs.update_generic_buff(this.list, dangos_type_name, "dango_glutton", this.get_dango_name,
|
||||||
|
nil, nil, player_data, kitchen_skill_045_timer_field);
|
||||||
|
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
function this.update_dango_adrenaline()
|
function this.update_dango_adrenaline()
|
||||||
if not this.is_dango_adrenaline_active then
|
if not this.is_dango_adrenaline_active then
|
||||||
@@ -85,19 +170,32 @@ function this.update_dango_adrenaline()
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, dangos_type_name, "dango_adrenaline");
|
buffs.update_generic(this.list, dangos_type_name, "dango_adrenaline", this.get_dango_name);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_names()
|
function this.update_dango_bulker(player_data)
|
||||||
for dango_key, dango in pairs(this.list) do
|
local atk_up_buff_second = atk_up_buff_second_field:get_data(player_data);
|
||||||
local name = language.current_language.dangos[dango_key];
|
if atk_up_buff_second == nil then
|
||||||
|
error_handler.report("consumables.update_dango_bulker", "Failed to access Data: atk_up_buff_second");
|
||||||
if name == nil then
|
return;
|
||||||
name = dango_key;
|
|
||||||
end
|
|
||||||
|
|
||||||
dango.name = name;
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if atk_up_buff_second ~= dango_bulker_attack_up then
|
||||||
|
this.list.dango_bulker = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
buffs.update_generic_buff(this.list, dangos_type_name, "dango_bulker", this.get_dango_name, nil, nil, player_data, atk_up_buff_second_timer_field);
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.get_dango_name(dango_key)
|
||||||
|
local dango_name = get_name_method:call(nil, dango_ids[dango_key]);
|
||||||
|
if dango_name == nil then
|
||||||
|
error_handler.report("dangos.get_dango_name", string.format("Failed to access Data: %s_name", dango_key));
|
||||||
|
return dango_key;
|
||||||
|
end
|
||||||
|
|
||||||
|
return dango_name;
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_dependencies()
|
function this.init_dependencies()
|
||||||
@@ -111,6 +209,7 @@ function this.init_dependencies()
|
|||||||
error_handler = require("MHR_Overlay.Misc.error_handler");
|
error_handler = require("MHR_Overlay.Misc.error_handler");
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
function this.init_module()
|
function this.init_module()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ local utils;
|
|||||||
local language;
|
local language;
|
||||||
local error_handler;
|
local error_handler;
|
||||||
local env_creature;
|
local env_creature;
|
||||||
|
local consumables;
|
||||||
|
|
||||||
local sdk = sdk;
|
local sdk = sdk;
|
||||||
local tostring = tostring;
|
local tostring = tostring;
|
||||||
@@ -49,7 +50,13 @@ this.list = {
|
|||||||
gold_wirebug = nil
|
gold_wirebug = nil
|
||||||
};
|
};
|
||||||
|
|
||||||
|
this.peepersects_duration = 90;
|
||||||
|
|
||||||
|
local endemic_life_buffs_type_name = "endemic_life_buffs";
|
||||||
|
|
||||||
local marionette_mode_types = { "ruby_wirebug", "gold_wirebug" };
|
local marionette_mode_types = { "ruby_wirebug", "gold_wirebug" };
|
||||||
|
local butterflame_attack_up = 25;
|
||||||
|
|
||||||
|
|
||||||
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
|
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_player_data_method = player_manager_type_def:get_method("get_PlayerData");
|
||||||
@@ -65,8 +72,11 @@ local crit_up_ec_second_timer_field = player_data_type_def:get_field("_CritUpEcS
|
|||||||
local def_up_buff_second_rate_timer_field = player_data_type_def:get_field("_DefUpBuffSecondRateTimer");
|
local def_up_buff_second_rate_timer_field = player_data_type_def:get_field("_DefUpBuffSecondRateTimer");
|
||||||
-- Ruby/Gold Wirebugs
|
-- Ruby/Gold Wirebugs
|
||||||
local wirebug_powerup_timer_field = player_data_type_def:get_field("_WireBugPowerUpTimer");
|
local wirebug_powerup_timer_field = player_data_type_def:get_field("_WireBugPowerUpTimer");
|
||||||
|
-- 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");
|
||||||
|
|
||||||
local player_quest_base_type_def = sdk.find_type_definition("snow.player.PlayerQuestBase");
|
local player_quest_base_type_def = sdk.find_type_definition("snow.player.PlayerQuestBase");
|
||||||
-- Ruby/Gold Wirebugs
|
-- Ruby/Gold Wirebugs
|
||||||
@@ -75,66 +85,16 @@ local get_marionette_mode_type_method = player_quest_base_type_def:get_method("g
|
|||||||
local message_manager_type_def = sdk.find_type_definition("snow.gui.MessageManager");
|
local message_manager_type_def = sdk.find_type_definition("snow.gui.MessageManager");
|
||||||
local get_env_creature_name_message_method = message_manager_type_def:get_method("getEnvCreatureNameMessage");
|
local get_env_creature_name_message_method = message_manager_type_def:get_method("getEnvCreatureNameMessage");
|
||||||
|
|
||||||
function this.update(player, player_data)
|
function this.update(player, player_data, item_parameter)
|
||||||
this.update_generic_timer("cutterfly", player_data, crit_up_ec_second_timer_field);
|
|
||||||
this.update_generic_timer("clothfly", player_data, def_up_buff_second_rate_timer_field);
|
|
||||||
this.update_ruby_and_gold_wirebugs(player, player_data);
|
this.update_ruby_and_gold_wirebugs(player, player_data);
|
||||||
end
|
this.update_butterflame(player_data);
|
||||||
|
this.update_peepersects(player_data);
|
||||||
|
|
||||||
function this.update_generic_timer(endemic_life_buff_key, timer_owner, timer_holder, is_infinite)
|
buffs.update_generic_buff(this.list, endemic_life_buffs_type_name, "cutterfly", this.get_endemic_life_name,
|
||||||
local timer = nil;
|
nil, nil, player_data, crit_up_ec_second_timer_field);
|
||||||
if timer_holder ~= nil then
|
|
||||||
if utils.type.is_REField then
|
|
||||||
timer = timer_holder:get_data(timer_owner);
|
|
||||||
else
|
|
||||||
timer = timer_holder:call(timer_owner);
|
|
||||||
end
|
|
||||||
|
|
||||||
if timer == nil then
|
|
||||||
error_handler.report("endemic_life_buffs.update_generic_timer", string.format("Failed to access Data: %s_timer", endemic_life_buff_key));
|
|
||||||
return;
|
|
||||||
end
|
|
||||||
|
|
||||||
if utils.number.is_equal(timer, 0) then
|
buffs.update_generic_buff(this.list, endemic_life_buffs_type_name, "clothfly", this.get_endemic_life_name,
|
||||||
this.list[endemic_life_buff_key] = nil;
|
nil, nil, player_data, def_up_buff_second_rate_timer_field);
|
||||||
return;
|
|
||||||
end
|
|
||||||
|
|
||||||
if is_infinite then
|
|
||||||
timer = nil;
|
|
||||||
else
|
|
||||||
timer = timer / 60;
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
this.update_generic(endemic_life_buff_key, 1, timer);
|
|
||||||
end
|
|
||||||
|
|
||||||
function this.update_generic(endemic_life_buff_key, level, timer, duration)
|
|
||||||
duration = duration or timer;
|
|
||||||
|
|
||||||
if singletons.message_manager == nil then
|
|
||||||
error_handler.report("endemic_life_buffs.update_generic", "Failed to access Data: message_manager");
|
|
||||||
return;
|
|
||||||
end
|
|
||||||
|
|
||||||
local endemic_life_buff = this.list[endemic_life_buff_key];
|
|
||||||
if endemic_life_buff == nil then
|
|
||||||
local name = get_env_creature_name_message_method:call(singletons.message_manager, env_creature.creature_ids[endemic_life_buff_key]);
|
|
||||||
if name == nil then
|
|
||||||
error_handler.report("endemic_life_buffs.update_generic", string.format("Failed to access Data: %s -> name", endemic_life_buff_key));
|
|
||||||
return;
|
|
||||||
end
|
|
||||||
|
|
||||||
endemic_life_buff = buffs.new("endemic_life_buffs", endemic_life_buff_key, name, level, duration);
|
|
||||||
this.list[endemic_life_buff_key] = endemic_life_buff;
|
|
||||||
else
|
|
||||||
endemic_life_buff.level = level;
|
|
||||||
|
|
||||||
if timer ~= nil then
|
|
||||||
buffs.update_timer(endemic_life_buff, timer);
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_ruby_and_gold_wirebugs(player, player_data)
|
function this.update_ruby_and_gold_wirebugs(player, player_data)
|
||||||
@@ -155,11 +115,70 @@ function this.update_ruby_and_gold_wirebugs(player, player_data)
|
|||||||
|
|
||||||
local endemic_life_buff_key = marionette_mode_types[marionette_mode_type];
|
local endemic_life_buff_key = marionette_mode_types[marionette_mode_type];
|
||||||
|
|
||||||
this.update_generic_timer(endemic_life_buff_key, player_data, wirebug_powerup_timer_field);
|
buffs.update_generic_timer(this.list, endemic_life_buffs_type_name, endemic_life_buff_key, this.get_endemic_life_name,
|
||||||
|
player_data, wirebug_powerup_timer_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_names()
|
function this.update_butterflame(player_data)
|
||||||
-- Nothing to do here
|
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_butterflame", "Failed to access Data: atk_up_buff_second");
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if atk_up_buff_second ~= butterflame_attack_up then
|
||||||
|
this.list.butterflame = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
buffs.update_generic_timer(this.list, endemic_life_buffs_type_name, "butterflame", this.get_endemic_life_name,
|
||||||
|
player_data, atk_up_buff_second_timer_field);
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_peepersects(player_data)
|
||||||
|
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_peepersects", "Failed to access Data: stamina_up_buff_second_timer");
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if utils.number.is_equal(stamina_up_buff_second_timer, 0) then
|
||||||
|
this.list.peepersects = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local timer = stamina_up_buff_second_timer / 60;
|
||||||
|
local peepersects_buff = this.list.peepersects;
|
||||||
|
|
||||||
|
if peepersects_buff == nil and consumables.list.dash_juice ~= nil and timer <= consumables.list.dash_juice.timer then
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if peepersects_buff == nil
|
||||||
|
or (peepersects_buff ~= nil and timer > peepersects_buff.timer) then
|
||||||
|
local timer_percentage = timer / this.peepersects_duration;
|
||||||
|
if timer_percentage < 0.95 or timer_percentage > 1.05 then
|
||||||
|
this.list.peepersects = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
buffs.update_generic(this.list, endemic_life_buffs_type_name, "peepersects", this.get_endemic_life_name, 1, timer, this.peepersects_duration);
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.get_endemic_life_name(endemic_life_buff_key)
|
||||||
|
if singletons.message_manager == nil then
|
||||||
|
error_handler.report("endemic_life_buffs.get_endemic_life_name", "Failed to access Data: message_manager");
|
||||||
|
return endemic_life_buff_key;
|
||||||
|
end
|
||||||
|
|
||||||
|
local endemic_life_name = get_env_creature_name_message_method:call(singletons.message_manager, env_creature.creature_ids[endemic_life_buff_key]);
|
||||||
|
if endemic_life_name == nil then
|
||||||
|
error_handler.report("endemic_life_buffs.get_endemic_life_name", string.format("Failed to access Data: %s_name", endemic_life_buff_key));
|
||||||
|
return endemic_life_buff_key;
|
||||||
|
end
|
||||||
|
|
||||||
|
return endemic_life_name;
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_dependencies()
|
function this.init_dependencies()
|
||||||
@@ -172,6 +191,7 @@ function this.init_dependencies()
|
|||||||
language = require("MHR_Overlay.Misc.language");
|
language = require("MHR_Overlay.Misc.language");
|
||||||
error_handler = require("MHR_Overlay.Misc.error_handler");
|
error_handler = require("MHR_Overlay.Misc.error_handler");
|
||||||
env_creature = require("MHR_Overlay.Endemic_Life.env_creature");
|
env_creature = require("MHR_Overlay.Endemic_Life.env_creature");
|
||||||
|
consumables = require("MHR_Overlay.Buffs.consumables");
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_module()
|
function this.init_module()
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ local os = os;
|
|||||||
local ValueType = ValueType;
|
local ValueType = ValueType;
|
||||||
local package = package;
|
local package = package;
|
||||||
|
|
||||||
local ids = {
|
--[[local melody_effect_ids = {
|
||||||
self_improvement = 0,
|
self_improvement = 0,
|
||||||
attack_up = 1,
|
attack_up = 1,
|
||||||
defense_up = 2,
|
defense_up = 2,
|
||||||
@@ -70,38 +70,7 @@ local ids = {
|
|||||||
infernal_melody = 25,
|
infernal_melody = 25,
|
||||||
sharpness_regeneration = 26,
|
sharpness_regeneration = 26,
|
||||||
sharpness_extension = 27
|
sharpness_extension = 27
|
||||||
};
|
};]]
|
||||||
|
|
||||||
local melody_effect_keys = {
|
|
||||||
"self_improvement",
|
|
||||||
"attack_up",
|
|
||||||
"defense_up",
|
|
||||||
"affinity_up",
|
|
||||||
"elemental_attack_boost",
|
|
||||||
"attack_and_defense_up",
|
|
||||||
"attack_and_affinity_up",
|
|
||||||
"knockbacks_negated",
|
|
||||||
"earplugs_s",
|
|
||||||
"earplugs_l",
|
|
||||||
"tremors_negated",
|
|
||||||
"wind_pressure_negated",
|
|
||||||
"stun_negated",
|
|
||||||
"blight_negated",
|
|
||||||
"divine_protection",
|
|
||||||
"health_recovery_s",
|
|
||||||
"health_recovery_l",
|
|
||||||
"health_recovery_s_antidote",
|
|
||||||
"health_regeneration",
|
|
||||||
"stamina_use_reduced",
|
|
||||||
"stamina_recovery_up",
|
|
||||||
"sharpness_loss_reduced",
|
|
||||||
"environment_damage_negated",
|
|
||||||
"sonic_wave",
|
|
||||||
"sonic_barrier",
|
|
||||||
"infernal_melody",
|
|
||||||
"sharpness_regeneration",
|
|
||||||
"sharpness_extension"
|
|
||||||
};
|
|
||||||
|
|
||||||
this.list = {};
|
this.list = {};
|
||||||
|
|
||||||
@@ -118,6 +87,9 @@ local system_array_type_def = sdk.find_type_definition("System.Array");
|
|||||||
local get_length_method = system_array_type_def:get_method("get_Length");
|
local get_length_method = system_array_type_def:get_method("get_Length");
|
||||||
local get_value_method = system_array_type_def:get_method("GetValue(System.Int32)");
|
local get_value_method = system_array_type_def:get_method("GetValue(System.Int32)");
|
||||||
|
|
||||||
|
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.HornConcertId)");
|
||||||
|
|
||||||
function this.update(master_player)
|
function this.update(master_player)
|
||||||
local music_data_array = music_data_field:get_data(master_player);
|
local music_data_array = music_data_field:get_data(master_player);
|
||||||
if music_data_array == nil then
|
if music_data_array == nil then
|
||||||
@@ -138,45 +110,45 @@ function this.update(master_player)
|
|||||||
goto continue;
|
goto continue;
|
||||||
end
|
end
|
||||||
|
|
||||||
this.update_melody_effect(i + 1, music_data);
|
this.update_melody_effect(i, music_data);
|
||||||
::continue::
|
::continue::
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_melody_effect(lua_index, melody_data)
|
function this.update_melody_effect(index, melody_data)
|
||||||
|
local lua_index = index + 1;
|
||||||
|
|
||||||
local melody_timer = time_field:get_data(melody_data);
|
local melody_timer = time_field:get_data(melody_data);
|
||||||
if melody_timer == nil then
|
if melody_timer == nil then
|
||||||
error_handler.report("melody_effects.update", "Failed to access Data: melody_timer No. " .. tostring(lua_index - 1));
|
error_handler.report("melody_effects.update_melody_effect", "Failed to access Data: melody_timer No. " .. tostring(index));
|
||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
if utils.number.is_equal(melody_timer, 0) then
|
if utils.number.is_equal(melody_timer, 0) then
|
||||||
this.list[lua_index] = nil;
|
this.list[lua_index] = nil;
|
||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
local melody_effect = this.list[lua_index];
|
local melody_effect = this.list[lua_index];
|
||||||
if melody_effect == nil then
|
if melody_effect == nil then
|
||||||
local melody_effect_key = melody_effect_keys[lua_index];
|
local melody_effect_name = this.get_melody_effect_name(index);
|
||||||
local name = language.current_language.melody_effects[melody_effect_key];
|
|
||||||
|
|
||||||
melody_effect = buffs.new("melody_effects", melody_effect_key, name, 1, melody_timer / 60);
|
melody_effect = buffs.new("melody_effects", lua_index, melody_effect_name, 1, melody_timer / 60);
|
||||||
this.list[lua_index] = melody_effect;
|
this.list[lua_index] = melody_effect;
|
||||||
else
|
else
|
||||||
buffs.update_timer(melody_effect, melody_timer / 60);
|
buffs.update_timer(melody_effect, melody_timer / 60);
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_names()
|
function this.get_melody_effect_name(melody_effect_id)
|
||||||
for index, dango in pairs(this.list) do
|
local melody_effect_name = get_name_method:call(nil, melody_effect_id);
|
||||||
local name = language.current_language.dangos[dango.key];
|
if melody_effect_name == nil then
|
||||||
|
local name = string.format("Melody Effect No. %d", melody_effect_id);
|
||||||
if name == nil then
|
error_handler.report("melody_effects.get_melody_effect_name", "Failed to access Data: " .. melody_effect_name);
|
||||||
name = dango.key;
|
return name;
|
||||||
end
|
|
||||||
|
|
||||||
dango.name = name;
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
return melody_effect_name;
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_dependencies()
|
function this.init_dependencies()
|
||||||
|
|||||||
112
reframework/autorun/MHR_Overlay/Buffs/misc_buffs.lua
Normal file
112
reframework/autorun/MHR_Overlay/Buffs/misc_buffs.lua
Normal file
@@ -0,0 +1,112 @@
|
|||||||
|
local this = {};
|
||||||
|
|
||||||
|
local buffs;
|
||||||
|
local buff_UI_entity;
|
||||||
|
local config;
|
||||||
|
local singletons;
|
||||||
|
local players;
|
||||||
|
local utils;
|
||||||
|
local language;
|
||||||
|
local error_handler;
|
||||||
|
local endemic_life_buffs;
|
||||||
|
local consumables;
|
||||||
|
|
||||||
|
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;
|
||||||
|
|
||||||
|
this.list = {
|
||||||
|
stamina_use_down = nil,
|
||||||
|
};
|
||||||
|
|
||||||
|
local misc_buffs_type_name = "misc_buffs";
|
||||||
|
|
||||||
|
local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData");
|
||||||
|
-- Dash Juice/Peepersects
|
||||||
|
local stamina_up_buff_second_timer_field = player_data_type_def:get_field("_StaminaUpBuffSecondTimer");
|
||||||
|
|
||||||
|
function this.update(player, player_data)
|
||||||
|
this.update_stamina_use_down(player_data);
|
||||||
|
end
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
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", 1,
|
||||||
|
stamina_up_buff_second_timer / 60, endemic_life_buffs.peepersects_duration);
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.init_names()
|
||||||
|
for misc_buff_key, dango in pairs(this.list) do
|
||||||
|
dango.name = this.get_misc_buff_name(misc_buff_key);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.get_misc_buff_name(misc_buff_key)
|
||||||
|
local misc_buff_name = language.current_language.misc_buffs[misc_buff_key];
|
||||||
|
if misc_buff_name == nil then
|
||||||
|
return misc_buff_key;
|
||||||
|
end
|
||||||
|
|
||||||
|
return misc_buff_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");
|
||||||
|
endemic_life_buffs = require("MHR_Overlay.Buffs.endemic_life_buffs");
|
||||||
|
consumables = require("MHR_Overlay.Buffs.consumables");
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.init_module()
|
||||||
|
end
|
||||||
|
|
||||||
|
return this;
|
||||||
@@ -47,8 +47,41 @@ local package = package;
|
|||||||
|
|
||||||
this.list = {
|
this.list = {
|
||||||
rousing_roar = nil,
|
rousing_roar = nil,
|
||||||
power_drum = nil,
|
go_fight_win = nil,
|
||||||
go_fight_win = nil
|
power_drum = nil
|
||||||
|
};
|
||||||
|
|
||||||
|
local otomo_moves_ids = {
|
||||||
|
herbaceous_healing = 1,
|
||||||
|
felyne_silkbind = 2,
|
||||||
|
felyne_wyvernblast = 3,
|
||||||
|
rousing_roar = 4,
|
||||||
|
endemic_life_barrage = 5,
|
||||||
|
health_horn = 6,
|
||||||
|
healing_bubble = 7,
|
||||||
|
vase_of_vitality = 8,
|
||||||
|
furbidden_acorn = 9,
|
||||||
|
poison_purr_ison = 10,
|
||||||
|
summeown_endemic_life = 11,
|
||||||
|
shock_purr_ison = 12,
|
||||||
|
go_fight_win = 13,
|
||||||
|
giga_barrel_bombay = 14,
|
||||||
|
flash_bombay = 15,
|
||||||
|
anti_monster_mine = 16,
|
||||||
|
zap_blast_spinner = 17,
|
||||||
|
furr_ious = 18,
|
||||||
|
power_drum = 19,
|
||||||
|
fleet_foot_feat = 20,
|
||||||
|
whirlwind_assault = 21,
|
||||||
|
pilfer = 22,
|
||||||
|
shock_tripper = 23,
|
||||||
|
mega_boomerang = 24,
|
||||||
|
camouflage = 25,
|
||||||
|
healing_clover_bat = 26,
|
||||||
|
felyne_firewors = 27,
|
||||||
|
lottery_box = 28,
|
||||||
|
felyne_powered_up = 29,
|
||||||
|
ameowzing_mist = 30
|
||||||
};
|
};
|
||||||
|
|
||||||
local otomo_moves_type_name = "otomo_moves";
|
local otomo_moves_type_name = "otomo_moves";
|
||||||
@@ -64,22 +97,28 @@ local kijin_otomo_timer_field = player_data_type_def:get_field("_KijinOtomoTimer
|
|||||||
-- Palico: Go, Fight, Win
|
-- Palico: Go, Fight, Win
|
||||||
local runhigh_otomo_timer_field = player_data_type_def:get_field("_RunhighOtomoTimer");
|
local runhigh_otomo_timer_field = player_data_type_def:get_field("_RunhighOtomoTimer");
|
||||||
|
|
||||||
|
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.OtSupportActionId)");
|
||||||
|
|
||||||
function this.update(player_data)
|
function this.update(player_data)
|
||||||
buffs.update_generic_buff(this.list, otomo_moves_type_name, "rousing_roar", nil, nil, player_data, beast_roar_otomo_timer_field);
|
buffs.update_generic_buff(this.list, otomo_moves_type_name, "rousing_roar", this.get_otomo_move_name,
|
||||||
buffs.update_generic_buff(this.list, otomo_moves_type_name, "power_drum", nil, nil, player_data, kijin_otomo_timer_field);
|
nil, nil, player_data, beast_roar_otomo_timer_field);
|
||||||
buffs.update_generic_buff(this.list, otomo_moves_type_name, "go_fight_win", nil, nil, player_data, runhigh_otomo_timer_field);
|
|
||||||
|
buffs.update_generic_buff(this.list, otomo_moves_type_name, "go_fight_win", this.get_otomo_move_name,
|
||||||
|
nil, nil, player_data, runhigh_otomo_timer_field);
|
||||||
|
|
||||||
|
buffs.update_generic_buff(this.list, otomo_moves_type_name, "power_drum", this.get_otomo_move_name,
|
||||||
|
nil, nil, player_data, kijin_otomo_timer_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_names()
|
function this.get_otomo_move_name(otomo_move_key)
|
||||||
for otomo_move_key, otomo_move in pairs(this.list) do
|
local otomo_move_name = get_name_method:call(nil, otomo_moves_ids[otomo_move_key]);
|
||||||
local name = language.current_language.otomo_moves[otomo_move_key];
|
if otomo_move_name == nil then
|
||||||
|
error_handler.report("otomo_moves.get_otomo_move_name", string.format("Failed to access Data: %s_name", otomo_move_key));
|
||||||
if name == nil then
|
return otomo_move_key;
|
||||||
name = otomo_move_key;
|
|
||||||
end
|
|
||||||
|
|
||||||
otomo_move.name = name;
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
return otomo_move_name;
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_dependencies()
|
function this.init_dependencies()
|
||||||
|
|||||||
@@ -51,6 +51,7 @@ this.list = {
|
|||||||
intrepid_heart = nil,
|
intrepid_heart = nil,
|
||||||
dereliction = nil,
|
dereliction = nil,
|
||||||
latent_power = nil,
|
latent_power = nil,
|
||||||
|
protective_polish = nil,
|
||||||
wind_mantle = nil,
|
wind_mantle = nil,
|
||||||
grinder_s = nil,
|
grinder_s = nil,
|
||||||
counterstrike = nil,
|
counterstrike = nil,
|
||||||
@@ -62,6 +63,7 @@ this.list = {
|
|||||||
hellfire_cloak = nil,
|
hellfire_cloak = nil,
|
||||||
agitator = nil,
|
agitator = nil,
|
||||||
furious = nil,
|
furious = nil,
|
||||||
|
status_trigger = nil,
|
||||||
heaven_sent = nil,
|
heaven_sent = nil,
|
||||||
heroics = nil,
|
heroics = nil,
|
||||||
resuscitate = nil,
|
resuscitate = nil,
|
||||||
@@ -70,167 +72,161 @@ this.list = {
|
|||||||
frenzied_bloodlust = nil,
|
frenzied_bloodlust = nil,
|
||||||
peak_performance = nil,
|
peak_performance = nil,
|
||||||
dragonheart = nil,
|
dragonheart = nil,
|
||||||
resentment = nil
|
resentment = nil,
|
||||||
|
bladescale_hone = nil,
|
||||||
|
spiribirds_call = nil
|
||||||
};
|
};
|
||||||
|
|
||||||
local skills_type_name = "skills";
|
local skills_type_name = "skills";
|
||||||
|
|
||||||
local skill_data_list = {
|
local skill_data_list = {
|
||||||
-- 1 Pl_EquipSkill_000 Attack Boost
|
-- attack_boost = { id = 1 },
|
||||||
-- 2 Pl_EquipSkill_001 Agitator
|
agitator = { id = 2 },
|
||||||
-- 3 Pl_EquipSkill_002 Peak Performance
|
peak_performance = { id = 3, level = 0, is_equipped = false },
|
||||||
peak_performance = { id = 3, level = 0, is_equipped = false },
|
resentment = { id = 4, level = 0, is_equipped = false },
|
||||||
-- 4 Pl_EquipSkill_003 Resentment
|
resuscitate = { id = 5, level = 0, is_equipped = false },
|
||||||
resentment = { id = 4, level = 0, is_equipped = false },
|
-- critical_eye = { id = 6 },
|
||||||
-- 5 Pl_EquipSkill_004 Resuscitate
|
-- critical_boost = { id = 7 },
|
||||||
resuscitate = { id = 5, level = 0, is_equipped = false },
|
-- weakness_exploit = { id = 8 },
|
||||||
-- 6 Pl_EquipSkill_005 Critical Eye
|
latent_power = { id = 9 },
|
||||||
-- 7 Pl_EquipSkill_006 Critical Boost
|
maximum_might = { id = 10, level = 0, is_equipped = false },
|
||||||
-- 8 Pl_EquipSkill_007 Weakness Exploit
|
-- critical_element = { id = 11 },
|
||||||
-- 9 Pl_EquipSkill_008 Latent Power
|
-- masters_touch = { id = 12 },
|
||||||
-- 10 Pl_EquipSkill_009 Maximum Might
|
-- fire_attack = { id = 13 },
|
||||||
maximum_might = { id = 10, level = 0, is_equipped = false },
|
-- water_attack = { id = 14 },
|
||||||
-- 11 Pl_EquipSkill_010 Critical Element
|
-- ice_attack = { id = 15 },
|
||||||
-- 12 Pl_EquipSkill_011 Master's Touch
|
-- thunder_attack = { id = 16 },
|
||||||
-- 13 Pl_EquipSkill_012 Fire Attack
|
-- dragon_attack = { id = 17 },
|
||||||
-- 14 Pl_EquipSkill_013 Water Attack
|
-- poison_attack = { id = 18 },
|
||||||
-- 15 Pl_EquipSkill_014 Ice Attack
|
-- paralysis_attack = { id = 19 },
|
||||||
-- 16 Pl_EquipSkill_015 Thunder Attack
|
-- sleep_attack = { id = 20 },
|
||||||
-- 17 Pl_EquipSkill_016 Dragon Attack
|
-- blast_attack = { id = 21 },
|
||||||
-- 18 Pl_EquipSkill_017 Poison Attack
|
-- handicraft = { id = 22 },
|
||||||
-- 19 Pl_EquipSkill_018 Paralysis Attack
|
-- razor_sharp = { id = 23 },
|
||||||
-- 20 Pl_EquipSkill_019 Sleep Attack
|
-- spare_shot = { id = 24 },
|
||||||
-- 21 Pl_EquipSkill_020 Blast Attack
|
protective_polish = { id = 25 },
|
||||||
-- 22 Pl_EquipSkill_021 Handicraft
|
-- minds_eye = { id = 26 },
|
||||||
-- 23 Pl_EquipSkill_022 Razor Sharp
|
-- ballistics = { id = 27 },
|
||||||
-- 24 Pl_EquipSkill_023 Spare Shot
|
-- bludgeoner = { id = 28 },
|
||||||
-- 25 Pl_EquipSkill_024 Protective Polish
|
-- bow_charge_plus = { id = 29 },
|
||||||
-- 26 Pl_EquipSkill_025 Mind's Eye
|
-- focus = { id = 30 },
|
||||||
-- 27 Pl_EquipSkill_026 Ballistics
|
-- power_prolonger = { id = 31 },
|
||||||
-- 28 Pl_EquipSkill_027 Bludgeoner
|
-- marathon_runner = { id = 32 },
|
||||||
-- 29 Pl_EquipSkill_028 Bow Charge Plus
|
-- constitution = { id = 33 },
|
||||||
-- 30 Pl_EquipSkill_029 Focus
|
-- stamina_surge = { id = 34 },
|
||||||
-- 31 Pl_EquipSkill_030 Power Prolonger
|
-- guard = { id = 35 },
|
||||||
-- 32 Pl_EquipSkill_031 Marathon Runner
|
-- guard_up = { id = 36 },
|
||||||
-- 33 Pl_EquipSkill_032 Constitution
|
offensive_guard = { id = 37 },
|
||||||
-- 34 Pl_EquipSkill_033 Stamina Surge
|
-- critical_draw = { id = 38 },
|
||||||
-- 35 Pl_EquipSkill_034 Guard
|
-- punishing_draw = { id = 39 },
|
||||||
-- 36 Pl_EquipSkill_035 Guard Up
|
-- quick_sheathe = { id = 40 },
|
||||||
-- 37 Pl_EquipSkill_036 Offensive Guard
|
-- slugger = { id = 41 },
|
||||||
-- 38 Pl_EquipSkill_037 Critical Draw
|
-- stamina_thief = { id = 42 },
|
||||||
-- 39 Pl_EquipSkill_038 Punishing Draw
|
affinity_sliding = { id = 43 },
|
||||||
-- 40 Pl_EquipSkill_039 Quick Sheathe
|
-- horn_maestro = { id = 44 },
|
||||||
-- 41 Pl_EquipSkill_040 Slugger
|
-- artillery = { id = 45 },
|
||||||
-- 42 Pl_EquipSkill_041 Stamina Thief
|
-- load_shells = { id = 46 },
|
||||||
-- 43 Pl_EquipSkill_042 Affinity Sliding
|
-- special_ammo_boost = { id = 47 },
|
||||||
-- 44 Pl_EquipSkill_043 Horn Maestro
|
-- normal_rapid_up = { id = 48 },
|
||||||
-- 45 Pl_EquipSkill_044 Artillery
|
-- pierce_up = { id = 49 },
|
||||||
-- 46 Pl_EquipSkill_045 Load Shells
|
-- spread_up = { id = 50 },
|
||||||
-- 47 Pl_EquipSkill_046 Special Ammo Boost
|
-- ammo_up = { id = 51 },
|
||||||
-- 48 Pl_EquipSkill_047 Normal/Rapid Up
|
-- reload_speed = { id = 52 },
|
||||||
-- 49 Pl_EquipSkill_048 Pierce Up
|
-- recoil_down = { id = 53 },
|
||||||
-- 50 Pl_EquipSkill_049 Spread Up
|
-- steadiness = { id = 54 },
|
||||||
-- 51 Pl_EquipSkill_050 Ammo Up
|
-- rapid_fire_up = { id = 55 },
|
||||||
-- 52 Pl_EquipSkill_051 Reload Speed
|
-- defense_boost = { id = 56 },
|
||||||
-- 53 Pl_EquipSkill_052 Recoil Down
|
-- divine_blessing = { id = 57 },
|
||||||
-- 54 Pl_EquipSkill_053 Steadiness
|
-- recovery_up = { id = 58 },
|
||||||
-- 55 Pl_EquipSkill_054 Rapid Fire Up
|
-- recovery_speed = { id = 59 },
|
||||||
-- 56 Pl_EquipSkill_055 Defense Boost
|
-- speed_eating = { id = 60 },
|
||||||
-- 57 Pl_EquipSkill_056 Divine Blessing
|
-- earplugs = { id = 61 },
|
||||||
-- 58 Pl_EquipSkill_057 Recovery Up
|
-- windproof = { id = 62 },
|
||||||
-- 59 Pl_EquipSkill_058 Recovery Speed
|
-- tremor_resistance = { id = 63 },
|
||||||
-- 60 Pl_EquipSkill_059 Speed Eating
|
-- bubbly_dance = { id = 64 },
|
||||||
-- 61 Pl_EquipSkill_060 Earplugs
|
-- evade_window = { id = 65 },
|
||||||
-- 62 Pl_EquipSkill_061 Windproof
|
-- evade_extender = { id = 66 },
|
||||||
-- 63 Pl_EquipSkill_062 Tremor Resistance
|
-- fire_resistance = { id = 67 },
|
||||||
-- 64 Pl_EquipSkill_063 Bubbly Dance
|
-- water_resistance = { id = 68 },
|
||||||
-- 65 Pl_EquipSkill_064 Evade Window
|
-- ice_resistance = { id = 69 },
|
||||||
-- 66 Pl_EquipSkill_065 Evade Extender
|
-- thunder_resistance = { id = 70 },
|
||||||
-- 67 Pl_EquipSkill_066 Fire Resistance
|
-- dragon_resistance = { id = 71 },
|
||||||
-- 68 Pl_EquipSkill_067 Water Resistance
|
-- blight_resistance = { id = 72 },
|
||||||
-- 69 Pl_EquipSkill_068 Ice Resistance
|
-- poison_resistance = { id = 73 },
|
||||||
-- 70 Pl_EquipSkill_069 Thunder Resistance
|
-- paralysis_resistance = { id = 74 },
|
||||||
-- 71 Pl_EquipSkill_070 Dragon Resistance
|
-- sleep_resistance = { id = 75 },
|
||||||
-- 72 Pl_EquipSkill_071 Blight Resistance
|
-- stun_resistance = { id = 76 },
|
||||||
-- 73 Pl_EquipSkill_072 Poison Resistance
|
-- muck_resistance = { id = 77 },
|
||||||
-- 74 Pl_EquipSkill_073 Paralysis Resistance
|
-- blast_resistance = { id = 78 },
|
||||||
-- 75 Pl_EquipSkill_074 Sleep Resistance
|
-- botanist = { id = 79 },
|
||||||
-- 76 Pl_EquipSkill_075 Stun Resistance
|
-- geologist = { id = 80 },
|
||||||
-- 77 Pl_EquipSkill_076 Muck Resistance
|
-- partbreaker = { id = 81 },
|
||||||
-- 78 Pl_EquipSkill_077 Blast Resistance
|
-- capture_master = { id = 82 },
|
||||||
-- 79 Pl_EquipSkill_078 Botanist
|
-- carving_master = { id = 83 },
|
||||||
-- 80 Pl_EquipSkill_079 Geologist
|
-- good_luck = { id = 84 },
|
||||||
-- 81 Pl_EquipSkill_080 Partbreaker
|
-- speed_sharpening = { id = 85 },
|
||||||
-- 82 Pl_EquipSkill_081 Capture Master
|
-- bombardier = { id = 86 },
|
||||||
-- 83 Pl_EquipSkill_082 Carving Master
|
-- mushroomancer = { id = 87 },
|
||||||
-- 84 Pl_EquipSkill_083 Good Luck
|
-- item_prolonger = { id = 88 },
|
||||||
-- 85 Pl_EquipSkill_084 Speed Sharpening
|
-- wide_range = { id = 89 },
|
||||||
-- 86 Pl_EquipSkill_085 Bombardier
|
-- free_meal = { id = 90 },
|
||||||
-- 87 Pl_EquipSkill_086 Mushroomancer
|
heroics = { id = 91, level = 0, is_equipped = false },
|
||||||
-- 88 Pl_EquipSkill_087 Item Prolonger
|
-- fortify = { id = 92 },
|
||||||
-- 89 Pl_EquipSkill_088 Wide-Range
|
-- flinch_free = { id = 93 },
|
||||||
-- 90 Pl_EquipSkill_089 Free Meal
|
-- jump_master = { id = 94 },
|
||||||
-- 91 Pl_EquipSkill_090 Heroics
|
-- carving_pro = { id = 95 },
|
||||||
heroics = { id = 91, level = 0, is_equipped = false },
|
-- hunger_resistance = { id = 96 },
|
||||||
-- 92 Pl_EquipSkill_091 Fortify
|
-- leap_of_faith = { id = 97 },
|
||||||
-- 93 Pl_EquipSkill_092 Flinch Free
|
-- diversion = { id = 98 },
|
||||||
-- 94 Pl_EquipSkill_093 Jump Master
|
-- master_mounter = { id = 99 },
|
||||||
-- 95 Pl_EquipSkill_094 Carving Pro
|
-- chameleos_blessing = { id = 100 },
|
||||||
-- 96 Pl_EquipSkill_095 Hunger Resistance
|
-- kushala_blessing = { id = 101 },
|
||||||
-- 97 Pl_EquipSkill_096 Leap of Faith
|
-- teostra_blessing = { id = 102 },
|
||||||
-- 98 Pl_EquipSkill_097 Diversion
|
dragonheart = { id = 103, level = 0, is_equipped = false },
|
||||||
-- 99 Pl_EquipSkill_098 Master Mounter
|
-- wirebug_whisperer = { id = 104 },
|
||||||
-- 100 Pl_EquipSkill_099 Chameleos Blessing
|
wall_runner = { id = 105 },
|
||||||
-- 101 Pl_EquipSkill_100 Kushala Blessing
|
counterstrike = { id = 106 },
|
||||||
-- 102 Pl_EquipSkill_101 Teostra Blessing
|
-- rapid_morph = { id = 107 },
|
||||||
-- 103 Pl_EquipSkill_102 Dragonheart
|
hellfire_cloak = { id = 108 },
|
||||||
dragonheart = { id = 103, level = 0, is_equipped = false },
|
-- wind_alignment = { id = 109 },
|
||||||
-- 104 Pl_EquipSkill_103 Wirebug Whisperer
|
-- thunder_alignment = { id = 110 },
|
||||||
-- 105 Pl_EquipSkill_104 Wall Runner
|
-- stormsoul = { id = 111 },
|
||||||
-- 106 Pl_EquipSkill_105 Counterstrike
|
-- blood_rite = { id = 112 },
|
||||||
-- 107 Pl_EquipSkill_106 Rapid Morph
|
dereliction = { id = 113, level = 0, is_equipped = false },
|
||||||
-- 108 Pl_EquipSkill_107 Hellfire Cloak
|
furious = { id = 114 },
|
||||||
-- 109 Pl_EquipSkill_108 Wind Alignment
|
-- mail_of_hellfire = { id = 115 },
|
||||||
-- 110 Pl_EquipSkill_109 Thunder Alignment
|
coalescence = { id = 116 },
|
||||||
-- 111 Pl_EquipSkill_110 Stormsoul
|
bloodlust = { id = 117, level = 0, is_equipped = false },
|
||||||
-- 112 Pl_EquipSkill_200 Blood Rite
|
-- defiance = { id = 118 },
|
||||||
-- 113 Pl_EquipSkill_201 Dereliction
|
-- sneak_attack = { id = 119 },
|
||||||
dereliction = { id = 113, level = 0, is_equipped = false },
|
adrenaline_rush = { id = 120 },
|
||||||
-- 114 Pl_EquipSkill_202 Furious
|
-- embolden = { id = 121 },
|
||||||
-- 115 Pl_EquipSkill_203 Mail of Hellfire
|
-- redirection = { id = 122 },
|
||||||
-- 116 Pl_EquipSkill_204 Coalescence
|
spiribirds_call = { id = 123 },
|
||||||
-- 117 Pl_EquipSkill_205 Bloodlust
|
-- charge_master = { id = 124 },
|
||||||
bloodlust = { id = 117, level = 0, is_equipped = false },
|
-- foray = { id = 125 },
|
||||||
-- 118 Pl_EquipSkill_206 Defiance
|
-- tune_up = { id = 126 },
|
||||||
-- 119 Pl_EquipSkill_207 Sneak Attack
|
grinder_s = { id = 127 },
|
||||||
-- 120 Pl_EquipSkill_208 Adrenaline Rush
|
bladescale_hone = { id = 128 },
|
||||||
-- 122 Pl_EquipSkill_209 Redirection
|
-- wall_runner_boost = { id = 129 },
|
||||||
-- 123 Pl_EquipSkill_210 Spiribird's Call
|
-- element_exploit = { id = 130 },
|
||||||
-- 124 Pl_EquipSkill_211 Charge Master
|
burst = { id = 131 },
|
||||||
-- 125 Pl_EquipSkill_212 Foray
|
-- guts = { id = 132 },
|
||||||
-- 126 Pl_EquipSkill_213 Tune-Up
|
-- quick_breath = { id = 133 },
|
||||||
-- 127 Pl_EquipSkill_214 Grinder (S)
|
status_trigger = { id = 134 },
|
||||||
-- 128 Pl_EquipSkill_215 Bladescale Hone
|
intrepid_heart = { id = 135 },
|
||||||
-- 129 Pl_EquipSkill_216 Wall Runner (Boost)
|
-- buildup_boost = { id = 136 },
|
||||||
-- 133 Pl_EquipSkill_217 Quick Breath
|
-- berserk = { id = 137 },
|
||||||
-- 130 Pl_EquipSkill_218 Element Exploit
|
wind_mantle = { id = 138 },
|
||||||
-- 131 Pl_EquipSkill_219 Burst
|
-- powder_mantle = { id = 139 },
|
||||||
-- 132 Pl_EquipSkill_220 Guts
|
-- frostcraft = { id = 140 },
|
||||||
-- 134 Pl_EquipSkill_221 Status Trigger
|
-- dragon_conversion = { id = 141 },
|
||||||
-- 135 Pl_EquipSkill_222 Intrepid Heart
|
heaven_sent = { id = 142 },
|
||||||
-- 136 Pl_EquipSkill_223 Buildup Boost
|
frenzied_bloodlust = { id = 143 },
|
||||||
-- 121 Pl_EquipSkill_224 Embolden
|
-- blood_awakening = { id = 144 },
|
||||||
-- 138 Pl_EquipSkill_225 Wind Mantle
|
-- strife = { id = 145 },
|
||||||
-- 139 Pl_EquipSkill_226 Powder Mantle
|
-- shock_absorber = { id = 146 },
|
||||||
-- 137 Pl_EquipSkill_227 Berserk
|
-- inspiration = { id = 147 },
|
||||||
-- 145 Pl_EquipSkill_228 Strife
|
|
||||||
-- 140 Pl_EquipSkill_229 Frostcraft
|
|
||||||
-- 141 Pl_EquipSkill_230 Dragon Conversion
|
|
||||||
-- 142 Pl_EquipSkill_231 Heaven-Sent
|
|
||||||
-- 143 Pl_EquipSkill_232 Frenzied Bloodlust
|
|
||||||
-- 144 Pl_EquipSkill_233 Blood Awakening
|
|
||||||
-- 146 Pl_EquipSkill_234 Shock Absorber
|
|
||||||
-- 147 Pl_EquipSkill_235 Inspiration
|
|
||||||
}
|
}
|
||||||
|
|
||||||
local burst_breakpoints = {5};
|
local burst_breakpoints = {5};
|
||||||
@@ -246,6 +242,8 @@ local frenzied_bloodlust_sheathed_duration = 0;
|
|||||||
|
|
||||||
local dragonheart_breakpoints = {0.5, 0.5, 0.7, 0.7, 0.8};
|
local dragonheart_breakpoints = {0.5, 0.5, 0.7, 0.7, 0.8};
|
||||||
|
|
||||||
|
local spiribirds_call_duration = 60;
|
||||||
|
|
||||||
local wind_mantle_duration = 15;
|
local wind_mantle_duration = 15;
|
||||||
local wind_mantle_breakpoints = { 20, 10 }; -- Sword & Shield, Lance, Hammer, Switch Axe, Insect Glaive, Long Sword, Hunting Horn
|
local wind_mantle_breakpoints = { 20, 10 }; -- Sword & Shield, Lance, Hammer, Switch Axe, Insect Glaive, Long Sword, Hunting Horn
|
||||||
local wind_mantle_special_breakpoints = {
|
local wind_mantle_special_breakpoints = {
|
||||||
@@ -304,6 +302,8 @@ local equip_skill_231_wp_off_timer_field = player_data_type_def:get_field("_Equi
|
|||||||
local r_vital_field = player_data_type_def:get_field("_r_Vital");
|
local r_vital_field = player_data_type_def:get_field("_r_Vital");
|
||||||
-- Status Trigger
|
-- Status Trigger
|
||||||
local equip_skill_222_timer_field = player_data_type_def:get_field("_EquipSkill222_Timer");
|
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");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -339,7 +339,8 @@ local get_hunter_wire_skill_231_num_method = player_quest_base_type_def:get_meth
|
|||||||
local bow_type_def = sdk.find_type_definition("snow.player.Bow");
|
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");
|
local _equip_skill_216_bottle_up_timer_field = bow_type_def:get_field("_EquipSkill216_BottleUpTimer");
|
||||||
|
|
||||||
local qeree = {};
|
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.PlEquipSkillId)");
|
||||||
|
|
||||||
function this.update(player, player_data, weapon_type)
|
function this.update(player, player_data, weapon_type)
|
||||||
--local item_parameter = get_ref_item_parameter_method:call(singletons.player_manager);
|
--local item_parameter = get_ref_item_parameter_method:call(singletons.player_manager);
|
||||||
@@ -348,46 +349,6 @@ function this.update(player, player_data, weapon_type)
|
|||||||
-- return;
|
-- return;
|
||||||
--end
|
--end
|
||||||
|
|
||||||
-- local fields = player_quest_base_type_def:get_fields();
|
|
||||||
|
|
||||||
-- xy = "Player:\n";
|
|
||||||
-- for i = 1, 999 do
|
|
||||||
-- local field = fields[i];
|
|
||||||
-- if field == nil then
|
|
||||||
-- break;
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- local value = field:get_data(player);
|
|
||||||
|
|
||||||
-- if qeree[field] == nil then
|
|
||||||
-- qeree[field] = value;
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- if qeree[field] ~= value then
|
|
||||||
-- xy = string.format("%s%d %s = %s\n", xy, i, field:get_name(), tostring(value));
|
|
||||||
-- end
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- fields = player_data_type_def:get_fields();
|
|
||||||
|
|
||||||
-- xy = xy .. "Player Data:\n";
|
|
||||||
-- for i = 1, 999 do
|
|
||||||
-- local field = fields[i];
|
|
||||||
-- if field == nil then
|
|
||||||
-- break;
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- local value = field:get_data(player_data);
|
|
||||||
|
|
||||||
-- if qeree[field] == nil then
|
|
||||||
-- qeree[field] = value;
|
|
||||||
-- end
|
|
||||||
|
|
||||||
-- if qeree[field] ~= value then
|
|
||||||
-- xy = string.format("%s%d %s = %s\n", xy, i, field:get_name(), tostring(value));
|
|
||||||
-- end
|
|
||||||
-- end
|
|
||||||
|
|
||||||
this.update_equipped_skill_data(player);
|
this.update_equipped_skill_data(player);
|
||||||
|
|
||||||
this.update_wind_mantle(player, weapon_type);
|
this.update_wind_mantle(player, weapon_type);
|
||||||
@@ -398,6 +359,7 @@ function this.update(player, player_data, weapon_type)
|
|||||||
this.update_dragonheart();
|
this.update_dragonheart();
|
||||||
this.update_resentment(player_data);
|
this.update_resentment(player_data);
|
||||||
this.update_bladescale_hone(player, weapon_type);
|
this.update_bladescale_hone(player, weapon_type);
|
||||||
|
this.update_spiribirds_call(player_data);
|
||||||
|
|
||||||
this.update_generic_skill("dereliction", player_data, symbiosis_skill_lost_vital_field,
|
this.update_generic_skill("dereliction", player_data, symbiosis_skill_lost_vital_field,
|
||||||
nil, nil, nil, nil, true, nil, dereliction_breakpoints);
|
nil, nil, nil, nil, true, nil, dereliction_breakpoints);
|
||||||
@@ -435,12 +397,12 @@ function this.update_generic_skill(skill_key, value_owner, value_holder, timer_o
|
|||||||
is_infinite, minimal_value, level_breakpoints)
|
is_infinite, minimal_value, level_breakpoints)
|
||||||
|
|
||||||
local skill_data = skill_data_list[skill_key];
|
local skill_data = skill_data_list[skill_key];
|
||||||
if skill_data ~= nil and not skill_data.is_equipped then
|
if skill_data ~= nil and skill_data.is_equipped ~= nil and not skill_data.is_equipped then
|
||||||
this.list[skill_key] = nil;
|
this.list[skill_key] = nil;
|
||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, skills_type_name, skill_key,
|
buffs.update_generic_buff(this.list, skills_type_name, skill_key, this.get_skill_name,
|
||||||
value_owner, value_holder, timer_owner, timer_holder, duration_owner, duration_holder,
|
value_owner, value_holder, timer_owner, timer_holder, duration_owner, duration_holder,
|
||||||
is_infinite, minimal_value, level_breakpoints);
|
is_infinite, minimal_value, level_breakpoints);
|
||||||
end
|
end
|
||||||
@@ -452,15 +414,11 @@ function this.update_equipped_skill_data(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
-- xy = ""
|
|
||||||
-- for i = 0, 999 do
|
|
||||||
-- local has_skill = has_skill_method:call(player_skill_list, i, 1);
|
|
||||||
-- if has_skill then
|
|
||||||
-- xy = string.format("%s%d = %s\n", xy, i, tostring(has_skill));
|
|
||||||
-- end
|
|
||||||
-- end
|
|
||||||
|
|
||||||
for skill_key, skill_data in pairs(skill_data_list) do
|
for skill_key, skill_data in pairs(skill_data_list) do
|
||||||
|
if skill_data.is_equipped == nil then
|
||||||
|
goto continue;
|
||||||
|
end
|
||||||
|
|
||||||
local re_skill_data = get_skill_data_method:call(player_skill_list, skill_data.id);
|
local re_skill_data = get_skill_data_method:call(player_skill_list, skill_data.id);
|
||||||
if re_skill_data == nil then
|
if re_skill_data == nil then
|
||||||
goto continue;
|
goto continue;
|
||||||
@@ -516,7 +474,7 @@ function this.update_wind_mantle(player, weapon_type)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, skills_type_name, "wind_mantle", level, wind_mantle_duration - (wind_mantle_timer / 60), wind_mantle_duration);
|
buffs.update_generic(this.list, skills_type_name, "wind_mantle", this.get_skill_name, level, wind_mantle_duration - (wind_mantle_timer / 60), wind_mantle_duration);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_maximum_might(player_data)
|
function this.update_maximum_might(player_data)
|
||||||
@@ -544,17 +502,17 @@ function this.update_maximum_might(player_data)
|
|||||||
end
|
end
|
||||||
|
|
||||||
elseif skill == nil then
|
elseif skill == nil then
|
||||||
local name = language.current_language.skills.maximum_might;
|
local maximum_might_name = this.get_skill_name("maximum_might");
|
||||||
|
|
||||||
if whole_body_timer < maximum_might_previous_timer_value then
|
if whole_body_timer < maximum_might_previous_timer_value then
|
||||||
this.list.maximum_might = buffs.new(skills_type_name, "maximum_might", name, 1);
|
this.list.maximum_might = buffs.new(skills_type_name, "maximum_might", maximum_might_name, 1);
|
||||||
|
|
||||||
elseif is_timer_zero then
|
elseif is_timer_zero then
|
||||||
if maximum_might_delay_timer == nil then
|
if maximum_might_delay_timer == nil then
|
||||||
maximum_might_delay_timer = time.new_delay_timer(function()
|
maximum_might_delay_timer = time.new_delay_timer(function()
|
||||||
maximum_might_delay_timer = nil;
|
maximum_might_delay_timer = nil;
|
||||||
|
|
||||||
this.list.maximum_might = buffs.new(skills_type_name, "maximum_might", name, 1);
|
this.list.maximum_might = buffs.new(skills_type_name, "maximum_might", maximum_might_name, 1);
|
||||||
end, 3.5);
|
end, 3.5);
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -579,8 +537,13 @@ function this.update_bloodlust()
|
|||||||
end
|
end
|
||||||
|
|
||||||
if this.list.bloodlust == nil then
|
if this.list.bloodlust == nil then
|
||||||
local name = language.current_language.skills.bloodlust;
|
local bloodlust_name = this.get_skill_name("bloodlust");
|
||||||
this.list.bloodlust = buffs.new(skills_type_name, "bloodlust", name);
|
if bloodlust_name == nil then
|
||||||
|
error_handler.report("skills.update_generic_buff", "Failed to access Data: bloodlust_name");
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
this.list.bloodlust = buffs.new(skills_type_name, "bloodlust", bloodlust_name);
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -631,7 +594,7 @@ function this.update_frenzied_bloodlust(player, player_data)
|
|||||||
timer = equip_skill_231_wp_off_timer;
|
timer = equip_skill_231_wp_off_timer;
|
||||||
end
|
end
|
||||||
|
|
||||||
local skill = buffs.update_generic(this.list, skills_type_name, "frenzied_bloodlust", 1, timer / 60);
|
local skill = buffs.update_generic(this.list, skills_type_name, "frenzied_bloodlust", this.get_skill_name, 1, timer / 60);
|
||||||
|
|
||||||
if is_wp_off_timer_max then
|
if is_wp_off_timer_max then
|
||||||
skill.duration = frenzied_bloodlust_duration / 60;
|
skill.duration = frenzied_bloodlust_duration / 60;
|
||||||
@@ -651,7 +614,7 @@ function this.update_peak_performance()
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, skills_type_name, "peak_performance");
|
buffs.update_generic(this.list, skills_type_name, "peak_performance", this.get_skill_name);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_dragonheart()
|
function this.update_dragonheart()
|
||||||
@@ -674,7 +637,7 @@ function this.update_dragonheart()
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, skills_type_name, "dragonheart");
|
buffs.update_generic(this.list, skills_type_name, "dragonheart", this.get_skill_name);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_resentment(player_data)
|
function this.update_resentment(player_data)
|
||||||
@@ -694,7 +657,7 @@ function this.update_resentment(player_data)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, skills_type_name, "resentment");
|
buffs.update_generic(this.list, skills_type_name, "resentment", this.get_skill_name);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_bladescale_hone(player, weapon_type)
|
function this.update_bladescale_hone(player, weapon_type)
|
||||||
@@ -706,16 +669,31 @@ function this.update_bladescale_hone(player, weapon_type)
|
|||||||
this.update_generic_skill("bladescale_hone", nil, nil, player, _equip_skill_216_bottle_up_timer_field);
|
this.update_generic_skill("bladescale_hone", nil, nil, player, _equip_skill_216_bottle_up_timer_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_names()
|
function this.update_spiribirds_call(player_data)
|
||||||
for skill_key, skill in pairs(this.list) do
|
local equip_skill_211_timer = equip_skill_211_timer_field:get_data(player_data);
|
||||||
local name = language.current_language.skills[skill_key];
|
if equip_skill_211_timer == nil then
|
||||||
|
error_handler.report("skills.update_spiribirds_call", "Failed to access Data: equip_skill_211_timer");
|
||||||
if name == nil then
|
return;
|
||||||
name = skill_key;
|
|
||||||
end
|
|
||||||
|
|
||||||
skill.name = name;
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if utils.number.is_equal(equip_skill_211_timer, 0) then
|
||||||
|
this.list.spiribirds_call = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local timer = spiribirds_call_duration - (equip_skill_211_timer / 60);
|
||||||
|
|
||||||
|
buffs.update_generic(this.list, skills_type_name, "spiribirds_call", this.get_skill_name, 1, timer, spiribirds_call_duration);
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.get_skill_name(skill_key)
|
||||||
|
local skill_name = get_name_method:call(nil, skill_data_list[skill_key].id);
|
||||||
|
if skill_name == nil then
|
||||||
|
error_handler.report("skills.get_skill_name", string.format("Failed to access Data: %s_name", skill_key));
|
||||||
|
return skill_key;
|
||||||
|
end
|
||||||
|
|
||||||
|
return skill_name;
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_dependencies()
|
function this.init_dependencies()
|
||||||
|
|||||||
@@ -58,10 +58,13 @@ this.list = {
|
|||||||
harvest_moon = nil,
|
harvest_moon = nil,
|
||||||
-- Light Bowgun
|
-- Light Bowgun
|
||||||
fanning_maneuver = nil,
|
fanning_maneuver = nil,
|
||||||
|
wyvernblast_reload = nil,
|
||||||
-- Heavy Bowgun
|
-- Heavy Bowgun
|
||||||
counter_charger = nil,
|
counter_charger = nil,
|
||||||
rising_moon = nil,
|
rising_moon = nil,
|
||||||
setting_sun = nil,
|
setting_sun = nil,
|
||||||
|
overheat = nil,
|
||||||
|
wyvernsnipe_reload = nil,
|
||||||
-- Hammer
|
-- Hammer
|
||||||
impact_burst = nil,
|
impact_burst = nil,
|
||||||
-- Gunlance
|
-- Gunlance
|
||||||
@@ -93,6 +96,57 @@ this.list = {
|
|||||||
bolt_boost = nil
|
bolt_boost = nil
|
||||||
};
|
};
|
||||||
|
|
||||||
|
local weapon_skill_ids = {
|
||||||
|
-- Great Sword
|
||||||
|
power_sheathe = nil,
|
||||||
|
-- Switch Axe
|
||||||
|
amped_state = nil,
|
||||||
|
switch_charger = nil,
|
||||||
|
axe_heavy_slam = nil,
|
||||||
|
-- Long Sword
|
||||||
|
spirit_gauge_autofill = nil, -- Soaring Kick, Iai Slash
|
||||||
|
spirit_gauge = nil,
|
||||||
|
harvest_moon = 94,
|
||||||
|
-- Light Bowgun
|
||||||
|
fanning_maneuver = 72,
|
||||||
|
wyvernblast_reload = nil,
|
||||||
|
-- Heavy Bowgun
|
||||||
|
counter_charger = 76,
|
||||||
|
rising_moon = 147,
|
||||||
|
setting_sun = 149,
|
||||||
|
overheat = nil,
|
||||||
|
wyvernsnipe_reload = nil,
|
||||||
|
-- Hammer
|
||||||
|
impact_burst = 109,
|
||||||
|
-- Gunlance
|
||||||
|
ground_splitter = 46,
|
||||||
|
erupting_cannon = 121,
|
||||||
|
-- Lance
|
||||||
|
anchor_rage = 37,
|
||||||
|
spiral_thrust = 38,
|
||||||
|
twin_wine = nil,
|
||||||
|
-- Sword & Shield
|
||||||
|
destroyer_oil = 97,
|
||||||
|
-- Dual Blades
|
||||||
|
ironshine_silk = 104,
|
||||||
|
archdemon_mode = nil,
|
||||||
|
-- Hunting Horn
|
||||||
|
silkbind_shockwave = 114,
|
||||||
|
bead_of_resonance = 35,
|
||||||
|
sonic_bloom = 112,
|
||||||
|
-- Charge Blade
|
||||||
|
element_boost = nil,
|
||||||
|
sword_boost_mode = nil,
|
||||||
|
-- Insect Glaive
|
||||||
|
red_extract = nil,
|
||||||
|
white_extract = nil,
|
||||||
|
orange_extract = nil,
|
||||||
|
all_extracts_mix = nil,
|
||||||
|
-- Bow
|
||||||
|
herculean_draw = nil,
|
||||||
|
bolt_boost = 154
|
||||||
|
};
|
||||||
|
|
||||||
-- 0 Great Sword
|
-- 0 Great Sword
|
||||||
-- 1 Switch Axe
|
-- 1 Switch Axe
|
||||||
-- 2 Long Sword
|
-- 2 Long Sword
|
||||||
@@ -113,6 +167,8 @@ local previous_weapon_type = -1;
|
|||||||
|
|
||||||
local spirit_gauge_breakpoints = {3, 2};
|
local spirit_gauge_breakpoints = {3, 2};
|
||||||
|
|
||||||
|
local wyverblast_reload_duration = 60;
|
||||||
|
|
||||||
local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager");
|
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_player_data_method = player_manager_type_def:get_method("get_PlayerData");
|
||||||
|
|
||||||
@@ -168,6 +224,8 @@ local get_long_sword_shell_010_list_item_method = long_sword_shell_010_list_type
|
|||||||
local light_bowgun_type_def = sdk.find_type_definition("snow.player.LightBowgun");
|
local light_bowgun_type_def = sdk.find_type_definition("snow.player.LightBowgun");
|
||||||
-- Fanning Maneuver
|
-- Fanning Maneuver
|
||||||
local light_bowgun_wire_buff_timer_field = light_bowgun_type_def:get_field("LightBowgunWireBuffTimer");
|
local light_bowgun_wire_buff_timer_field = light_bowgun_type_def:get_field("LightBowgunWireBuffTimer");
|
||||||
|
-- Wyvernblast Reload
|
||||||
|
local wyvernblast_reload_timer_field = player_data_type_def:get_field("_WyvernBlastReloadTimer");
|
||||||
|
|
||||||
-- Heavy Bowgun
|
-- Heavy Bowgun
|
||||||
|
|
||||||
@@ -175,7 +233,6 @@ local heavy_bowgun_type_def = sdk.find_type_definition("snow.player.HeavyBowgun"
|
|||||||
-- Counter Charger
|
-- Counter Charger
|
||||||
local reduce_charge_timer_field = heavy_bowgun_type_def:get_field("_ReduseChargeTimer");
|
local reduce_charge_timer_field = heavy_bowgun_type_def:get_field("_ReduseChargeTimer");
|
||||||
local reduce_charge_timer_base_field = heavy_bowgun_type_def:get_field("_ReduseChargeTimeBase");
|
local reduce_charge_timer_base_field = heavy_bowgun_type_def:get_field("_ReduseChargeTimeBase");
|
||||||
|
|
||||||
-- Rising Moon
|
-- Rising Moon
|
||||||
local light_bowgun_shell_manager_type_def = sdk.find_type_definition("snow.shell.LightBowgunShellManager");
|
local light_bowgun_shell_manager_type_def = sdk.find_type_definition("snow.shell.LightBowgunShellManager");
|
||||||
local get_light_bowgun_shell_030s_speed_boost_list_method = light_bowgun_shell_manager_type_def:get_method("get_getLightBowgunShell030s_SpeedBoost");
|
local get_light_bowgun_shell_030s_speed_boost_list_method = light_bowgun_shell_manager_type_def:get_method("get_getLightBowgunShell030s_SpeedBoost");
|
||||||
@@ -183,13 +240,17 @@ local get_light_bowgun_shell_030s_speed_boost_list_method = light_bowgun_shell_m
|
|||||||
local light_bowgun_shell_030_type_def = sdk.find_type_definition("snow.shell.LightBowgunShell030");
|
local light_bowgun_shell_030_type_def = sdk.find_type_definition("snow.shell.LightBowgunShell030");
|
||||||
local light_bowgun_shell_030_is_enable_hit_field = light_bowgun_shell_030_type_def:get_field("<IsEnableHit>k__BackingField");
|
local light_bowgun_shell_030_is_enable_hit_field = light_bowgun_shell_030_type_def:get_field("<IsEnableHit>k__BackingField");
|
||||||
local light_bowgun_shell_030_timer_field = light_bowgun_shell_030_type_def:get_field("_Timer");
|
local light_bowgun_shell_030_timer_field = light_bowgun_shell_030_type_def:get_field("_Timer");
|
||||||
|
|
||||||
-- Setting Sun
|
-- Setting Sun
|
||||||
local get_light_bowgun_shell_030s_all_list_method = light_bowgun_shell_manager_type_def:get_method("get_getLightBowgunShell030s_All");
|
local get_light_bowgun_shell_030s_all_list_method = light_bowgun_shell_manager_type_def:get_method("get_getLightBowgunShell030s_All");
|
||||||
|
|
||||||
local light_bowgun_shell_030_list_type_def = sdk.find_type_definition("System.Collections.Generic.List`1<snow.shell.LightBowgunShell030>");
|
local light_bowgun_shell_030_list_type_def = sdk.find_type_definition("System.Collections.Generic.List`1<snow.shell.LightBowgunShell030>");
|
||||||
local get_light_bowgun_shell_030_list_count_method = light_bowgun_shell_030_list_type_def:get_method("get_Count");
|
local get_light_bowgun_shell_030_list_count_method = light_bowgun_shell_030_list_type_def:get_method("get_Count");
|
||||||
local get_light_bowgun_shell_030_list_item_method = light_bowgun_shell_030_list_type_def:get_method("get_Item");
|
local get_light_bowgun_shell_030_list_item_method = light_bowgun_shell_030_list_type_def:get_method("get_Item");
|
||||||
|
-- Overheat
|
||||||
|
local heavy_bowgun_overheat_timer_field = player_data_type_def:get_field("_HeavyBowgunOverHeatTimer");
|
||||||
|
-- Wyvernsnipe Reload
|
||||||
|
local heavy_bowgun_wyvern_snipe_timer_field = player_data_type_def:get_field("_HeavyBowgunWyvernSnipeTimer");
|
||||||
|
|
||||||
|
|
||||||
-- Hammer
|
-- Hammer
|
||||||
|
|
||||||
@@ -345,6 +406,8 @@ local single_mvalue_field = single_type_def:get_field("mValue");
|
|||||||
local int32_type_def = sdk.find_type_definition("System.Int32");
|
local int32_type_def = sdk.find_type_definition("System.Int32");
|
||||||
local int32_mvalue_field = int32_type_def:get_field("mValue");
|
local int32_mvalue_field = int32_type_def:get_field("mValue");
|
||||||
|
|
||||||
|
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.PlWeaponActionId)");
|
||||||
|
|
||||||
local heavy_bowgun_shot_type_data_fields = { explode_pile_data_normal_field, explode_pile_data_radiate_field, explode_pile_data_spread_field};
|
local heavy_bowgun_shot_type_data_fields = { explode_pile_data_normal_field, explode_pile_data_radiate_field, explode_pile_data_spread_field};
|
||||||
|
|
||||||
@@ -365,10 +428,10 @@ function this.update(player, player_data, weapon_type)
|
|||||||
this.update_long_sword_skills(player);
|
this.update_long_sword_skills(player);
|
||||||
|
|
||||||
elseif weapon_type == 3 then
|
elseif weapon_type == 3 then
|
||||||
this.update_light_bowgun_skills(player);
|
this.update_light_bowgun_skills(player, player_data);
|
||||||
|
|
||||||
elseif weapon_type == 4 then
|
elseif weapon_type == 4 then
|
||||||
this.update_heavy_bowgun_skills(player);
|
this.update_heavy_bowgun_skills(player, player_data);
|
||||||
|
|
||||||
elseif weapon_type == 5 then
|
elseif weapon_type == 5 then
|
||||||
this.update_hammer_skills(player);
|
this.update_hammer_skills(player);
|
||||||
@@ -400,8 +463,8 @@ function this.update(player, player_data, weapon_type)
|
|||||||
end
|
end
|
||||||
|
|
||||||
function this.update_great_sword_skills(player)
|
function this.update_great_sword_skills(player)
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "power_sheathe", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "power_sheathe", this.get_weapon_skill_name,
|
||||||
player, move_wp_off_buff_set_time_field, player, move_wp_off_buff_set_time_field);
|
nil, nil, player, move_wp_off_buff_set_time_field, player, move_wp_off_buff_set_time_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_switch_axe_skills(player)
|
function this.update_switch_axe_skills(player)
|
||||||
@@ -411,26 +474,26 @@ function this.update_switch_axe_skills(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "amped_state", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "amped_state", this.get_weapon_skill_name,
|
||||||
player, get_bottle_awake_duration_timer_method, player, bottle_awake_duration_time_field);
|
nil, nil, player, get_bottle_awake_duration_timer_method, player, bottle_awake_duration_time_field);
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "switch_charger", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "switch_charger", this.get_weapon_skill_name,
|
||||||
player, no_use_slash_gauge_timer_field, player_user_data_slash_axe, get_no_user_slash_gauge_time_method);
|
nil, nil, player, no_use_slash_gauge_timer_field, player_user_data_slash_axe, get_no_user_slash_gauge_time_method);
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "axe_heavy_slam", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "axe_heavy_slam", this.get_weapon_skill_name,
|
||||||
player, bottle_awake_assist_timer_field);
|
nil, nil, player, bottle_awake_assist_timer_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_long_sword_skills(player)
|
function this.update_long_sword_skills(player)
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "spirit_gauge_autofill", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "spirit_gauge_autofill", this.get_weapon_skill_name,
|
||||||
player, get_long_sword_gauge_powerup_time_method);
|
nil, nil, player, get_long_sword_gauge_powerup_time_method);
|
||||||
|
|
||||||
this.update_spirit_gauge(player);
|
this.update_spirit_gauge(player);
|
||||||
this.update_harvest_moon();
|
this.update_harvest_moon();
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_spirit_gauge(player)
|
function this.update_spirit_gauge(player)
|
||||||
local weapon_skill = buffs.update_generic_buff(this.list, weapon_skills_type_name, "spirit_gauge",
|
local weapon_skill = buffs.update_generic_buff(this.list, weapon_skills_type_name, "spirit_gauge", this.get_weapon_skill_name,
|
||||||
player, get_long_sword_gauge_lv_method, player, get_long_sword_gauge_lv_timer_method, nil, nil, false, nil, spirit_gauge_breakpoints);
|
player, get_long_sword_gauge_lv_method, player, get_long_sword_gauge_lv_timer_method, nil, nil, false, nil, spirit_gauge_breakpoints);
|
||||||
|
|
||||||
if weapon_skill == nil then
|
if weapon_skill == nil then
|
||||||
@@ -496,7 +559,7 @@ function this.update_harvest_moon()
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
local life_timer = life_timer_field:get_data(master_long_sword_shell_010);
|
local life_timer = long_sword_shell_010_life_timer_field:get_data(master_long_sword_shell_010);
|
||||||
if life_timer == nil then
|
if life_timer == nil then
|
||||||
error_handler.report("weapon_skills.update_harvest_moon", "Failed to access Data: life_timer");
|
error_handler.report("weapon_skills.update_harvest_moon", "Failed to access Data: life_timer");
|
||||||
return;
|
return;
|
||||||
@@ -507,20 +570,43 @@ function this.update_harvest_moon()
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, "harvest_moon", 1, life_timer);
|
buffs.update_generic(this.list, weapon_skills_type_name, "harvest_moon", this.get_weapon_skill_name, 1, life_timer);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_light_bowgun_skills(player)
|
function this.update_light_bowgun_skills(player, player_data)
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "fanning_maneuver", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "fanning_maneuver", this.get_weapon_skill_name,
|
||||||
player, light_bowgun_wire_buff_timer_field);
|
nil, nil, player, light_bowgun_wire_buff_timer_field);
|
||||||
|
|
||||||
|
this.update_wyvernblast_reload(player_data);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_heavy_bowgun_skills(player)
|
function this.update_wyvernblast_reload(player_data)
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "counter_charger", nil, nil,
|
local wyvernblast_reload_timer = wyvernblast_reload_timer_field:get_data(player_data);
|
||||||
player, reduce_charge_timer_field, player, reduce_charge_timer_base_field);
|
if wyvernblast_reload_timer == nil then
|
||||||
|
error_handler.report("weapon_skills.update_wyvernblast_reload", "Failed to access Data: heavy_bowgun_overheat_timer_field");
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if wyvernblast_reload_timer <= 1 then
|
||||||
|
this.list.wyvernblast_reload = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
local timer = wyverblast_reload_duration - (wyvernblast_reload_timer / 60);
|
||||||
|
|
||||||
|
buffs.update_generic(this.list, weapon_skills_type_name, "wyvernblast_reload", this.get_weapon_skill_name, 1, timer);
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_heavy_bowgun_skills(player, player_data)
|
||||||
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "counter_charger", this.get_weapon_skill_name,
|
||||||
|
nil, nil, player, reduce_charge_timer_field, player, reduce_charge_timer_base_field);
|
||||||
|
|
||||||
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "wyvernsnipe_reload", this.get_weapon_skill_name,
|
||||||
|
nil, nil, player_data, heavy_bowgun_wyvern_snipe_timer_field);
|
||||||
|
|
||||||
this.update_rising_moon();
|
this.update_rising_moon();
|
||||||
this.update_setting_sun()
|
this.update_setting_sun();
|
||||||
|
this.update_overheat(player_data);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_rising_moon()
|
function this.update_rising_moon()
|
||||||
@@ -575,7 +661,7 @@ function this.update_rising_moon()
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, "rising_moon", 1, timer);
|
buffs.update_generic(this.list, weapon_skills_type_name, "rising_moon", this.get_weapon_skill_name, 1, timer);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_setting_sun()
|
function this.update_setting_sun()
|
||||||
@@ -635,7 +721,22 @@ function this.update_setting_sun()
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, "setting_sun", 1, timer);
|
buffs.update_generic(this.list, weapon_skills_type_name, "setting_sun", this.get_weapon_skill_name, 1, timer);
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.update_overheat(player_data)
|
||||||
|
local heavy_bowgun_overheat_timer = heavy_bowgun_overheat_timer_field:get_data(player_data);
|
||||||
|
if heavy_bowgun_overheat_timer_field == nil then
|
||||||
|
error_handler.report("weapon_skills.update_overheat", "Failed to access Data: heavy_bowgun_overheat_timer_field");
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
if heavy_bowgun_overheat_timer <= 1 then
|
||||||
|
this.list.overheat = nil;
|
||||||
|
return;
|
||||||
|
end
|
||||||
|
|
||||||
|
buffs.update_generic(this.list, weapon_skills_type_name, "overheat", this.get_weapon_skill_name, 1, heavy_bowgun_overheat_timer);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_hammer_skills(player)
|
function this.update_hammer_skills(player)
|
||||||
@@ -645,8 +746,8 @@ function this.update_hammer_skills(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "impact_burst", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "impact_burst", this.get_weapon_skill_name,
|
||||||
player, horn_impact_pulls_timer_field, player_user_data_hammer, hammer_impact_pulls_time_max_field);
|
nil, nil, player, horn_impact_pulls_timer_field, player_user_data_hammer, hammer_impact_pulls_time_max_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_gunlance_skills(player)
|
function this.update_gunlance_skills(player)
|
||||||
@@ -656,8 +757,8 @@ function this.update_gunlance_skills(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "ground_splitter", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "ground_splitter", this.get_weapon_skill_name,
|
||||||
player, shot_damage_up_duration_timer_field, player_user_data_gunlance, get_player_user_data_gunlance_method);
|
nil, nil, player, shot_damage_up_duration_timer_field, player_user_data_gunlance, get_player_user_data_gunlance_method);
|
||||||
|
|
||||||
this.update_erupting_cannon(player, player_user_data_gunlance);
|
this.update_erupting_cannon(player, player_user_data_gunlance);
|
||||||
end
|
end
|
||||||
@@ -675,13 +776,13 @@ function this.update_erupting_cannon(player, player_user_data_gunlance)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "erupting_cannon", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "erupting_cannon", this.get_weapon_skill_name,
|
||||||
player, explode_pile_buff_timer_field, explode_pile_data, explode_pile_data_duration_field);
|
nil, nil, player, explode_pile_buff_timer_field, explode_pile_data, explode_pile_data_duration_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_lance_skills(player)
|
function this.update_lance_skills(player)
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "spiral_thrust", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "spiral_thrust", this.get_weapon_skill_name,
|
||||||
player, get_ruten_timer_method);
|
nil, nil, player, get_ruten_timer_method);
|
||||||
|
|
||||||
this.update_anchor_rage(player);
|
this.update_anchor_rage(player);
|
||||||
this.update_twin_wine(player);
|
this.update_twin_wine(player);
|
||||||
@@ -728,8 +829,8 @@ function this.update_anchor_rage(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "anchor_rage", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "anchor_rage", this.get_weapon_skill_name,
|
||||||
player, get_guard_rage_timer_method, guard_rage_duration_valtype, single_mvalue_field);
|
nil, nil, player, get_guard_rage_timer_method, guard_rage_duration_valtype, single_mvalue_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_twin_wine(player)
|
function this.update_twin_wine(player)
|
||||||
@@ -739,8 +840,8 @@ function this.update_twin_wine(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "twin_wine", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "twin_wine", this.get_weapon_skill_name,
|
||||||
chain_death_match_shell, chain_death_match_shell_life_timer_field);
|
nil, nil, chain_death_match_shell, chain_death_match_shell_life_timer_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_sword_and_shield_skills(player)
|
function this.update_sword_and_shield_skills(player)
|
||||||
@@ -750,8 +851,8 @@ function this.update_sword_and_shield_skills(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "destroyer_oil", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "destroyer_oil", this.get_weapon_skill_name,
|
||||||
player, get_oil_buff_timer_method, player_user_data_short_sword, oil_buff_time_field);
|
nil, nil, player, get_oil_buff_timer_method, player_user_data_short_sword, oil_buff_time_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_dual_blades_skills(player)
|
function this.update_dual_blades_skills(player)
|
||||||
@@ -763,8 +864,10 @@ function this.update_dual_blades_skills(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "ironshine_silk", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "ironshine_silk", this.get_weapon_skill_name,
|
||||||
player, get_sharpness_recovery_buff_valid_timer_method, player_user_data_dual_blades, sharpness_recovery_buff_valid_max_timer_field);
|
nil, nil, player,
|
||||||
|
get_sharpness_recovery_buff_valid_timer_method,
|
||||||
|
player_user_data_dual_blades, sharpness_recovery_buff_valid_max_timer_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_archdemon_mode(player)
|
function this.update_archdemon_mode(player)
|
||||||
@@ -790,7 +893,7 @@ function this.update_archdemon_mode(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, "archdemon_mode", 1, kijin_kyouka_gauge);
|
buffs.update_generic(this.list, weapon_skills_type_name, "archdemon_mode", this.get_weapon_skill_name, 1, kijin_kyouka_gauge);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_hunting_horn_skills(player)
|
function this.update_hunting_horn_skills(player)
|
||||||
@@ -803,8 +906,8 @@ function this.update_hunting_horn_skills(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic_buff(this.list, weapon_skills_type_name, "silkbind_shockwave", nil, nil,
|
buffs.update_generic_buff(this.list, weapon_skills_type_name, "silkbind_shockwave", this.get_weapon_skill_name,
|
||||||
player, horn_impact_pulls_timer_field, player_user_data_horn, horn_impact_pulls_duration_field);
|
nil, nil, player, horn_impact_pulls_timer_field, player_user_data_horn, horn_impact_pulls_duration_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_bead_of_resonance()
|
function this.update_bead_of_resonance()
|
||||||
@@ -864,7 +967,7 @@ function this.update_bead_of_resonance()
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, "bead_of_resonance", 1, life_timer);
|
buffs.update_generic(this.list, weapon_skills_type_name, "bead_of_resonance", this.get_weapon_skill_name, 1, life_timer);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_sonic_bloom(player)
|
function this.update_sonic_bloom(player)
|
||||||
@@ -885,7 +988,7 @@ function this.update_sonic_bloom(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, "sonic_bloom", 1, life_timer);
|
buffs.update_generic(this.list, weapon_skills_type_name, "sonic_bloom", this.get_weapon_skill_name, 1, life_timer);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_charge_blade_skills(player)
|
function this.update_charge_blade_skills(player)
|
||||||
@@ -934,7 +1037,7 @@ function this.update_element_boost(player, player_user_data_charge_axe)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, "element_boost", 1, shield_buff_timer, duration);
|
buffs.update_generic(this.list, weapon_skills_type_name, "element_boost", this.get_weapon_skill_name, 1, shield_buff_timer, duration);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_sword_boost_mode(player, player_user_data_charge_axe)
|
function this.update_sword_boost_mode(player, player_user_data_charge_axe)
|
||||||
@@ -955,7 +1058,8 @@ function this.update_sword_boost_mode(player, player_user_data_charge_axe)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, "sword_boost_mode", 1, sword_buff_timer / 60, sword_buff_time_duration / 60);
|
buffs.update_generic(this.list, weapon_skills_type_name, "sword_boost_mode", this.get_weapon_skill_name, 1,
|
||||||
|
sword_buff_timer / 60, sword_buff_time_duration / 60);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_insect_glaive_skills(player)
|
function this.update_insect_glaive_skills(player)
|
||||||
@@ -968,9 +1072,9 @@ function this.update_insect_glaive_skills(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
this.update_extract(player, "red_extract", get_red_extractive_time_method, red_extractive_max_time_field)
|
this.update_extract(player, "red_extract", get_red_extractive_time_method, red_extractive_max_time_field);
|
||||||
this.update_extract(player, "white_extract", get_white_extractive_time_method, white_extractive_max_time_field)
|
this.update_extract(player, "white_extract", get_white_extractive_time_method, white_extractive_max_time_field);
|
||||||
this.update_extract(player, "orange_extract", get_orange_extractive_time_method, orange_extractive_max_time_field)
|
this.update_extract(player, "orange_extract", get_orange_extractive_time_method, orange_extractive_max_time_field);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_all_extracts_mix(player)
|
function this.update_all_extracts_mix(player)
|
||||||
@@ -1002,7 +1106,8 @@ function this.update_all_extracts_mix(player)
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, "all_extracts_mix", 1, red_extractive_time, all_extractive_max_time);
|
buffs.update_generic(this.list, weapon_skills_type_name, "all_extracts_mix", this.get_weapon_skill_name, 1,
|
||||||
|
red_extractive_time, all_extractive_max_time);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_extract(player, extract_key, time_holder, max_time_holder)
|
function this.update_extract(player, extract_key, time_holder, max_time_holder)
|
||||||
@@ -1047,7 +1152,7 @@ function this.update_extract(player, extract_key, time_holder, max_time_holder)
|
|||||||
duration = extractive_max_time;
|
duration = extractive_max_time;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, extract_key, 1, extractive_time, duration);
|
buffs.update_generic(this.list, weapon_skills_type_name, extract_key, this.get_weapon_skill_name, 1, extractive_time, duration);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_bow_skills(player)
|
function this.update_bow_skills(player)
|
||||||
@@ -1079,21 +1184,30 @@ function this.update_bow_skill(player, bow_skill_key, timer_holder, player_user_
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
buffs.update_generic(this.list, weapon_skills_type_name, bow_skill_key, 1, timer / 60, max_time / 60);
|
buffs.update_generic(this.list, weapon_skills_type_name, bow_skill_key, this.get_weapon_skill_name, 1, timer / 60, max_time / 60);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_names()
|
function this.init_names()
|
||||||
for weapon_skill_key, weapon_skill in pairs(this.list) do
|
for weapon_skill_key, weapon_skill in pairs(this.list) do
|
||||||
local name = language.current_language.weapon_skills[weapon_skill_key];
|
weapon_skill.name = this.get_weapon_skill_name(weapon_skill_key);
|
||||||
|
|
||||||
if name == nil then
|
|
||||||
name = weapon_skill_key;
|
|
||||||
end
|
|
||||||
|
|
||||||
weapon_skill.name = name;
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function this.get_weapon_skill_name(weapon_skill_key)
|
||||||
|
if weapon_skill_ids[weapon_skill_key] == nil then
|
||||||
|
return language.current_language.weapon_skills[weapon_skill_key];
|
||||||
|
else
|
||||||
|
local weapon_skill_name = get_name_method:call(nil, weapon_skill_ids[weapon_skill_key]);
|
||||||
|
if weapon_skill_name == nil then
|
||||||
|
error_handler.report("weapon_skills.get_weapon_skill_name", string.format("Failed to access Data: %s_name", weapon_skill_key));
|
||||||
|
return weapon_skill_key;
|
||||||
|
end
|
||||||
|
|
||||||
|
return weapon_skill_name;
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
function this.init_dependencies()
|
function this.init_dependencies()
|
||||||
buffs = require("MHR_Overlay.Buffs.buffs");
|
buffs = require("MHR_Overlay.Buffs.buffs");
|
||||||
config = require("MHR_Overlay.Misc.config");
|
config = require("MHR_Overlay.Misc.config");
|
||||||
|
|||||||
@@ -42,10 +42,12 @@ local package = package;
|
|||||||
this.list = {};
|
this.list = {};
|
||||||
|
|
||||||
this.creature_ids = {
|
this.creature_ids = {
|
||||||
cutterfly = 50,
|
|
||||||
clothfly = 7,
|
clothfly = 7,
|
||||||
|
butterflame = 28,
|
||||||
|
peepersects = 29,
|
||||||
|
cutterfly = 50,
|
||||||
ruby_wirebug = 62,
|
ruby_wirebug = 62,
|
||||||
gold_wirebug = 63
|
gold_wirebug = 63,
|
||||||
};
|
};
|
||||||
|
|
||||||
function this.new(REcreature)
|
function this.new(REcreature)
|
||||||
@@ -99,6 +101,7 @@ function this.init(creature, REcreature)
|
|||||||
end
|
end
|
||||||
|
|
||||||
creature.name = creature_name;
|
creature.name = creature_name;
|
||||||
|
creature.id = creature_type;
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_UI(creature)
|
function this.init_UI(creature)
|
||||||
@@ -150,7 +153,7 @@ function this.draw(creature, position_on_screen, opacity_scale)
|
|||||||
position_on_screen.x = position_on_screen.x - text_width / 2;
|
position_on_screen.x = position_on_screen.x - text_width / 2;
|
||||||
end
|
end
|
||||||
|
|
||||||
drawing.draw_label(creature.name_label, position_on_screen, opacity_scale, creature.name);
|
drawing.draw_label(creature.name_label, position_on_screen, opacity_scale, creature.name .. " " .. creature.id);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_list()
|
function this.init_list()
|
||||||
|
|||||||
@@ -217,258 +217,6 @@ this.default_language = {
|
|||||||
frenzy_overcome = "Frenzy Overcome"
|
frenzy_overcome = "Frenzy Overcome"
|
||||||
},
|
},
|
||||||
|
|
||||||
consumables = {
|
|
||||||
demondrug = "Demondrug",
|
|
||||||
mega_demondrug = "Mega Demondrug",
|
|
||||||
armorskin = "Armorskin",
|
|
||||||
mega_armorskin = "Mega Armorskin",
|
|
||||||
might_seed = "Might Seed",
|
|
||||||
adamant_seed = "Adamant Seed",
|
|
||||||
demon_powder = "Demon Powder",
|
|
||||||
hardshell_powder = "Hardshell Powder",
|
|
||||||
immunizer = "Immunizer",
|
|
||||||
dash_juice = "Dash Juice",
|
|
||||||
gourmet_fish = "Gourmet Fish"
|
|
||||||
},
|
|
||||||
|
|
||||||
melody_effects = {
|
|
||||||
self_improvement = "Self-Improvement",
|
|
||||||
attack_up = "Attack Up",
|
|
||||||
defense_up = "Defense Up",
|
|
||||||
affinity_up = "Affinity Up",
|
|
||||||
elemental_attack_boost = "Elemental Attack Boost",
|
|
||||||
attack_and_defense_up = "Attack and Defense Up",
|
|
||||||
attack_and_affinity_up = "Attack and Affinity Up",
|
|
||||||
knockbacks_negated = "Knockbacks Negated",
|
|
||||||
earplugs_s = "Earplugs (S)",
|
|
||||||
earplugs_l = "Earplugs (L)",
|
|
||||||
tremors_negated = "Tremors Negated",
|
|
||||||
wind_pressure_negated = "Wind Pressure Negated",
|
|
||||||
stun_negated = "Stun Negated",
|
|
||||||
blight_negated = "Blight Negated",
|
|
||||||
divine_protection = "Divine Protection",
|
|
||||||
health_recovery_s = "Health Recovery (S)",
|
|
||||||
health_recovery_l = "Health Recovery (L)",
|
|
||||||
health_recovery_s_antidote = "Health Recovery (S) + Antidote",
|
|
||||||
health_regeneration = "Health Regeneration",
|
|
||||||
stamina_use_reduced = "Stamina Use Reduced",
|
|
||||||
stamina_recovery_up = "Stamina Recovery Up",
|
|
||||||
sharpness_loss_reduced = "Sharpness Loss Reduced",
|
|
||||||
environment_damage_negated = "Environment Damage Negated",
|
|
||||||
sonic_wave = "Sonic Wave",
|
|
||||||
sonic_barrier = "Sonic Barrier",
|
|
||||||
infernal_melody = "Infernal Melody",
|
|
||||||
sharpness_regeneration = "Sharpness Regeneration",
|
|
||||||
sharpness_extension = "Sharpness Extension"
|
|
||||||
},
|
|
||||||
|
|
||||||
skills = {
|
|
||||||
-- attack_boost = "Attack Boost",
|
|
||||||
agitator = "Agitator",
|
|
||||||
peak_performance = "Peak Performance",
|
|
||||||
resentment = "Resentment",
|
|
||||||
resuscitate = "Resuscitate",
|
|
||||||
-- critical_eye = "Critical Eye",
|
|
||||||
-- critical_boost = "Critical Boost",
|
|
||||||
-- weakness_exploit = "Weakness Exploit",
|
|
||||||
latent_power = "Latent Power",
|
|
||||||
maximum_might = "Maximum Might",
|
|
||||||
-- critical_element = "Critical Element",
|
|
||||||
-- masters_touch = "Master's Touch",
|
|
||||||
-- fire_attack = "Fire Attack",
|
|
||||||
-- water_attack = "Water Attack",
|
|
||||||
-- ice_attack = "Ice Attack",
|
|
||||||
-- thunder_attack = "Thunder Attack",
|
|
||||||
-- dragon_attack = "Dragon Attack",
|
|
||||||
-- poison_attack = "Poison Attack",
|
|
||||||
-- paralysis_attack = "Paralysis Attack",
|
|
||||||
-- sleep_attack = "Sleep Attack",
|
|
||||||
-- blast_attack = "Blast Attack",
|
|
||||||
-- handicraft = "Handicraft",
|
|
||||||
-- razor_sharp = "Razor Sharp",
|
|
||||||
-- spare_shot = "Spare Shot",
|
|
||||||
protective_polish = "Protective Polish",
|
|
||||||
-- minds_eye = "Mind's Eye",
|
|
||||||
-- ballistics = "Ballistics",
|
|
||||||
-- bludgeoner = "Bludgeoner",
|
|
||||||
-- bow_charge_plus = "Bow Charge Plus",
|
|
||||||
-- focus = "Focus",
|
|
||||||
-- power_prolonger = "Power Prolonger",
|
|
||||||
-- marathon_runner = "Marathon Runner",
|
|
||||||
-- constitution= "Constitution",
|
|
||||||
-- stamina_surge = "Stamina Surge",
|
|
||||||
-- guard = "Guard",
|
|
||||||
-- guard_up = "Guard Up",
|
|
||||||
offensive_guard = "Offensive Guard",
|
|
||||||
-- critical_draw = "Critical Draw",
|
|
||||||
-- punishing_draw = "Punishing Draw",
|
|
||||||
-- quick_sheathe = "Quick Sheathe",
|
|
||||||
-- slugger = "Slugger",
|
|
||||||
-- stamina_thief = "Stamina Thief",
|
|
||||||
affinity_sliding = "Affinity Sliding",
|
|
||||||
-- horn_maestro = "Horn Maestro",
|
|
||||||
-- artillery = "Artillery",
|
|
||||||
-- load_shells = "Load Shells",
|
|
||||||
-- special_ammo_boost = "Special Ammo Boost",
|
|
||||||
-- normal_rapid_up = "Normal/Rapid Up",
|
|
||||||
-- pierce_up = "Pierce Up",
|
|
||||||
-- spread_up = "Spread Up",
|
|
||||||
-- ammo_up = "Ammo Up",
|
|
||||||
-- reload_speed = "Reload Speed",
|
|
||||||
-- recoil_down = "Recoil Down",
|
|
||||||
-- steadiness = "Steadiness",
|
|
||||||
-- rapid_fire_up = "Rapid Fire Up",
|
|
||||||
-- defense_boost = "Defense Boost",
|
|
||||||
-- divine_blessing = "Divine Blessing",
|
|
||||||
-- recovery_up = "Recovery Up",
|
|
||||||
-- recovery_speed = "Recovery Speed",
|
|
||||||
-- speed_eating = "Speed Eating",
|
|
||||||
-- earplugs = "Earplugs",
|
|
||||||
-- windproof = "Windproof",
|
|
||||||
-- tremor_resistance = "Tremor Resistance",
|
|
||||||
-- bubbly_dance = "Bubbly Dance",
|
|
||||||
-- evade_window = "Evade Window",
|
|
||||||
-- evade_extender = "Evade Extender",
|
|
||||||
-- fire_resistance = "Fire Resistance",
|
|
||||||
-- water_resistance = "Water Resistance",
|
|
||||||
-- ice_resistance = "Ice Resistance",
|
|
||||||
-- thunder_resistance = "Thunder Resistance",
|
|
||||||
-- Dragon_resistance = "Dragon Resistance",
|
|
||||||
-- blight_resistance = "Blight Resistance",
|
|
||||||
-- poison_resistance = "Poison Resistance",
|
|
||||||
-- paralysis_resistance = "Paralysis Resistance",
|
|
||||||
-- sleep_resistance = "Sleep Resistance",
|
|
||||||
-- stun_resistance = "Stun Resistance",
|
|
||||||
-- muck_resistance = "Muck Resistance",
|
|
||||||
-- blast_resistance = "Blast Resistance",
|
|
||||||
-- botanist = "Botanist",
|
|
||||||
-- geologist = "Geologist",
|
|
||||||
-- partbreaker = "Partbreaker",
|
|
||||||
-- capture_master = "Capture Master",
|
|
||||||
-- carving_master = "Carving Master",
|
|
||||||
-- good_luck = "Good Luck",
|
|
||||||
-- speed_sharpening = "Speed Sharpening",
|
|
||||||
-- bombardier = "Bombardier",
|
|
||||||
-- mushroomancer = "Mushroomancer",
|
|
||||||
-- item_prolonger = "Item Prolonger",
|
|
||||||
-- wide_range = "Wide-Range",
|
|
||||||
-- free_meal = "Free Meal",
|
|
||||||
heroics = "Heroics",
|
|
||||||
-- fortify = "Fortify",
|
|
||||||
-- flinch_free = "Flinch Free",
|
|
||||||
-- jump_master = "Jump Master",
|
|
||||||
-- carving_pro = "Carving Pro",
|
|
||||||
-- hunger_resistance = "Hunger Resistance",
|
|
||||||
-- leap_of_faith = "Leap of Faith",
|
|
||||||
-- diversion = "Diversion",
|
|
||||||
-- master_mounter = "Master Mounter",
|
|
||||||
-- chameleos_blessing = "Chameleos Blessing",
|
|
||||||
-- kushala_blessing = "Kushala Blessing",
|
|
||||||
-- teostra_blessing = "Teostra Blessing",
|
|
||||||
dragonheart = "Dragonheart",
|
|
||||||
-- wirebug_whisperer = "Wirebug Whisperer",
|
|
||||||
wall_runner = "Wall Runner",
|
|
||||||
counterstrike = "Counterstrike",
|
|
||||||
-- rapid_morph = "Rapid Morph",
|
|
||||||
hellfire_cloak = "Hellfire Cloak",
|
|
||||||
-- wind_alignment = "Wind Alignment",
|
|
||||||
-- thunder_alignment = "Thunder Alignment",
|
|
||||||
-- stormsoul = "Stormsoul",
|
|
||||||
-- blood_rite = "Blood Rite",
|
|
||||||
dereliction = "Dereliction",
|
|
||||||
furious = "Furious",
|
|
||||||
-- mail_of_hellfire = "Mail of Hellfire",
|
|
||||||
coalescence = "Coalescence",
|
|
||||||
bloodlust = "Bloodlust",
|
|
||||||
-- defiance = "Defiance",
|
|
||||||
-- sneak_attack = "Sneak Attack",
|
|
||||||
adrenaline_rush = "Adrenaline Rush",
|
|
||||||
-- redirection = "Redirection",
|
|
||||||
-- spiribirds_call = "Spiribird's Call",
|
|
||||||
-- charge_master = "Charge Master",
|
|
||||||
-- foray = "Foray",
|
|
||||||
-- tune_up = "Tune-Up",
|
|
||||||
grinder_s = "Grinder (S)",
|
|
||||||
bladescale_hone = "Bladescale Hone",
|
|
||||||
-- wall_runner_boost = "Wall Runner (Boost)",
|
|
||||||
-- quick_breath = "Quick Breath",
|
|
||||||
-- element_exploit = "Element Exploit",
|
|
||||||
burst = "Burst",
|
|
||||||
-- guts = "Guts",
|
|
||||||
status_trigger = "Status Trigger",
|
|
||||||
intrepid_heart = "Intrepid Heart",
|
|
||||||
-- buildup_boost = "Buildup Boost",
|
|
||||||
-- embolden = "Embolden",
|
|
||||||
wind_mantle = "Wind Mantle",
|
|
||||||
-- powder_mantle = "Powder Mantle",
|
|
||||||
-- berserk = "Berserk",
|
|
||||||
-- strife = "Strife",
|
|
||||||
-- frostcraft = "Frostcraft",
|
|
||||||
-- dragon_conversion = "Dragon Conversion",
|
|
||||||
heaven_sent = "Heaven-Sent",
|
|
||||||
frenzied_bloodlust = "Frenzied Bloodlust",
|
|
||||||
-- blood_awakening = "Blood Awakening",
|
|
||||||
-- shock_absorber = "Shock Absorber",
|
|
||||||
-- inspiration = "Inspiration",
|
|
||||||
|
|
||||||
kushala_daora_soul = "Kushala Daora Soul",
|
|
||||||
},
|
|
||||||
|
|
||||||
dangos = {
|
|
||||||
dango_hurler = "Dango Hurler",
|
|
||||||
dango_specialist = "Dango Specialist",
|
|
||||||
dango_deflector = "Dango Deflector",
|
|
||||||
dango_bulker = "Dango Bulker",
|
|
||||||
dango_booster = "Dango Booster",
|
|
||||||
dango_slugger = "Dango Slugger",
|
|
||||||
dango_bombardier = "Dango Bombardier",
|
|
||||||
dango_temper = "Dango Temper",
|
|
||||||
dango_connector = "Dango Connector",
|
|
||||||
|
|
||||||
dango_insurance = "Dango Insurance",
|
|
||||||
dango_defender_hi = "Dango Defender (Hi)",
|
|
||||||
dango_medic = "Dango Medic",
|
|
||||||
dango_medic_hi = "Dango Medic (Hi)",
|
|
||||||
dango_reviver = "Dango Reviver",
|
|
||||||
dango_immunizer = "Dango Immunizer",
|
|
||||||
dango_fire_res = "Dango Fire Res",
|
|
||||||
dango_water_res = "Dango Water Res",
|
|
||||||
dango_thunder_res = "Dango Thunder Res ",
|
|
||||||
dango_ice_res = "Dango Ice Res",
|
|
||||||
dango_dragon_res = "Dango Dragon Res",
|
|
||||||
dango_fire_res_hi = "Dango Fire Res (Hi)",
|
|
||||||
dango_water_res_hi = "Dango Water Res (Hi)",
|
|
||||||
dango_thunder_res_hi = "Dango Thunder Res (Hi)",
|
|
||||||
dango_ice_res_hi = "Dango Ice Res (Hi)",
|
|
||||||
dango_dragon_res_hi = "Dango Dragon Res (Hi)",
|
|
||||||
dango_moxie = "Dango Moxie",
|
|
||||||
dango_adrenaline = "Dango Adrenaline",
|
|
||||||
dango_defender = "Dango Defender",
|
|
||||||
dango_guard = "Dango Guard",
|
|
||||||
dango_driver = "Dango Driver",
|
|
||||||
|
|
||||||
dango_polisher = "Dango Polisher",
|
|
||||||
dango_pyro = "Dango Pyro",
|
|
||||||
dango_feet = "Dango Feet",
|
|
||||||
dango_marksman = "Dango Marksman",
|
|
||||||
dango_wall_runner = "Dango Wall Runner",
|
|
||||||
dango_fighter = "Dango Fighter",
|
|
||||||
dango_glutton = "Dango Glutton",
|
|
||||||
dango_weakener = "Dango Weakener",
|
|
||||||
dango_rider = "Dango Rider",
|
|
||||||
dango_hunter = "Dango Hunter",
|
|
||||||
dango_shifter = "Dango Shifter",
|
|
||||||
super_recovery_dango = "Super Recovery Dango",
|
|
||||||
dango_flyer = "Dango Flyer"
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
otomo_moves = {
|
|
||||||
rousing_roar = "Rousing Roar",
|
|
||||||
power_drum = "Power Drum",
|
|
||||||
go_fight_win = "Go, Fight, Win"
|
|
||||||
},
|
|
||||||
|
|
||||||
weapon_skills = {
|
weapon_skills = {
|
||||||
-- Great Sword
|
-- Great Sword
|
||||||
power_sheathe = "Power Sheathe",
|
power_sheathe = "Power Sheathe",
|
||||||
@@ -479,31 +227,34 @@ this.default_language = {
|
|||||||
-- Long Sword
|
-- Long Sword
|
||||||
spirit_gauge_autofill = "Spirit Gauge Autofill", -- Soaring Kick, Iai Slash
|
spirit_gauge_autofill = "Spirit Gauge Autofill", -- Soaring Kick, Iai Slash
|
||||||
spirit_gauge = "Spirit Gauge",
|
spirit_gauge = "Spirit Gauge",
|
||||||
harvest_moon = "Harvest Moon",
|
--harvest_moon = "Harvest Moon",
|
||||||
-- Light Bowgun
|
-- Light Bowgun
|
||||||
fanning_maneuver = "Fanning Maneuver",
|
--fanning_maneuver = "Fanning Maneuver",
|
||||||
|
wyvernblast_reload = "Wyvernblast Reload",
|
||||||
-- Heavy Bowgun
|
-- Heavy Bowgun
|
||||||
counter_charger = "Counter Charger",
|
--counter_charger = "Counter Charger",
|
||||||
rising_moon = "Rising Moon",
|
--rising_moon = "Rising Moon",
|
||||||
setting_sun = "Setting Sun",
|
--setting_sun = "Setting Sun",
|
||||||
|
overheat = "Overheat",
|
||||||
|
wyvernsnipe_reload = "Wyvernsnipe Reload",
|
||||||
-- Hammer
|
-- Hammer
|
||||||
impact_burst = "Impact Burst",
|
--impact_burst = "Impact Burst",
|
||||||
-- Gunlance
|
-- Gunlance
|
||||||
ground_splitter = "Ground Splitter",
|
--ground_splitter = "Ground Splitter",
|
||||||
erupting_cannon = "Erupting Cannon",
|
--erupting_cannon = "Erupting Cannon",
|
||||||
-- Lance
|
-- Lance
|
||||||
anchor_rage = "Anchor Rage",
|
--anchor_rage = "Anchor Rage",
|
||||||
spiral_thrust = "Spiral Thrust",
|
--spiral_thrust = "Spiral Thrust",
|
||||||
twin_wine = "Twin Wine",
|
twin_wine = "Twin Wine",
|
||||||
-- Sword & Shield
|
-- Sword & Shield
|
||||||
destroyer_oil = "Destroyer Oil",
|
--destroyer_oil = "Destroyer Oil",
|
||||||
-- Dual Blades
|
-- Dual Blades
|
||||||
ironshine_silk = "Ironshine Silk",
|
ironshine_silk = "Ironshine Silk",
|
||||||
archdemon_mode = "Archdemon Mode",
|
archdemon_mode = "Archdemon Mode",
|
||||||
-- Hunting Horn
|
-- Hunting Horn
|
||||||
silkbind_shockwave = "Silkbind Shockwave",
|
--silkbind_shockwave = "Silkbind Shockwave",
|
||||||
bead_of_resonance = "Bead of Resonance",
|
--bead_of_resonance = "Bead of Resonance",
|
||||||
sonic_bloom = "Sonic Bloom",
|
--sonic_bloom = "Sonic Bloom",
|
||||||
-- Charge Blade
|
-- Charge Blade
|
||||||
element_boost = "Element Boost",
|
element_boost = "Element Boost",
|
||||||
sword_boost_mode ="Sword Boost Mode",
|
sword_boost_mode ="Sword Boost Mode",
|
||||||
@@ -514,7 +265,11 @@ this.default_language = {
|
|||||||
all_extracts_mix = "All Extracts Mix",
|
all_extracts_mix = "All Extracts Mix",
|
||||||
-- Bow
|
-- Bow
|
||||||
herculean_draw = "Herculean Draw",
|
herculean_draw = "Herculean Draw",
|
||||||
bolt_boost = "Bolt Boost"
|
--bolt_boost = "Bolt Boost"
|
||||||
|
},
|
||||||
|
|
||||||
|
misc_buffs = {
|
||||||
|
stamina_use_down = "Stamina Use Down"
|
||||||
},
|
},
|
||||||
|
|
||||||
UI = {
|
UI = {
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ this.vec3 = {};
|
|||||||
this.vec4 = {};
|
this.vec4 = {};
|
||||||
this.math = {};
|
this.math = {};
|
||||||
this.unicode = {};
|
this.unicode = {};
|
||||||
|
this.sdk = {};
|
||||||
|
|
||||||
this.constants = {};
|
this.constants = {};
|
||||||
this.constants.uninitialized_int = -420;
|
this.constants.uninitialized_int = -420;
|
||||||
@@ -442,6 +443,40 @@ function this.unicode.sub(str, i, j)
|
|||||||
return string.sub(str, i, b + c - 1);
|
return string.sub(str, i, b + c - 1);
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function this.sdk.generate_enum(type_def)
|
||||||
|
if not type_def then
|
||||||
|
return {};
|
||||||
|
end
|
||||||
|
|
||||||
|
local fields = type_def:get_fields();
|
||||||
|
local enum = {};
|
||||||
|
|
||||||
|
for i, field in ipairs(fields) do
|
||||||
|
if field:is_static() then
|
||||||
|
local name = field:get_name();
|
||||||
|
local raw_value = field:get_data(nil);
|
||||||
|
|
||||||
|
local enum_entry = {
|
||||||
|
name = name,
|
||||||
|
value = raw_value;
|
||||||
|
};
|
||||||
|
|
||||||
|
table.insert(enum, enum_entry);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return enum;
|
||||||
|
end
|
||||||
|
|
||||||
|
function this.sdk.generate_enum_by_typename(type_name)
|
||||||
|
local type_def = sdk.find_type_definition(type_name);
|
||||||
|
if not type_def then
|
||||||
|
return {};
|
||||||
|
end;
|
||||||
|
|
||||||
|
return this.sdk.generate_enum(type_def);
|
||||||
|
end
|
||||||
|
|
||||||
function this.init_dependencies()
|
function this.init_dependencies()
|
||||||
error_handler = require("MHR_Overlay.Misc.error_handler");
|
error_handler = require("MHR_Overlay.Misc.error_handler");
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ local dangos;
|
|||||||
local abnormal_statuses;
|
local abnormal_statuses;
|
||||||
local otomo_moves;
|
local otomo_moves;
|
||||||
local weapon_skills;
|
local weapon_skills;
|
||||||
|
local misc_buffs;
|
||||||
|
|
||||||
local sdk = sdk;
|
local sdk = sdk;
|
||||||
local tostring = tostring;
|
local tostring = tostring;
|
||||||
@@ -136,6 +137,16 @@ function this.update()
|
|||||||
::continue8::
|
::continue8::
|
||||||
end
|
end
|
||||||
|
|
||||||
|
for key, misc_buffs in pairs(misc_buffs.list) do
|
||||||
|
if not misc_buffs.is_active then
|
||||||
|
goto continue9;
|
||||||
|
end
|
||||||
|
|
||||||
|
table.insert(_displayed_buffs, misc_buffs);
|
||||||
|
|
||||||
|
::continue9::
|
||||||
|
end
|
||||||
|
|
||||||
displayed_buffs = this.sort_buffs(_displayed_buffs, cached_config);
|
displayed_buffs = this.sort_buffs(_displayed_buffs, cached_config);
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -220,6 +231,7 @@ function this.init_dependencies()
|
|||||||
abnormal_statuses = require("MHR_Overlay.Buffs.abnormal_statuses");
|
abnormal_statuses = require("MHR_Overlay.Buffs.abnormal_statuses");
|
||||||
otomo_moves = require("MHR_Overlay.Buffs.otomo_moves");
|
otomo_moves = require("MHR_Overlay.Buffs.otomo_moves");
|
||||||
weapon_skills = require("MHR_Overlay.Buffs.weapon_skills");
|
weapon_skills = require("MHR_Overlay.Buffs.weapon_skills");
|
||||||
|
misc_buffs = require("MHR_Overlay.Buffs.misc_buffs");
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.init_module()
|
function this.init_module()
|
||||||
|
|||||||
@@ -59,19 +59,6 @@
|
|||||||
"waterblight": "Waterblight",
|
"waterblight": "Waterblight",
|
||||||
"webbed": "Webbed"
|
"webbed": "Webbed"
|
||||||
},
|
},
|
||||||
"consumables": {
|
|
||||||
"adamant_seed": "Adamant Seed",
|
|
||||||
"armorskin": "Armorskin",
|
|
||||||
"dash_juice": "Dash Juice",
|
|
||||||
"demon_powder": "Demon Powder",
|
|
||||||
"demondrug": "Demondrug",
|
|
||||||
"gourmet_fish": "Gourmet Fish",
|
|
||||||
"hardshell_powder": "Hardshell Powder",
|
|
||||||
"immunizer": "Immunizer",
|
|
||||||
"mega_armorskin": "Mega Armorskin",
|
|
||||||
"mega_demondrug": "Mega Demondrug",
|
|
||||||
"might_seed": "Might Seed"
|
|
||||||
},
|
|
||||||
"customization_menu": {
|
"customization_menu": {
|
||||||
"UI_font": "UI Font",
|
"UI_font": "UI Font",
|
||||||
"UI_font_notice": "Any changes to the font require script reload!",
|
"UI_font_notice": "Any changes to the font require script reload!",
|
||||||
@@ -375,86 +362,9 @@
|
|||||||
"y": "Y",
|
"y": "Y",
|
||||||
"z": "Z"
|
"z": "Z"
|
||||||
},
|
},
|
||||||
"dangos": {
|
|
||||||
"dango_adrenaline": "Dango Adrenaline",
|
|
||||||
"dango_bombardier": "Dango Bombardier",
|
|
||||||
"dango_booster": "Dango Booster",
|
|
||||||
"dango_bulker": "Dango Bulker",
|
|
||||||
"dango_connector": "Dango Connector",
|
|
||||||
"dango_defender": "Dango Defender",
|
|
||||||
"dango_defender_hi": "Dango Defender (Hi)",
|
|
||||||
"dango_deflector": "Dango Deflector",
|
|
||||||
"dango_dragon_res": "Dango Dragon Res",
|
|
||||||
"dango_dragon_res_hi": "Dango Dragon Res (Hi)",
|
|
||||||
"dango_driver": "Dango Driver",
|
|
||||||
"dango_feet": "Dango Feet",
|
|
||||||
"dango_fighter": "Dango Fighter",
|
|
||||||
"dango_fire_res": "Dango Fire Res",
|
|
||||||
"dango_fire_res_hi": "Dango Fire Res (Hi)",
|
|
||||||
"dango_flyer": "Dango Flyer",
|
|
||||||
"dango_glutton": "Dango Glutton",
|
|
||||||
"dango_guard": "Dango Guard",
|
|
||||||
"dango_hunter": "Dango Hunter",
|
|
||||||
"dango_hurler": "Dango Hurler",
|
|
||||||
"dango_ice_res": "Dango Ice Res",
|
|
||||||
"dango_ice_res_hi": "Dango Ice Res (Hi)",
|
|
||||||
"dango_immunizer": "Dango Immunizer",
|
|
||||||
"dango_insurance": "Dango Insurance",
|
|
||||||
"dango_marksman": "Dango Marksman",
|
|
||||||
"dango_medic": "Dango Medic",
|
|
||||||
"dango_medic_hi": "Dango Medic (Hi)",
|
|
||||||
"dango_moxie": "Dango Moxie",
|
|
||||||
"dango_polisher": "Dango Polisher",
|
|
||||||
"dango_pyro": "Dango Pyro",
|
|
||||||
"dango_reviver": "Dango Reviver",
|
|
||||||
"dango_rider": "Dango Rider",
|
|
||||||
"dango_shifter": "Dango Shifter",
|
|
||||||
"dango_slugger": "Dango Slugger",
|
|
||||||
"dango_specialist": "Dango Specialist",
|
|
||||||
"dango_temper": "Dango Temper",
|
|
||||||
"dango_thunder_res": "Dango Thunder Res ",
|
|
||||||
"dango_thunder_res_hi": "Dango Thunder Res (Hi)",
|
|
||||||
"dango_wall_runner": "Dango Wall Runner",
|
|
||||||
"dango_water_res": "Dango Water Res",
|
|
||||||
"dango_water_res_hi": "Dango Water Res (Hi)",
|
|
||||||
"dango_weakener": "Dango Weakener",
|
|
||||||
"super_recovery_dango": "Super Recovery Dango"
|
|
||||||
},
|
|
||||||
"font_name": "",
|
"font_name": "",
|
||||||
"melody_effects": {
|
"misc_buffs": {
|
||||||
"affinity_up": "Affinity Up",
|
"stamina_use_down": "Stamina Use Down"
|
||||||
"attack_and_affinity_up": "Attack and Affinity Up",
|
|
||||||
"attack_and_defense_up": "Attack and Defense Up",
|
|
||||||
"attack_up": "Attack Up",
|
|
||||||
"blight_negated": "Blight Negated",
|
|
||||||
"defense_up": "Defense Up",
|
|
||||||
"divine_protection": "Divine Protection",
|
|
||||||
"earplugs_l": "Earplugs (L)",
|
|
||||||
"earplugs_s": "Earplugs (S)",
|
|
||||||
"elemental_attack_boost": "Elemental Attack Boost",
|
|
||||||
"environment_damage_negated": "Environment Damage Negated",
|
|
||||||
"health_recovery_l": "Health Recovery (L)",
|
|
||||||
"health_recovery_s": "Health Recovery (S)",
|
|
||||||
"health_recovery_s_antidote": "Health Recovery (S) + Antidote",
|
|
||||||
"health_regeneration": "Health Regeneration",
|
|
||||||
"infernal_melody": "Infernal Melody",
|
|
||||||
"knockbacks_negated": "Knockbacks Negated",
|
|
||||||
"self_improvement": "Self-Improvement",
|
|
||||||
"sharpness_extension": "Sharpness Extension",
|
|
||||||
"sharpness_loss_reduced": "Sharpness Loss Reduced",
|
|
||||||
"sharpness_regeneration": "Sharpness Regeneration",
|
|
||||||
"sonic_barrier": "Sonic Barrier",
|
|
||||||
"sonic_wave": "Sonic Wave",
|
|
||||||
"stamina_recovery_up": "Stamina Recovery Up",
|
|
||||||
"stamina_use_reduced": "Stamina Use Reduced",
|
|
||||||
"stun_negated": "Stun Negated",
|
|
||||||
"tremors_negated": "Tremors Negated",
|
|
||||||
"wind_pressure_negated": "Wind Pressure Negated"
|
|
||||||
},
|
|
||||||
"otomo_moves": {
|
|
||||||
"go_fight_win": "Go, Fight, Win",
|
|
||||||
"power_drum": "Power Drum",
|
|
||||||
"rousing_roar": "Rousing Roar"
|
|
||||||
},
|
},
|
||||||
"parts": {
|
"parts": {
|
||||||
"abdomen": "Abdomen",
|
"abdomen": "Abdomen",
|
||||||
@@ -525,36 +435,6 @@
|
|||||||
"wingclaws": "Wingclaws",
|
"wingclaws": "Wingclaws",
|
||||||
"wings": "Wings"
|
"wings": "Wings"
|
||||||
},
|
},
|
||||||
"skills": {
|
|
||||||
"adrenaline_rush": "Adrenaline Rush",
|
|
||||||
"affinity_sliding": "Affinity Sliding",
|
|
||||||
"agitator": "Agitator",
|
|
||||||
"bladescale_hone": "Bladescale Hone",
|
|
||||||
"bloodlust": "Bloodlust",
|
|
||||||
"burst": "Burst",
|
|
||||||
"coalescence": "Coalescence",
|
|
||||||
"counterstrike": "Counterstrike",
|
|
||||||
"dereliction": "Dereliction",
|
|
||||||
"dragonheart": "Dragonheart",
|
|
||||||
"frenzied_bloodlust": "Frenzied Bloodlust",
|
|
||||||
"furious": "Furious",
|
|
||||||
"grinder_s": "Grinder (S)",
|
|
||||||
"heaven_sent": "Heaven-Sent",
|
|
||||||
"hellfire_cloak": "Hellfire Cloak",
|
|
||||||
"heroics": "Heroics",
|
|
||||||
"intrepid_heart": "Intrepid Heart",
|
|
||||||
"kushala_daora_soul": "Kushala Daora Soul",
|
|
||||||
"latent_power": "Latent Power",
|
|
||||||
"maximum_might": "Maximum Might",
|
|
||||||
"offensive_guard": "Offensive Guard",
|
|
||||||
"peak_performance": "Peak Performance",
|
|
||||||
"protective_polish": "Protective Polish",
|
|
||||||
"resentment": "Resentment",
|
|
||||||
"resuscitate": "Resuscitate",
|
|
||||||
"status_trigger": "Status Trigger",
|
|
||||||
"wall_runner": "Wall Runner",
|
|
||||||
"wind_mantle": "Wind Mantle"
|
|
||||||
},
|
|
||||||
"stats": {
|
"stats": {
|
||||||
"affinity": "Affinity",
|
"affinity": "Affinity",
|
||||||
"attack": "Attack",
|
"attack": "Attack",
|
||||||
@@ -577,34 +457,22 @@
|
|||||||
"weapon_skills": {
|
"weapon_skills": {
|
||||||
"all_extracts_mix": "All Extracts Mix",
|
"all_extracts_mix": "All Extracts Mix",
|
||||||
"amped_state": "Amped State",
|
"amped_state": "Amped State",
|
||||||
"anchor_rage": "Anchor Rage",
|
|
||||||
"archdemon_mode": "Archdemon Mode",
|
"archdemon_mode": "Archdemon Mode",
|
||||||
"axe_heavy_slam": "Axe: Heavy Slam",
|
"axe_heavy_slam": "Axe: Heavy Slam",
|
||||||
"bead_of_resonance": "Bead of Resonance",
|
|
||||||
"bolt_boost": "Bolt Boost",
|
|
||||||
"counter_charger": "Counter Charger",
|
|
||||||
"destroyer_oil": "Destroyer Oil",
|
|
||||||
"element_boost": "Element Boost",
|
"element_boost": "Element Boost",
|
||||||
"erupting_cannon": "Erupting Cannon",
|
|
||||||
"fanning_maneuver": "Fanning Maneuver",
|
|
||||||
"ground_splitter": "Ground Splitter",
|
|
||||||
"harvest_moon": "Harvest Moon",
|
|
||||||
"herculean_draw": "Herculean Draw",
|
"herculean_draw": "Herculean Draw",
|
||||||
"impact_burst": "Impact Burst",
|
|
||||||
"ironshine_silk": "Ironshine Silk",
|
"ironshine_silk": "Ironshine Silk",
|
||||||
"orange_extract": "Orange Extract",
|
"orange_extract": "Orange Extract",
|
||||||
|
"overheat": "Overheat",
|
||||||
"power_sheathe": "Power Sheathe",
|
"power_sheathe": "Power Sheathe",
|
||||||
"red_extract": "Red Extract",
|
"red_extract": "Red Extract",
|
||||||
"rising_moon": "Rising Moon",
|
|
||||||
"setting_sun": "Setting Sun",
|
|
||||||
"silkbind_shockwave": "Silkbind Shockwave",
|
|
||||||
"sonic_bloom": "Sonic Bloom",
|
|
||||||
"spiral_thrust": "Spiral Thrust",
|
|
||||||
"spirit_gauge": "Spirit Gauge",
|
"spirit_gauge": "Spirit Gauge",
|
||||||
"spirit_gauge_autofill": "Spirit Gauge Autofill",
|
"spirit_gauge_autofill": "Spirit Gauge Autofill",
|
||||||
"switch_charger": "Switch Charger",
|
"switch_charger": "Switch Charger",
|
||||||
"sword_boost_mode": "Sword Boost Mode",
|
"sword_boost_mode": "Sword Boost Mode",
|
||||||
"twin_wine": "Twin Wine",
|
"twin_wine": "Twin Wine",
|
||||||
"white_extract": "White Extract"
|
"white_extract": "White Extract",
|
||||||
|
"wyvernblast_reload": "Wyvernblast Reload",
|
||||||
|
"wyvernsnipe_reload": "Wyvernsnipe Reload"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -452,6 +452,9 @@
|
|||||||
"tremors_negated": "Tremors Negated",
|
"tremors_negated": "Tremors Negated",
|
||||||
"wind_pressure_negated": "Wind Pressure Negated"
|
"wind_pressure_negated": "Wind Pressure Negated"
|
||||||
},
|
},
|
||||||
|
"misc_buffs": {
|
||||||
|
"stamina_use_down": "Stamina Use Down"
|
||||||
|
},
|
||||||
"otomo_moves": {
|
"otomo_moves": {
|
||||||
"go_fight_win": "Go, Fight, Win",
|
"go_fight_win": "Go, Fight, Win",
|
||||||
"power_drum": "Power Drum",
|
"power_drum": "Power Drum",
|
||||||
@@ -552,6 +555,7 @@
|
|||||||
"protective_polish": "Protective Polish",
|
"protective_polish": "Protective Polish",
|
||||||
"resentment": "Resentment",
|
"resentment": "Resentment",
|
||||||
"resuscitate": "Resuscitate",
|
"resuscitate": "Resuscitate",
|
||||||
|
"spiribirds_call": "Spiribird's Call",
|
||||||
"status_trigger": "Status Trigger",
|
"status_trigger": "Status Trigger",
|
||||||
"wall_runner": "Wall Runner",
|
"wall_runner": "Wall Runner",
|
||||||
"wind_mantle": "Wind Mantle"
|
"wind_mantle": "Wind Mantle"
|
||||||
@@ -607,6 +611,7 @@
|
|||||||
"impact_burst": "Impact Burst",
|
"impact_burst": "Impact Burst",
|
||||||
"ironshine_silk": "Ironshine Silk",
|
"ironshine_silk": "Ironshine Silk",
|
||||||
"orange_extract": "O Extract",
|
"orange_extract": "O Extract",
|
||||||
|
"overheat": "Overheat",
|
||||||
"power_sheathe": "Power Sheathe",
|
"power_sheathe": "Power Sheathe",
|
||||||
"red_extract": "Red Extract",
|
"red_extract": "Red Extract",
|
||||||
"rising_moon": "Rising Moon",
|
"rising_moon": "Rising Moon",
|
||||||
@@ -622,6 +627,8 @@
|
|||||||
"sword_boost_mode": "Sword Boost Mode",
|
"sword_boost_mode": "Sword Boost Mode",
|
||||||
"sword_charge": "Sword Charge",
|
"sword_charge": "Sword Charge",
|
||||||
"twin_wine": "Twin Wine",
|
"twin_wine": "Twin Wine",
|
||||||
"white_extract": "White Extract"
|
"white_extract": "White Extract",
|
||||||
|
"wyvernblast_reload": "Wyvernblast Reload",
|
||||||
|
"wyvernsnipe_reload": "Wyvernsnipe Reload"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -453,6 +453,9 @@
|
|||||||
"tremors_negated": "Tremors Negated",
|
"tremors_negated": "Tremors Negated",
|
||||||
"wind_pressure_negated": "Wind Pressure Negated"
|
"wind_pressure_negated": "Wind Pressure Negated"
|
||||||
},
|
},
|
||||||
|
"misc_buffs": {
|
||||||
|
"stamina_use_down": "Stamina Use Down"
|
||||||
|
},
|
||||||
"otomo_moves": {
|
"otomo_moves": {
|
||||||
"go_fight_win": "Go, Fight, Win",
|
"go_fight_win": "Go, Fight, Win",
|
||||||
"power_drum": "Power Drum",
|
"power_drum": "Power Drum",
|
||||||
@@ -553,6 +556,7 @@
|
|||||||
"protective_polish": "Protective Polish",
|
"protective_polish": "Protective Polish",
|
||||||
"resentment": "Resentment",
|
"resentment": "Resentment",
|
||||||
"resuscitate": "Resuscitate",
|
"resuscitate": "Resuscitate",
|
||||||
|
"spiribirds_call": "Spiribird's Call",
|
||||||
"status_trigger": "Status Trigger",
|
"status_trigger": "Status Trigger",
|
||||||
"wall_runner": "Wall Runner",
|
"wall_runner": "Wall Runner",
|
||||||
"wind_mantle": "Wind Mantle"
|
"wind_mantle": "Wind Mantle"
|
||||||
@@ -608,6 +612,7 @@
|
|||||||
"impact_burst": "Impact Burst",
|
"impact_burst": "Impact Burst",
|
||||||
"ironshine_silk": "Ironshine Silk",
|
"ironshine_silk": "Ironshine Silk",
|
||||||
"orange_extract": "O Extract",
|
"orange_extract": "O Extract",
|
||||||
|
"overheat": "Overheat",
|
||||||
"power_sheathe": "Power Sheathe",
|
"power_sheathe": "Power Sheathe",
|
||||||
"red_extract": "Red Extract",
|
"red_extract": "Red Extract",
|
||||||
"rising_moon": "Rising Moon",
|
"rising_moon": "Rising Moon",
|
||||||
@@ -623,6 +628,8 @@
|
|||||||
"sword_boost_mode": "Sword Boost Mode",
|
"sword_boost_mode": "Sword Boost Mode",
|
||||||
"sword_charge": "Sword Charge",
|
"sword_charge": "Sword Charge",
|
||||||
"twin_wine": "Twin Wine",
|
"twin_wine": "Twin Wine",
|
||||||
"white_extract": "White Extract"
|
"white_extract": "White Extract",
|
||||||
|
"wyvernblast_reload": "Wyvernblast Reload",
|
||||||
|
"wyvernsnipe_reload": "Wyvernsnipe Reload"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -453,6 +453,9 @@
|
|||||||
"tremors_negated": "Tremors Negated",
|
"tremors_negated": "Tremors Negated",
|
||||||
"wind_pressure_negated": "Wind Pressure Negated"
|
"wind_pressure_negated": "Wind Pressure Negated"
|
||||||
},
|
},
|
||||||
|
"misc_buffs": {
|
||||||
|
"stamina_use_down": "Stamina Use Down"
|
||||||
|
},
|
||||||
"otomo_moves": {
|
"otomo_moves": {
|
||||||
"go_fight_win": "Go, Fight, Win",
|
"go_fight_win": "Go, Fight, Win",
|
||||||
"power_drum": "Power Drum",
|
"power_drum": "Power Drum",
|
||||||
@@ -553,6 +556,7 @@
|
|||||||
"protective_polish": "Protective Polish",
|
"protective_polish": "Protective Polish",
|
||||||
"resentment": "Resentment",
|
"resentment": "Resentment",
|
||||||
"resuscitate": "Resuscitate",
|
"resuscitate": "Resuscitate",
|
||||||
|
"spiribirds_call": "Spiribird's Call",
|
||||||
"status_trigger": "Status Trigger",
|
"status_trigger": "Status Trigger",
|
||||||
"wall_runner": "Wall Runner",
|
"wall_runner": "Wall Runner",
|
||||||
"wind_mantle": "Wind Mantle"
|
"wind_mantle": "Wind Mantle"
|
||||||
@@ -604,6 +608,7 @@
|
|||||||
"impact_burst": "Impact Burst",
|
"impact_burst": "Impact Burst",
|
||||||
"ironshine_silk": "Ironshine Silk",
|
"ironshine_silk": "Ironshine Silk",
|
||||||
"orange_extract": "O Extract",
|
"orange_extract": "O Extract",
|
||||||
|
"overheat": "Overheat",
|
||||||
"power_sheathe": "Power Sheathe",
|
"power_sheathe": "Power Sheathe",
|
||||||
"red_extract": "Red Extract",
|
"red_extract": "Red Extract",
|
||||||
"rising_moon": "Rising Moon",
|
"rising_moon": "Rising Moon",
|
||||||
@@ -619,6 +624,8 @@
|
|||||||
"sword_boost_mode": "Sword Boost Mode",
|
"sword_boost_mode": "Sword Boost Mode",
|
||||||
"sword_charge": "Sword Charge",
|
"sword_charge": "Sword Charge",
|
||||||
"twin_wine": "Twin Wine",
|
"twin_wine": "Twin Wine",
|
||||||
"white_extract": "White Extract"
|
"white_extract": "White Extract",
|
||||||
|
"wyvernblast_reload": "Wyvernblast Reload",
|
||||||
|
"wyvernsnipe_reload": "Wyvernsnipe Reload"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -453,6 +453,9 @@
|
|||||||
"tremors_negated": "Tremors Negated",
|
"tremors_negated": "Tremors Negated",
|
||||||
"wind_pressure_negated": "Wind Pressure Negated"
|
"wind_pressure_negated": "Wind Pressure Negated"
|
||||||
},
|
},
|
||||||
|
"misc_buffs": {
|
||||||
|
"stamina_use_down": "Stamina Use Down"
|
||||||
|
},
|
||||||
"otomo_moves": {
|
"otomo_moves": {
|
||||||
"go_fight_win": "Go, Fight, Win",
|
"go_fight_win": "Go, Fight, Win",
|
||||||
"power_drum": "Power Drum",
|
"power_drum": "Power Drum",
|
||||||
@@ -553,6 +556,7 @@
|
|||||||
"protective_polish": "Protective Polish",
|
"protective_polish": "Protective Polish",
|
||||||
"resentment": "Resentment",
|
"resentment": "Resentment",
|
||||||
"resuscitate": "Resuscitate",
|
"resuscitate": "Resuscitate",
|
||||||
|
"spiribirds_call": "Spiribird's Call",
|
||||||
"status_trigger": "Status Trigger",
|
"status_trigger": "Status Trigger",
|
||||||
"wall_runner": "Wall Runner",
|
"wall_runner": "Wall Runner",
|
||||||
"wind_mantle": "Wind Mantle"
|
"wind_mantle": "Wind Mantle"
|
||||||
@@ -608,6 +612,7 @@
|
|||||||
"impact_burst": "Impact Burst",
|
"impact_burst": "Impact Burst",
|
||||||
"ironshine_silk": "Ironshine Silk",
|
"ironshine_silk": "Ironshine Silk",
|
||||||
"orange_extract": "O Extract",
|
"orange_extract": "O Extract",
|
||||||
|
"overheat": "Overheat",
|
||||||
"power_sheathe": "Power Sheathe",
|
"power_sheathe": "Power Sheathe",
|
||||||
"red_extract": "Red Extract",
|
"red_extract": "Red Extract",
|
||||||
"rising_moon": "Rising Moon",
|
"rising_moon": "Rising Moon",
|
||||||
@@ -623,6 +628,8 @@
|
|||||||
"sword_boost_mode": "Sword Boost Mode",
|
"sword_boost_mode": "Sword Boost Mode",
|
||||||
"sword_charge": "Sword Charge",
|
"sword_charge": "Sword Charge",
|
||||||
"twin_wine": "Twin Wine",
|
"twin_wine": "Twin Wine",
|
||||||
"white_extract": "White Extract"
|
"white_extract": "White Extract",
|
||||||
|
"wyvernblast_reload": "Wyvernblast Reload",
|
||||||
|
"wyvernsnipe_reload": "Wyvernsnipe Reload"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -453,6 +453,9 @@
|
|||||||
"tremors_negated": "Tremors Negated",
|
"tremors_negated": "Tremors Negated",
|
||||||
"wind_pressure_negated": "Wind Pressure Negated"
|
"wind_pressure_negated": "Wind Pressure Negated"
|
||||||
},
|
},
|
||||||
|
"misc_buffs": {
|
||||||
|
"stamina_use_down": "Stamina Use Down"
|
||||||
|
},
|
||||||
"otomo_moves": {
|
"otomo_moves": {
|
||||||
"go_fight_win": "Go, Fight, Win",
|
"go_fight_win": "Go, Fight, Win",
|
||||||
"power_drum": "Power Drum",
|
"power_drum": "Power Drum",
|
||||||
@@ -553,6 +556,7 @@
|
|||||||
"protective_polish": "Protective Polish",
|
"protective_polish": "Protective Polish",
|
||||||
"resentment": "Resentment",
|
"resentment": "Resentment",
|
||||||
"resuscitate": "Resuscitate",
|
"resuscitate": "Resuscitate",
|
||||||
|
"spiribirds_call": "Spiribird's Call",
|
||||||
"status_trigger": "Status Trigger",
|
"status_trigger": "Status Trigger",
|
||||||
"wall_runner": "Wall Runner",
|
"wall_runner": "Wall Runner",
|
||||||
"wind_mantle": "Wind Mantle"
|
"wind_mantle": "Wind Mantle"
|
||||||
@@ -608,6 +612,7 @@
|
|||||||
"impact_burst": "Impact Burst",
|
"impact_burst": "Impact Burst",
|
||||||
"ironshine_silk": "Ironshine Silk",
|
"ironshine_silk": "Ironshine Silk",
|
||||||
"orange_extract": "O Extract",
|
"orange_extract": "O Extract",
|
||||||
|
"overheat": "Overheat",
|
||||||
"power_sheathe": "Power Sheathe",
|
"power_sheathe": "Power Sheathe",
|
||||||
"red_extract": "Red Extract",
|
"red_extract": "Red Extract",
|
||||||
"rising_moon": "Rising Moon",
|
"rising_moon": "Rising Moon",
|
||||||
@@ -623,6 +628,8 @@
|
|||||||
"sword_boost_mode": "Sword Boost Mode",
|
"sword_boost_mode": "Sword Boost Mode",
|
||||||
"sword_charge": "Sword Charge",
|
"sword_charge": "Sword Charge",
|
||||||
"twin_wine": "Twin Wine",
|
"twin_wine": "Twin Wine",
|
||||||
"white_extract": "White Extract"
|
"white_extract": "White Extract",
|
||||||
|
"wyvernblast_reload": "Wyvernblast Reload",
|
||||||
|
"wyvernsnipe_reload": "Wyvernsnipe Reload"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user