client: update for new skill change event

This commit is contained in:
Adam
2019-11-04 09:58:20 -05:00
parent 5b7423bfee
commit eea61cdc8e
11 changed files with 165 additions and 115 deletions

View File

@@ -39,9 +39,9 @@ import net.runelite.api.Player;
import net.runelite.api.Skill;
import net.runelite.api.coords.LocalPoint;
import net.runelite.api.events.ChatMessage;
import net.runelite.api.events.ExperienceChanged;
import net.runelite.api.events.GameStateChanged;
import net.runelite.api.events.GameTick;
import net.runelite.api.events.StatChanged;
import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.Notifier;
@@ -429,17 +429,24 @@ public class SlayerPluginTest
when(player.getLocalLocation()).thenReturn(new LocalPoint(0, 0));
when(client.getLocalPlayer()).thenReturn(player);
final ExperienceChanged experienceChanged = new ExperienceChanged();
experienceChanged.setSkill(Skill.SLAYER);
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(100);
slayerPlugin.onExperienceChanged(experienceChanged);
StatChanged statChanged = new StatChanged(
Skill.SLAYER,
100,
2,
2
);
slayerPlugin.onStatChanged(statChanged);
slayerPlugin.setTaskName("Dagannoth");
slayerPlugin.setAmount(143);
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(110);
slayerPlugin.onExperienceChanged(experienceChanged);
statChanged = new StatChanged(
Skill.SLAYER,
110,
2,
2
);
slayerPlugin.onStatChanged(statChanged);
assertEquals(142, slayerPlugin.getAmount());
}
@@ -451,19 +458,26 @@ public class SlayerPluginTest
when(player.getLocalLocation()).thenReturn(new LocalPoint(0, 0));
when(client.getLocalPlayer()).thenReturn(player);
final ExperienceChanged experienceChanged = new ExperienceChanged();
experienceChanged.setSkill(Skill.SLAYER);
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(100);
slayerPlugin.onExperienceChanged(experienceChanged);
StatChanged statChanged = new StatChanged(
Skill.SLAYER,
100,
2,
2
);
slayerPlugin.onStatChanged(statChanged);
slayerPlugin.setTaskName("Monster");
slayerPlugin.setAmount(98);
assert Task.getTask("Monster") == null;
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(110);
slayerPlugin.onExperienceChanged(experienceChanged);
statChanged = new StatChanged(
Skill.SLAYER,
110,
2,
2
);
slayerPlugin.onStatChanged(statChanged);
assertEquals(97, slayerPlugin.getAmount());
}
@@ -475,24 +489,36 @@ public class SlayerPluginTest
when(player.getLocalLocation()).thenReturn(new LocalPoint(0, 0));
when(client.getLocalPlayer()).thenReturn(player);
final ExperienceChanged experienceChanged = new ExperienceChanged();
experienceChanged.setSkill(Skill.SLAYER);
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(100);
slayerPlugin.onExperienceChanged(experienceChanged);
StatChanged statChanged = new StatChanged(
Skill.SLAYER,
100,
2,
2
);
slayerPlugin.onStatChanged(statChanged);
slayerPlugin.setTaskName("TzTok-Jad");
slayerPlugin.setAmount(1);
// One bat kill
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(110);
slayerPlugin.onExperienceChanged(experienceChanged);
statChanged = new StatChanged(
Skill.SLAYER,
110,
2,
2
);
slayerPlugin.onStatChanged(statChanged);
assertEquals(1, slayerPlugin.getAmount());
// One Jad kill
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(25_360);
slayerPlugin.onExperienceChanged(experienceChanged);
statChanged = new StatChanged(
Skill.SLAYER,
25360,
-1,
-1
);
slayerPlugin.onStatChanged(statChanged);
assertEquals(0, slayerPlugin.getAmount());
}
@@ -504,24 +530,36 @@ public class SlayerPluginTest
when(player.getLocalLocation()).thenReturn(new LocalPoint(0, 0));
when(client.getLocalPlayer()).thenReturn(player);
final ExperienceChanged experienceChanged = new ExperienceChanged();
experienceChanged.setSkill(Skill.SLAYER);
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(100);
slayerPlugin.onExperienceChanged(experienceChanged);
StatChanged statChanged = new StatChanged(
Skill.SLAYER,
110,
2,
2
);
slayerPlugin.onStatChanged(statChanged);
slayerPlugin.setTaskName("TzKal-Zuk");
slayerPlugin.setAmount(1);
// One bat kill
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(125);
slayerPlugin.onExperienceChanged(experienceChanged);
statChanged = new StatChanged(
Skill.SLAYER,
125,
2,
2
);
slayerPlugin.onStatChanged(statChanged);
assertEquals(1, slayerPlugin.getAmount());
// One Zuk kill
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(102_015);
slayerPlugin.onExperienceChanged(experienceChanged);
statChanged = new StatChanged(
Skill.SLAYER,
102_015,
-1,
-1
);
slayerPlugin.onStatChanged(statChanged);
assertEquals(0, slayerPlugin.getAmount());
}
@@ -691,17 +729,24 @@ public class SlayerPluginTest
when(player.getLocalLocation()).thenReturn(new LocalPoint(0, 0));
when(client.getLocalPlayer()).thenReturn(player);
final ExperienceChanged experienceChanged = new ExperienceChanged();
experienceChanged.setSkill(Skill.SLAYER);
slayerPlugin.setTaskName("Bears");
slayerPlugin.setAmount(35);
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(0);
slayerPlugin.onExperienceChanged(experienceChanged);
StatChanged statChanged = new StatChanged(
Skill.SLAYER,
0,
1,
1
);
slayerPlugin.onStatChanged(statChanged);
when(client.getSkillExperience(Skill.SLAYER)).thenReturn(27);
slayerPlugin.onExperienceChanged(experienceChanged);
statChanged = new StatChanged(
Skill.SLAYER,
27,
1,
1
);
slayerPlugin.onStatChanged(statChanged);
assertEquals(34, slayerPlugin.getAmount());
}

View File

@@ -32,9 +32,9 @@ import net.runelite.api.Client;
import net.runelite.api.GameState;
import net.runelite.api.Player;
import net.runelite.api.Skill;
import net.runelite.api.events.ExperienceChanged;
import net.runelite.api.events.GameStateChanged;
import net.runelite.api.events.GameTick;
import net.runelite.api.events.StatChanged;
import net.runelite.client.game.NPCManager;
import net.runelite.client.game.SkillIconManager;
import net.runelite.client.ui.ClientToolbar;
@@ -101,10 +101,13 @@ public class XpTrackerPluginTest
xpTrackerPlugin.onGameTick(new GameTick());
// Gain attack xp
when(client.getSkillExperience(Skill.ATTACK)).thenReturn(100);
ExperienceChanged experienceChanged = new ExperienceChanged();
experienceChanged.setSkill(Skill.ATTACK);
xpTrackerPlugin.onExperienceChanged(experienceChanged);
StatChanged statChanged = new StatChanged(
Skill.ATTACK,
100,
2,
2
);
xpTrackerPlugin.onStatChanged(statChanged);
// Offline gain
when(client.getSkillExperience(Skill.ATTACK)).thenReturn(42000);