Merge pull request #2494 from ThatGamerBlue/oprs-boosts-info

boosts: fix statchanged event
This commit is contained in:
ThatGamerBlue
2020-04-09 17:24:01 +01:00
committed by GitHub
2 changed files with 16 additions and 8 deletions

View File

@@ -1087,16 +1087,21 @@ public abstract class RSClientMixin implements RSClient
@Inject
public static void boostedSkillLevelsChanged(int idx)
{
Skill[] skills = Skill.values();
if (idx >= 0 && idx < skills.length - 1)
if (idx == 0)
{
return;
}
int changedSkillIdx = idx - 1 & 31;
int skillIdx = client.getChangedSkillLevels()[changedSkillIdx];
Skill[] skills = Skill.values();
if (skillIdx >= 0 && skillIdx < skills.length - 1)
{
Skill updatedSkill = skills[idx];
StatChanged statChanged = new StatChanged(
updatedSkill,
client.getSkillExperience(updatedSkill),
client.getRealSkillLevel(updatedSkill),
client.getBoostedSkillLevel(updatedSkill)
skills[skillIdx],
client.getSkillExperiences()[skillIdx],
client.getRealSkillLevels()[skillIdx],
client.getBoostedSkillLevels()[skillIdx]
);
client.getCallbacks().post(StatChanged.class, statChanged);
}

View File

@@ -1164,4 +1164,7 @@ public interface RSClient extends RSGameShell, Client
@Import("draggedWidgetY")
int getDraggedWidgetY();
@Import("changedSkills")
int[] getChangedSkillLevels();
}