diff --git a/reframework/autorun/MHR_Overlay/Buffs/abnormal_statuses.lua b/reframework/autorun/MHR_Overlay/Buffs/abnormal_statuses.lua index f4e8c1c..8490095 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/abnormal_statuses.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/abnormal_statuses.lua @@ -109,6 +109,10 @@ this.keys = { "frenzy_infection" }; +this.UI = nil; + +local abnormal_statuses_type_name = "abnormal_statuses"; + local frenzy_infected_duration = 121; local player_quest_base_type_def = sdk.find_type_definition("snow.player.PlayerQuestBase"); @@ -221,12 +225,12 @@ function this.update(player, player_data) end function this.update_abnormal_status(key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) - return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.abnormal_statuses, this.get_abnormal_status_name, key, - value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints); + return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.abnormal_statuses, this.get_abnormal_status_name, + abnormal_statuses_type_name, key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints); end function this.update_generic(key, level, timer) - return buffs.update_generic(this.list, this.get_abnormal_status_name, key, level, timer); + return buffs.update_generic(this.list, this.get_abnormal_status_name, abnormal_statuses_type_name, key, level, timer); end function this.apply_filter(key) diff --git a/reframework/autorun/MHR_Overlay/Buffs/buffs.lua b/reframework/autorun/MHR_Overlay/Buffs/buffs.lua index c391464..2b251da 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/buffs.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/buffs.lua @@ -64,7 +64,7 @@ local player_lobby_base_type_def = sdk.find_type_definition("snow.player.PlayerL local player_base_type_def = sdk.find_type_definition("snow.player.PlayerBase"); local player_weapon_type_field = player_base_type_def:get_field("_playerWeaponType"); -function this.new(key, name, level, duration) +function this.new(type, key, name, level, duration) local is_infinite = false; if name == nil then @@ -83,6 +83,7 @@ function this.new(key, name, level, duration) local buff = {}; + buff.type = type; buff.key = key; buff.name = name; buff.level = level; @@ -122,8 +123,6 @@ function this.init_names() misc_buffs.init_names(); end -local tere = {}; - function this.update() if not config.current_config.buff_UI.enabled then return; @@ -213,7 +212,8 @@ function this.update_timer(buff, timer) end end -function this.update_generic_buff(buff_list, filter_list, get_name_function, buff_key, +function this.update_generic_buff(buff_list, filter_list, get_name_function, + buff_type, buff_key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) @@ -288,17 +288,17 @@ function this.update_generic_buff(buff_list, filter_list, get_name_function, buf end end - return this.update_generic(buff_list, get_name_function, buff_key, level, timer); + return this.update_generic(buff_list, get_name_function, buff_type, buff_key, level, timer); end -function this.update_generic(buff_list, get_name_function, buff_key, level, timer) +function this.update_generic(buff_list, get_name_function, buff_type, buff_key, level, timer) level = level or 1; local buff = buff_list[buff_key]; if buff == nil then local name = get_name_function(buff_key); - buff = this.new(buff_key, name, level, timer); + buff = this.new(buff_type, buff_key, name, level, timer); buff_list[buff_key] = buff; else if buff.level ~= level then diff --git a/reframework/autorun/MHR_Overlay/Buffs/dango_skills.lua b/reframework/autorun/MHR_Overlay/Buffs/dango_skills.lua index 16f0af8..47c9497 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/dango_skills.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/dango_skills.lua @@ -127,8 +127,11 @@ local dango_skill_ids = { super_recovery_dango = 56 }; + this.is_dango_adrenaline_active = false; +local dango_skills_type_name = "dango_skills"; + local dango_bulker_attack_up = 15; local previous_super_recovery_dango_timer = 0; @@ -171,8 +174,6 @@ local flag_cat_skill_insurance_field = quest_manager_type_def:get_field("_FlagCa local is_cat_skill_insurance_method = quest_manager_type_def:get_method("isCatSkillInsurance"); function this.update(player, player_data) - - this.update_dango_adrenaline(); this.update_dango_hunter(player_data); this.update_dango_insurance(); @@ -187,12 +188,13 @@ function this.update(player, player_data) end function this.update_dango_skill(key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) - return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.dango_skills, this.get_dango_skill_name, key, + return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.dango_skills, this.get_dango_skill_name, + dango_skills_type_name, key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints); end function this.update_generic(key, level, timer) - return buffs.update_generic(this.list, this.get_dango_skill_name, key, level, timer); + return buffs.update_generic(this.list, this.get_dango_skill_name, dango_skills_type_name, key, level, timer); end function this.apply_filter(key) diff --git a/reframework/autorun/MHR_Overlay/Buffs/endemic_life_buffs.lua b/reframework/autorun/MHR_Overlay/Buffs/endemic_life_buffs.lua index d06c637..d09ec91 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/endemic_life_buffs.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/endemic_life_buffs.lua @@ -71,6 +71,8 @@ this.keys = { this.peepersects_duration = 90; this.butterflame_attack_up = 25; +local endemic_life_buffs_type_name = "endemic_life_buffs"; + local marionette_mode_types = { "ruby_wirebug", "gold_wirebug" }; @@ -112,12 +114,13 @@ function this.update(player, player_data, item_parameter) end function this.update_endemic_life_buff(key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) - return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.endemic_life_buffs, this.get_endemic_life_name, key, + return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.endemic_life_buffs, this.get_endemic_life_name, + endemic_life_buffs_type_name, key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) end function this.update_generic(key, level, timer) - return buffs.update_generic(this.list, this.get_endemic_life_name, key, level, timer); + return buffs.update_generic(this.list, this.get_endemic_life_name, endemic_life_buffs_type_name, key, level, timer); end function this.apply_filter(key) diff --git a/reframework/autorun/MHR_Overlay/Buffs/item_buffs.lua b/reframework/autorun/MHR_Overlay/Buffs/item_buffs.lua index 470ce8d..a63346b 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/item_buffs.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/item_buffs.lua @@ -88,6 +88,8 @@ local item_ids = { this.might_seed_attack_up = 10; +local item_buffs_type_name = "item_buffs"; + local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData"); -- Demondrug/Mega Demondrug local atk_up_alive_field = player_data_type_def:get_field("_AtkUpAlive"); @@ -140,12 +142,13 @@ function this.update(player_data, item_parameter) end function this.update_item_buff(key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) - return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.item_buffs, this.get_item_buff_name, key, + return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.item_buffs, this.get_item_buff_name, + item_buffs_type_name, key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) end function this.update_generic(key, level, timer) - return buffs.update_generic(this.list, this.get_item_buff_name, key, level, timer); + return buffs.update_generic(this.list, this.get_item_buff_name, item_buffs_type_name, key, level, timer); end function this.apply_filter(key) diff --git a/reframework/autorun/MHR_Overlay/Buffs/melody_effects.lua b/reframework/autorun/MHR_Overlay/Buffs/melody_effects.lua index 3999295..a7a2a34 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/melody_effects.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/melody_effects.lua @@ -106,6 +106,8 @@ this.keys = { this.list = {}; +local melody_effects_type_name = "melody_effects"; + local player_manager_type_def = sdk.find_type_definition("snow.player.PlayerManager"); local find_master_player_method = player_manager_type_def:get_method("findMasterPlayer"); @@ -174,7 +176,7 @@ function this.update_melody_effect(lua_index, id, key, melody_effect, melody_dat if melody_effect == nil then local melody_effect_name = this.get_melody_effect_name(id); - melody_effect = buffs.new(key, melody_effect_name, 1, melody_timer / 60); + melody_effect = buffs.new(melody_effects_type_name, key, melody_effect_name, 1, melody_timer / 60); this.list[lua_index] = melody_effect; else buffs.update_timer(melody_effect, melody_timer / 60); diff --git a/reframework/autorun/MHR_Overlay/Buffs/misc_buffs.lua b/reframework/autorun/MHR_Overlay/Buffs/misc_buffs.lua index dbd00c9..d1011bc 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/misc_buffs.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/misc_buffs.lua @@ -78,6 +78,8 @@ this.keys = { -- Immunizer 5min -- Vase of Vitality 20sec +local misc_buffs_type_name = "misc_buffs"; + local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData"); -- Attack Up @@ -112,7 +114,8 @@ function this.update(player, player_data, item_parameter) end function this.update_misc_buff(key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) - return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.misc_buffs, this.get_misc_buff_name, key, + return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.misc_buffs, this.get_misc_buff_name, + misc_buffs_type_name, key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints); end @@ -145,7 +148,6 @@ function this.update_attack_up(player_data, item_parameter) this.update_misc_buff("attack_up", nil, nil, player_data, atk_up_buff_second_timer_field); 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); diff --git a/reframework/autorun/MHR_Overlay/Buffs/otomo_moves.lua b/reframework/autorun/MHR_Overlay/Buffs/otomo_moves.lua index 93113ae..41465b7 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/otomo_moves.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/otomo_moves.lua @@ -90,6 +90,8 @@ local otomo_moves_ids = { -- ameowzing_mist = 30 }; +local otomo_moves_type_name = "otomo_moves" + local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData"); -- Palico: Rousing Roar local beast_roar_otomo_timer_field = player_data_type_def:get_field("_BeastRoarOtomoTimer"); @@ -108,7 +110,8 @@ function this.update(player_data) end function this.update_otomo_move(key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) - return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.otomo_moves, this.get_otomo_move_name, key, + return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.otomo_moves, this.get_otomo_move_name, + otomo_moves_type_name, key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) end diff --git a/reframework/autorun/MHR_Overlay/Buffs/rampage_skills.lua b/reframework/autorun/MHR_Overlay/Buffs/rampage_skills.lua index 91d18e8..bb79384 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/rampage_skills.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/rampage_skills.lua @@ -60,6 +60,8 @@ local rampage_skill_ids = { kushala_daora_soul = 251, }; +local rampage_skills_type_name = "rampage_skills"; + local kushara_daora_soul_breakpoint = 5; local player_data_type_def = sdk.find_type_definition("snow.player.PlayerData"); @@ -80,7 +82,8 @@ function this.update(player_data) end function this.update_rampage_skill(key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) - return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.rampage_skills, this.get_rampage_skill_name, key, + return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.rampage_skills, this.get_rampage_skill_name, + rampage_skills_type_name, key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) end diff --git a/reframework/autorun/MHR_Overlay/Buffs/skills.lua b/reframework/autorun/MHR_Overlay/Buffs/skills.lua index b393111..01513bc 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/skills.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/skills.lua @@ -449,7 +449,6 @@ function this.update(player, player_data, weapon_type) this.update_skill("strife", player, get_affinity_equip_skill_233_method, nil, nil, nil, nil, strife_breakpoints[skill_data_list.strife.level]); end - function this.update_skill(key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) local skill_data = skill_data_list[key]; if skill_data ~= nil and skill_data.is_equipped ~= nil and not skill_data.is_equipped then @@ -457,12 +456,13 @@ function this.update_skill(key, value_owner, value_holder, timer_owner, timer_ho return nil; end - return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.skills, this.get_skill_name, key, + return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.skills, this.get_skill_name, + skills_type_name, key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints); end function this.update_generic(key, level, timer) - return buffs.update_generic(this.list, this.get_skill_name, key, level, timer); + return buffs.update_generic(this.list, this.get_skill_name, skills_type_name, key, level, timer); end function this.apply_filter(key) @@ -472,7 +472,7 @@ end function this.update_equipped_skill_data(player) local player_skill_list = get_player_skill_list_method:call(player); if player_skill_list == nil then - error_handler.report("buffs.update", "Failed to access Data: player_skill_list"); + error_handler.report("this.update_equipped_skill_data", "Failed to access Data: player_skill_list"); return; end @@ -583,14 +583,14 @@ function this.update_maximum_might(player_data) local maximum_might_name = this.get_skill_name("maximum_might"); if whole_body_timer < maximum_might_previous_timer_value then - this.list.maximum_might = buffs.new("maximum_might", maximum_might_name, 1); + this.list.maximum_might = buffs.new(skills_type_name, "maximum_might", maximum_might_name, 1); elseif utils.number.is_equal(whole_body_timer, 0) then if maximum_might_delay_timer == nil then maximum_might_delay_timer = time.new_delay_timer(function() maximum_might_delay_timer = nil; - this.list.maximum_might = buffs.new("maximum_might", maximum_might_name, 1); + this.list.maximum_might = buffs.new(skills_type_name, "maximum_might", maximum_might_name, 1); end, 3.5); end @@ -631,7 +631,7 @@ function this.update_bloodlust() return; end - this.list.bloodlust = buffs.new("bloodlust", bloodlust_name); + this.list.bloodlust = buffs.new(skills_type_name, "bloodlust", bloodlust_name); end this.list.bloodlust.is_visible = true; diff --git a/reframework/autorun/MHR_Overlay/Buffs/weapon_skills.lua b/reframework/autorun/MHR_Overlay/Buffs/weapon_skills.lua index d0c4097..c124bee 100644 --- a/reframework/autorun/MHR_Overlay/Buffs/weapon_skills.lua +++ b/reframework/autorun/MHR_Overlay/Buffs/weapon_skills.lua @@ -273,6 +273,7 @@ local weapon_skill_ids = { bolt_boost = 154 }; +local weapon_skill_type_name = "weapon_skills"; -- 0 Great Sword local great_sword_type_name = "great_sword"; -- 1 Switch Axe @@ -546,12 +547,13 @@ function this.update(player, player_data, weapon_type) end function this.update_weapon_skill(key, weapon_type_name, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints) - return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.weapon_skills[weapon_type_name], this.get_weapon_skill_name, key, + return buffs.update_generic_buff(this.list, config.current_config.buff_UI.filter.weapon_skills[weapon_type_name], this.get_weapon_skill_name, + weapon_skill_type_name, key, value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints); end function this.update_generic(key, level, timer) - return buffs.update_generic(this.list, this.get_weapon_skill_name, key, level, timer); + return buffs.update_generic(this.list, this.get_weapon_skill_name, weapon_skill_type_name, key, level, timer); end function this.apply_filter(weapon_type_name, key)