mirror of
https://github.com/GreenComfyTea/MHR-Overlay.git
synced 2026-01-24 04:18:11 -08:00
Refactor player_skill_list
This commit is contained in:
@@ -62,7 +62,6 @@ local get_player_data_method = player_base_type_def:get_method("get_PlayerData")
|
|||||||
local player_lobby_base_type_def = sdk.find_type_definition("snow.player.PlayerLobbyBase");
|
local player_lobby_base_type_def = sdk.find_type_definition("snow.player.PlayerLobbyBase");
|
||||||
|
|
||||||
local player_base_type_def = sdk.find_type_definition("snow.player.PlayerBase");
|
local player_base_type_def = sdk.find_type_definition("snow.player.PlayerBase");
|
||||||
local get_player_skill_list_method = player_base_type_def:get_method("get_PlayerSkillList");
|
|
||||||
local player_weapon_type_field = player_base_type_def:get_field("_playerWeaponType");
|
local player_weapon_type_field = player_base_type_def:get_field("_playerWeaponType");
|
||||||
|
|
||||||
function this.new(type, key, name, level, duration)
|
function this.new(type, key, name, level, duration)
|
||||||
@@ -154,12 +153,6 @@ function this.update()
|
|||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
||||||
local player_skill_list = get_player_skill_list_method:call(master_player);
|
|
||||||
if player_skill_list == nil then
|
|
||||||
error_handler.report("buffs.update", "Failed to access Data: player_skill_list");
|
|
||||||
return;
|
|
||||||
end
|
|
||||||
|
|
||||||
local weapon_type = player_weapon_type_field:get_data(master_player);
|
local weapon_type = player_weapon_type_field:get_data(master_player);
|
||||||
if weapon_type == nil then
|
if weapon_type == nil then
|
||||||
error_handler.report("skills.update", "Failed to access Data: weapon_type");
|
error_handler.report("skills.update", "Failed to access Data: weapon_type");
|
||||||
@@ -173,8 +166,8 @@ function this.update()
|
|||||||
rampage_skills.update(master_player_data);
|
rampage_skills.update(master_player_data);
|
||||||
|
|
||||||
if not is_player_lobby_base then
|
if not is_player_lobby_base then
|
||||||
skills.update(master_player, master_player_data, weapon_type, player_skill_list);
|
skills.update(master_player, master_player_data, weapon_type);
|
||||||
dango_skills.update(master_player, master_player_data, player_skill_list);
|
dango_skills.update(master_player, master_player_data);
|
||||||
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);
|
||||||
|
|||||||
@@ -163,12 +163,7 @@ 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)");
|
||||||
|
|
||||||
function this.update(player, player_data, player_skill_list)
|
function this.update(player, player_data)
|
||||||
if singletons.player_manager == nil then
|
|
||||||
error_handler.report("dango_skills.update", "Failed to access Data: player_manager");
|
|
||||||
return;
|
|
||||||
end
|
|
||||||
|
|
||||||
this.update_dango_adrenaline();
|
this.update_dango_adrenaline();
|
||||||
this.update_dango_hunter(player_data);
|
this.update_dango_hunter(player_data);
|
||||||
this.update_dango_insurance();
|
this.update_dango_insurance();
|
||||||
|
|||||||
@@ -322,6 +322,7 @@ local equip_skill_232_timer_field = player_data_type_def:get_field("_EquipSkill2
|
|||||||
|
|
||||||
local player_base_type_def = sdk.find_type_definition("snow.player.PlayerBase");
|
local player_base_type_def = sdk.find_type_definition("snow.player.PlayerBase");
|
||||||
local player_weapon_type_field = player_base_type_def:get_field("_playerWeaponType");
|
local player_weapon_type_field = player_base_type_def:get_field("_playerWeaponType");
|
||||||
|
local get_player_skill_list_method = player_base_type_def:get_method("get_PlayerSkillList");
|
||||||
|
|
||||||
-- Latent Power
|
-- Latent Power
|
||||||
local power_freedom_timer_field = player_base_type_def:get_field("_PowerFreedomTimer");
|
local power_freedom_timer_field = player_base_type_def:get_field("_PowerFreedomTimer");
|
||||||
@@ -373,8 +374,8 @@ local _equip_skill_216_bottle_up_timer_field = bow_type_def:get_field("_EquipSki
|
|||||||
local data_shortcut_type_def = sdk.find_type_definition("snow.data.DataShortcut");
|
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)");
|
local get_name_method = data_shortcut_type_def:get_method("getName(snow.data.DataDef.PlEquipSkillId)");
|
||||||
|
|
||||||
function this.update(player, player_data, weapon_type, player_skill_list)
|
function this.update(player, player_data, weapon_type)
|
||||||
this.update_equipped_skill_data(player, player_skill_list);
|
this.update_equipped_skill_data(player);
|
||||||
|
|
||||||
this.update_wind_mantle(player, weapon_type);
|
this.update_wind_mantle(player, weapon_type);
|
||||||
this.update_maximum_might(player_data);
|
this.update_maximum_might(player_data);
|
||||||
@@ -437,7 +438,13 @@ function this.update_generic_skill(skill_key, value_owner, value_holder, timer_o
|
|||||||
value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints);
|
value_owner, value_holder, timer_owner, timer_holder, is_infinite, minimal_value, level_breakpoints);
|
||||||
end
|
end
|
||||||
|
|
||||||
function this.update_equipped_skill_data(player, player_skill_list)
|
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");
|
||||||
|
return;
|
||||||
|
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
|
if skill_data.is_equipped == nil then
|
||||||
goto continue;
|
goto continue;
|
||||||
|
|||||||
Reference in New Issue
Block a user