Convert game thread events to singletons (#794)

* Convert game thread events to singletons

* Fix checkstyle

* Fix copy paste error
This commit is contained in:
Owain van Brakel
2019-06-28 22:11:57 +02:00
committed by James
parent 23f6463024
commit 38d9800d10
102 changed files with 756 additions and 220 deletions

View File

@@ -87,9 +87,6 @@ public class Hooks implements Callbacks
private static final OverlayRenderer renderer = injector.getInstance(OverlayRenderer.class);
private static final OverlayManager overlayManager = injector.getInstance(OverlayManager.class);
private static final GameTick GAME_TICK = new GameTick();
private static final BeforeRender BEFORE_RENDER = new BeforeRender();
@Inject
private EventBus eventBus;
@@ -151,13 +148,13 @@ public class Hooks implements Callbacks
deferredEventBus.replay();
eventBus.post(GAME_TICK);
eventBus.post(GameTick.INSTANCE);
int tick = client.getTickCount();
client.setTickCount(tick + 1);
}
eventBus.post(BEFORE_RENDER);
eventBus.post(BeforeRender.INSTANCE);
clientThread.invoke();
@@ -511,7 +508,7 @@ public class Hooks implements Callbacks
public static boolean drawMenu()
{
BeforeMenuRender event = new BeforeMenuRender();
BeforeMenuRender event = BeforeMenuRender.INSTANCE;
client.getCallbacks().post(event);
return event.isConsumed();
}

View File

@@ -114,7 +114,9 @@ public class CommandManager
String command = split[0];
String[] args = Arrays.copyOfRange(split, 1, split.length);
CommandExecuted commandExecuted = new CommandExecuted(command, args);
CommandExecuted commandExecuted = CommandExecuted.INSTANCE;
commandExecuted.setCommand(command);
commandExecuted.setArguments(args);
eventBus.post(commandExecuted);
}

View File

@@ -429,7 +429,7 @@ public class MenuManager
if (curMenuOption.getMenuTarget().equals(event.getTarget())
&& curMenuOption.getMenuOption().equals(event.getOption()))
{
WidgetMenuOptionClicked customMenu = new WidgetMenuOptionClicked();
WidgetMenuOptionClicked customMenu = WidgetMenuOptionClicked.INSTANCE;
customMenu.setMenuOption(event.getOption());
customMenu.setMenuTarget(event.getTarget());
customMenu.setWidget(curMenuOption.getWidget());
@@ -444,7 +444,7 @@ public class MenuManager
// <col=ffffff>username<col=40ff00> (level-42) or <col=ffffff><img=2>username</col>
String username = Text.removeTags(target).split("[(]")[0].trim();
PlayerMenuOptionClicked playerMenuOptionClicked = new PlayerMenuOptionClicked();
PlayerMenuOptionClicked playerMenuOptionClicked = PlayerMenuOptionClicked.INSTANCE;
playerMenuOptionClicked.setMenuOption(event.getOption());
playerMenuOptionClicked.setMenuTarget(username);

View File

@@ -258,7 +258,7 @@ public class DevToolsPlugin extends Plugin
int value = Integer.parseInt(args[1]);
client.setVarpValue(client.getVarps(), varp, value);
client.addChatMessage(ChatMessageType.GAMEMESSAGE, "", "Set VarPlayer " + varp + " to " + value, null);
VarbitChanged varbitChanged = new VarbitChanged();
VarbitChanged varbitChanged = VarbitChanged.INSTANCE;
varbitChanged.setIndex(varp);
eventBus.post(varbitChanged); // fake event
break;
@@ -276,7 +276,7 @@ public class DevToolsPlugin extends Plugin
int value = Integer.parseInt(args[1]);
client.setVarbitValue(client.getVarps(), varbit, value);
client.addChatMessage(ChatMessageType.GAMEMESSAGE, "", "Set varbit " + varbit + " to " + value, null);
eventBus.post(new VarbitChanged()); // fake event
eventBus.post(VarbitChanged.INSTANCE); // fake event
break;
}
case "addxp":
@@ -293,7 +293,7 @@ public class DevToolsPlugin extends Plugin
client.queueChangedSkill(skill);
ExperienceChanged experienceChanged = new ExperienceChanged();
ExperienceChanged experienceChanged = ExperienceChanged.INSTANCE;
experienceChanged.setSkill(skill);
eventBus.post(experienceChanged);
break;
@@ -312,11 +312,11 @@ public class DevToolsPlugin extends Plugin
client.queueChangedSkill(skill);
ExperienceChanged experienceChanged = new ExperienceChanged();
ExperienceChanged experienceChanged = ExperienceChanged.INSTANCE;
experienceChanged.setSkill(skill);
eventBus.post(experienceChanged);
BoostedLevelChanged boostedLevelChanged = new BoostedLevelChanged();
BoostedLevelChanged boostedLevelChanged = BoostedLevelChanged.INSTANCE;
boostedLevelChanged.setSkill(skill);
eventBus.post(boostedLevelChanged);
break;

View File

@@ -121,7 +121,7 @@ public class FreezeTimersPlugin extends Plugin
{
if (prayerTracker.getSpotanimLastTick(actor) != actor.getSpotAnimation())
{
SpotAnimationChanged callback = new SpotAnimationChanged();
SpotAnimationChanged callback = SpotAnimationChanged.INSTANCE;
callback.setActor(actor);
client.getCallbacks().post(callback);
}

View File

@@ -118,7 +118,9 @@ public class GameEventManager
if (itemContainer != null)
{
eventBus.post(new ItemContainerChanged(itemContainer));
ItemContainerChanged event = ItemContainerChanged.INSTANCE;
event.setItemContainer(itemContainer);
eventBus.post(event);
}
}
@@ -126,7 +128,8 @@ public class GameEventManager
{
if (npc != null)
{
final NpcSpawned npcSpawned = new NpcSpawned(npc);
final NpcSpawned npcSpawned = NpcSpawned.INSTANCE;
npcSpawned.setNpc(npc);
eventBus.post(npcSpawned);
}
}
@@ -135,7 +138,8 @@ public class GameEventManager
{
if (player != null)
{
final PlayerSpawned playerSpawned = new PlayerSpawned(player);
final PlayerSpawned playerSpawned = PlayerSpawned.INSTANCE;
playerSpawned.setPlayer(player);
eventBus.post(playerSpawned);
}
}
@@ -144,7 +148,7 @@ public class GameEventManager
{
Optional.ofNullable(tile.getWallObject()).ifPresent(object ->
{
final WallObjectSpawned objectSpawned = new WallObjectSpawned();
final WallObjectSpawned objectSpawned = WallObjectSpawned.INSTANCE;
objectSpawned.setTile(tile);
objectSpawned.setWallObject(object);
eventBus.post(objectSpawned);
@@ -152,7 +156,7 @@ public class GameEventManager
Optional.ofNullable(tile.getDecorativeObject()).ifPresent(object ->
{
final DecorativeObjectSpawned objectSpawned = new DecorativeObjectSpawned();
final DecorativeObjectSpawned objectSpawned = DecorativeObjectSpawned.INSTANCE;
objectSpawned.setTile(tile);
objectSpawned.setDecorativeObject(object);
eventBus.post(objectSpawned);
@@ -160,7 +164,7 @@ public class GameEventManager
Optional.ofNullable(tile.getGroundObject()).ifPresent(object ->
{
final GroundObjectSpawned objectSpawned = new GroundObjectSpawned();
final GroundObjectSpawned objectSpawned = GroundObjectSpawned.INSTANCE;
objectSpawned.setTile(tile);
objectSpawned.setGroundObject(object);
eventBus.post(objectSpawned);
@@ -170,7 +174,7 @@ public class GameEventManager
.filter(Objects::nonNull)
.forEach(object ->
{
final GameObjectSpawned objectSpawned = new GameObjectSpawned();
final GameObjectSpawned objectSpawned = GameObjectSpawned.INSTANCE;
objectSpawned.setTile(tile);
objectSpawned.setGameObject(object);
eventBus.post(objectSpawned);
@@ -186,7 +190,9 @@ public class GameEventManager
current = current.getNext();
final ItemSpawned itemSpawned = new ItemSpawned(tile, item);
final ItemSpawned itemSpawned = ItemSpawned.INSTANCE;
itemSpawned.setItem(item);
itemSpawned.setTile(tile);
eventBus.post(itemSpawned);
}
});

View File

@@ -93,14 +93,14 @@ public class AttackStylesPluginTest
when(client.getVar(VarPlayer.ATTACK_STYLE)).thenReturn(AttackStyle.ACCURATE.ordinal());
// verify that earning xp in a warned skill will display red text on the widget
attackPlugin.onVarbitChanged(new VarbitChanged());
attackPlugin.onVarbitChanged(VarbitChanged.INSTANCE);
assertTrue(attackPlugin.isWarnedSkillSelected());
// Switch to attack style that doesn't give attack xp
when(client.getVar(VarPlayer.ATTACK_STYLE)).thenReturn(AttackStyle.AGGRESSIVE.ordinal());
// Verify the widget will now display white text
attackPlugin.onVarbitChanged(new VarbitChanged());
attackPlugin.onVarbitChanged(VarbitChanged.INSTANCE);
warnedSkills = attackPlugin.getWarnedSkills();
assertTrue(warnedSkills.contains(Skill.ATTACK));
assertFalse(attackPlugin.isWarnedSkillSelected());
@@ -129,7 +129,7 @@ public class AttackStylesPluginTest
// equip type_4 weapon type on player
when(client.getVar(Varbits.EQUIPPED_WEAPON_TYPE)).thenReturn(WeaponType.TYPE_4.ordinal());
attackPlugin.onVarbitChanged(new VarbitChanged());
attackPlugin.onVarbitChanged(VarbitChanged.INSTANCE);
// Verify there is a warned skill
Set<Skill> warnedSkills = attackPlugin.getWarnedSkills();

View File

@@ -71,7 +71,7 @@ public class CerberusPluginTest
mockNpc(new LocalPoint(2, 5)),
mockNpc(new LocalPoint(1, 5))
));
cerberusPlugin.onGameTick(new GameTick());
cerberusPlugin.onGameTick(GameTick.INSTANCE);
// Expected sort is by lowest y first, then by lowest x
assertEquals(ghosts.get(0).getLocalLocation(), new LocalPoint(0, 0));

View File

@@ -83,7 +83,7 @@ public class ChatNotificationsPluginTest
MessageNode messageNode = mock(MessageNode.class);
when(messageNode.getValue()).thenReturn("Deathbeam, Deathbeam OSRS");
ChatMessage chatMessage = new ChatMessage();
ChatMessage chatMessage = ChatMessage.INSTANCE;
chatMessage.setType(ChatMessageType.PUBLICCHAT);
chatMessage.setMessageNode(messageNode);

View File

@@ -118,7 +118,7 @@ public class CookingPluginTest
when(config.fermentTimer()).thenReturn(true);
when(client.getLocalPlayer()).thenReturn(player);
SpotAnimationChanged graphicChanged = new SpotAnimationChanged();
SpotAnimationChanged graphicChanged = SpotAnimationChanged.INSTANCE;
graphicChanged.setActor(player);
cookingPlugin.onSpotAnimationChanged(graphicChanged);

View File

@@ -73,7 +73,7 @@ public class EmojiPluginTest
when(client.createIndexedSprite()).thenReturn(mock(IndexedSprite.class));
// Trip emoji loading
GameStateChanged gameStateChanged = new GameStateChanged();
GameStateChanged gameStateChanged = GameStateChanged.INSTANCE;
gameStateChanged.setGameState(GameState.LOGGED_IN);
emojiPlugin.onGameStateChanged(gameStateChanged);
@@ -81,7 +81,7 @@ public class EmojiPluginTest
// With chat recolor, message may be wrapped in col tags
when(messageNode.getValue()).thenReturn("<col=ff0000>:) :) :)</col>");
ChatMessage chatMessage = new ChatMessage();
ChatMessage chatMessage = ChatMessage.INSTANCE;
chatMessage.setType(ChatMessageType.PUBLICCHAT);
chatMessage.setMessageNode(messageNode);
@@ -98,14 +98,14 @@ public class EmojiPluginTest
when(client.createIndexedSprite()).thenReturn(mock(IndexedSprite.class));
// Trip emoji loading
GameStateChanged gameStateChanged = new GameStateChanged();
GameStateChanged gameStateChanged = GameStateChanged.INSTANCE;
gameStateChanged.setGameState(GameState.LOGGED_IN);
emojiPlugin.onGameStateChanged(gameStateChanged);
MessageNode messageNode = mock(MessageNode.class);
when(messageNode.getValue()).thenReturn("<gt>:D<lt>");
ChatMessage chatMessage = new ChatMessage();
ChatMessage chatMessage = ChatMessage.INSTANCE;
chatMessage.setType(ChatMessageType.PUBLICCHAT);
chatMessage.setMessageNode(messageNode);

View File

@@ -132,13 +132,13 @@ public class IdleNotifierPluginTest
public void checkAnimationIdle()
{
when(player.getAnimation()).thenReturn(AnimationID.WOODCUTTING_BRONZE);
AnimationChanged animationChanged = new AnimationChanged();
AnimationChanged animationChanged = AnimationChanged.INSTANCE;
animationChanged.setActor(player);
plugin.onAnimationChanged(animationChanged);
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
when(player.getAnimation()).thenReturn(AnimationID.IDLE);
plugin.onAnimationChanged(animationChanged);
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
verify(notifier).notify("[" + PLAYER_NAME + "] is now idle!");
}
@@ -146,16 +146,16 @@ public class IdleNotifierPluginTest
public void checkAnimationReset()
{
when(player.getAnimation()).thenReturn(AnimationID.WOODCUTTING_BRONZE);
AnimationChanged animationChanged = new AnimationChanged();
AnimationChanged animationChanged = AnimationChanged.INSTANCE;
animationChanged.setActor(player);
plugin.onAnimationChanged(animationChanged);
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
when(player.getAnimation()).thenReturn(AnimationID.LOOKING_INTO);
plugin.onAnimationChanged(animationChanged);
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
when(player.getAnimation()).thenReturn(AnimationID.IDLE);
plugin.onAnimationChanged(animationChanged);
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
verify(notifier, times(0)).notify(any());
}
@@ -163,14 +163,14 @@ public class IdleNotifierPluginTest
public void checkAnimationLogout()
{
when(player.getAnimation()).thenReturn(AnimationID.WOODCUTTING_BRONZE);
AnimationChanged animationChanged = new AnimationChanged();
AnimationChanged animationChanged = AnimationChanged.INSTANCE;
animationChanged.setActor(player);
plugin.onAnimationChanged(animationChanged);
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
// Logout
when(client.getGameState()).thenReturn(GameState.LOGIN_SCREEN);
GameStateChanged gameStateChanged = new GameStateChanged();
GameStateChanged gameStateChanged = GameStateChanged.INSTANCE;
gameStateChanged.setGameState(GameState.LOGIN_SCREEN);
plugin.onGameStateChanged(gameStateChanged);
@@ -182,7 +182,7 @@ public class IdleNotifierPluginTest
// Tick
when(player.getAnimation()).thenReturn(AnimationID.IDLE);
plugin.onAnimationChanged(animationChanged);
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
verify(notifier, times(0)).notify(any());
}
@@ -190,11 +190,16 @@ public class IdleNotifierPluginTest
public void checkCombatIdle()
{
when(player.getInteracting()).thenReturn(monster);
plugin.onInteractingChanged(new InteractingChanged(player, monster));
plugin.onGameTick(new GameTick());
InteractingChanged event = InteractingChanged.INSTANCE;
event.setSource(player);
event.setTarget(monster);
plugin.onInteractingChanged(event);
plugin.onGameTick(GameTick.INSTANCE);
when(player.getInteracting()).thenReturn(null);
plugin.onInteractingChanged(new InteractingChanged(player, null));
plugin.onGameTick(new GameTick());
event.setSource(player);
event.setTarget(null);
plugin.onInteractingChanged(event);
plugin.onGameTick(GameTick.INSTANCE);
verify(notifier).notify("[" + PLAYER_NAME + "] is now out of combat!");
}
@@ -202,27 +207,37 @@ public class IdleNotifierPluginTest
public void checkCombatReset()
{
when(player.getInteracting()).thenReturn(monster);
plugin.onInteractingChanged(new InteractingChanged(player, monster));
plugin.onGameTick(new GameTick());
InteractingChanged event = InteractingChanged.INSTANCE;
event.setSource(player);
event.setTarget(monster);
plugin.onInteractingChanged(event);
plugin.onGameTick(GameTick.INSTANCE);
when(player.getInteracting()).thenReturn(randomEvent);
plugin.onInteractingChanged(new InteractingChanged(player, randomEvent));
plugin.onGameTick(new GameTick());
event.setSource(player);
event.setTarget(randomEvent);
plugin.onInteractingChanged(event);
plugin.onGameTick(GameTick.INSTANCE);
when(player.getInteracting()).thenReturn(null);
plugin.onInteractingChanged(new InteractingChanged(player, null));
plugin.onGameTick(new GameTick());
event.setSource(player);
event.setTarget(null);
plugin.onInteractingChanged(event);
plugin.onGameTick(GameTick.INSTANCE);
verify(notifier, times(0)).notify(any());
}
@Test
public void checkCombatLogout()
{
plugin.onInteractingChanged(new InteractingChanged(player, monster));
InteractingChanged event = InteractingChanged.INSTANCE;
event.setSource(player);
event.setTarget(monster);
plugin.onInteractingChanged(event);
when(player.getInteracting()).thenReturn(monster);
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
// Logout
when(client.getGameState()).thenReturn(GameState.LOGIN_SCREEN);
GameStateChanged gameStateChanged = new GameStateChanged();
GameStateChanged gameStateChanged = GameStateChanged.INSTANCE;
gameStateChanged.setGameState(GameState.LOGIN_SCREEN);
plugin.onGameStateChanged(gameStateChanged);
@@ -233,8 +248,10 @@ public class IdleNotifierPluginTest
// Tick
when(player.getInteracting()).thenReturn(null);
plugin.onInteractingChanged(new InteractingChanged(player, null));
plugin.onGameTick(new GameTick());
event.setSource(player);
event.setTarget(null);
plugin.onInteractingChanged(event);
plugin.onGameTick(GameTick.INSTANCE);
verify(notifier, times(0)).notify(any());
}
@@ -245,11 +262,11 @@ public class IdleNotifierPluginTest
when(client.getMouseIdleTicks()).thenReturn(80_000);
// But player is being damaged (is in combat)
final HitsplatApplied hitsplatApplied = new HitsplatApplied();
final HitsplatApplied hitsplatApplied = HitsplatApplied.INSTANCE;
hitsplatApplied.setActor(player);
hitsplatApplied.setHitsplat(new Hitsplat(Hitsplat.HitsplatType.DAMAGE, 0, 0));
plugin.onHitsplatApplied(hitsplatApplied);
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
verify(notifier, times(0)).notify(any());
}
@@ -262,8 +279,8 @@ public class IdleNotifierPluginTest
when(client.getKeyboardIdleTicks()).thenReturn(80_000);
when(client.getMouseIdleTicks()).thenReturn(14_500);
plugin.onGameTick(new GameTick());
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
plugin.onGameTick(GameTick.INSTANCE);
verify(notifier, times(1)).notify(any());
}
@@ -273,11 +290,11 @@ public class IdleNotifierPluginTest
when(config.getSpecEnergyThreshold()).thenReturn(50);
when(client.getVar(Matchers.eq(VarPlayer.SPECIAL_ATTACK_PERCENT))).thenReturn(400); // 40%
plugin.onGameTick(new GameTick()); // once to set lastSpecEnergy to 400
plugin.onGameTick(GameTick.INSTANCE); // once to set lastSpecEnergy to 400
verify(notifier, never()).notify(any());
when(client.getVar(Matchers.eq(VarPlayer.SPECIAL_ATTACK_PERCENT))).thenReturn(500); // 50%
plugin.onGameTick(new GameTick());
plugin.onGameTick(GameTick.INSTANCE);
verify(notifier).notify(Matchers.eq("[" + PLAYER_NAME + "] has restored spec energy!"));
}
}

View File

@@ -115,13 +115,13 @@ public class MotherlodePluginTest
public void testOreCounter()
{
// set inMlm
GameStateChanged gameStateChanged = new GameStateChanged();
GameStateChanged gameStateChanged = GameStateChanged.INSTANCE;
gameStateChanged.setGameState(GameState.LOGGED_IN);
motherlodePlugin.onGameStateChanged(gameStateChanged);
// Initial sack count
when(client.getVar(Varbits.SACK_NUMBER)).thenReturn(42);
motherlodePlugin.onVarbitChanged(new VarbitChanged());
motherlodePlugin.onVarbitChanged(VarbitChanged.INSTANCE);
// Create before inventory
ItemContainer inventory = mock(ItemContainer.class);
@@ -140,7 +140,7 @@ public class MotherlodePluginTest
// Withdraw 20
when(client.getVar(Varbits.SACK_NUMBER)).thenReturn(22);
motherlodePlugin.onVarbitChanged(new VarbitChanged());
motherlodePlugin.onVarbitChanged(VarbitChanged.INSTANCE);
inventory = mock(ItemContainer.class);
// +1 rune, +4 nugget, +2 coal, +1 addy
@@ -162,7 +162,9 @@ public class MotherlodePluginTest
when(client.getItemContainer(InventoryID.INVENTORY)).thenReturn(inventory);
// Trigger comparison
motherlodePlugin.onItemContainerChanged(new ItemContainerChanged(inventory));
ItemContainerChanged event = ItemContainerChanged.INSTANCE;
event.setItemContainer(inventory);
motherlodePlugin.onItemContainerChanged(event);
verify(motherlodeSession).updateOreFound(ItemID.RUNITE_ORE, 1);
verify(motherlodeSession).updateOreFound(ItemID.GOLDEN_NUGGET, 4);

View File

@@ -175,11 +175,11 @@ public class ScreenshotPluginTest
assertEquals("Hitpoints(99)", screenshotPlugin.parseLevelUpWidget(LEVEL_UP_LEVEL));
WidgetLoaded event = new WidgetLoaded();
WidgetLoaded event = WidgetLoaded.INSTANCE;
event.setGroupId(LEVEL_UP_GROUP_ID);
screenshotPlugin.onWidgetLoaded(event);
GameTick tick = new GameTick();
GameTick tick = GameTick.INSTANCE;
screenshotPlugin.onGameTick(tick);
verify(drawManager).requestNextFrameListener(Matchers.any(Consumer.class));
@@ -198,11 +198,11 @@ public class ScreenshotPluginTest
assertEquals("Firemaking(9)", screenshotPlugin.parseLevelUpWidget(LEVEL_UP_LEVEL));
WidgetLoaded event = new WidgetLoaded();
WidgetLoaded event = WidgetLoaded.INSTANCE;
event.setGroupId(LEVEL_UP_GROUP_ID);
screenshotPlugin.onWidgetLoaded(event);
GameTick tick = new GameTick();
GameTick tick = GameTick.INSTANCE;
screenshotPlugin.onGameTick(tick);
verify(drawManager).requestNextFrameListener(Matchers.any(Consumer.class));
@@ -221,11 +221,11 @@ public class ScreenshotPluginTest
assertEquals("Attack(70)", screenshotPlugin.parseLevelUpWidget(LEVEL_UP_LEVEL));
WidgetLoaded event = new WidgetLoaded();
WidgetLoaded event = WidgetLoaded.INSTANCE;
event.setGroupId(LEVEL_UP_GROUP_ID);
screenshotPlugin.onWidgetLoaded(event);
GameTick tick = new GameTick();
GameTick tick = GameTick.INSTANCE;
screenshotPlugin.onGameTick(tick);
verify(drawManager).requestNextFrameListener(Matchers.any(Consumer.class));
@@ -244,11 +244,11 @@ public class ScreenshotPluginTest
assertEquals("Hunter(2)", screenshotPlugin.parseLevelUpWidget(DIALOG_SPRITE_TEXT));
WidgetLoaded event = new WidgetLoaded();
WidgetLoaded event = WidgetLoaded.INSTANCE;
event.setGroupId(DIALOG_SPRITE_GROUP_ID);
screenshotPlugin.onWidgetLoaded(event);
GameTick tick = new GameTick();
GameTick tick = GameTick.INSTANCE;
screenshotPlugin.onGameTick(tick);
verify(drawManager).requestNextFrameListener(Matchers.any(Consumer.class));

View File

@@ -155,7 +155,7 @@ public class SlayerPluginTest
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_NEW);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
slayerPlugin.onGameTick(GameTick.INSTANCE);
assertEquals("Suqahs", slayerPlugin.getCurrentTask().getTaskName());
assertEquals(231, slayerPlugin.getCurrentTask().getAmount());
@@ -167,7 +167,7 @@ public class SlayerPluginTest
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_NEW_KONAR);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
slayerPlugin.onGameTick(GameTick.INSTANCE);
assertEquals("Wyrms", slayerPlugin.getCurrentTask().getTaskName());
assertEquals(147, slayerPlugin.getCurrentTask().getAmount());
@@ -180,7 +180,7 @@ public class SlayerPluginTest
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_NEW_KONAR_2);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
slayerPlugin.onGameTick(GameTick.INSTANCE);
assertEquals("Hellhounds", slayerPlugin.getCurrentTask().getTaskName());
assertEquals(142, slayerPlugin.getCurrentTask().getAmount());
@@ -193,7 +193,7 @@ public class SlayerPluginTest
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_NEW_KONAR_3);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
slayerPlugin.onGameTick(GameTick.INSTANCE);
assertEquals("Trolls", slayerPlugin.getCurrentTask().getTaskName());
assertEquals(135, slayerPlugin.getCurrentTask().getAmount());
@@ -206,7 +206,7 @@ public class SlayerPluginTest
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_NEW_FIRST);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
slayerPlugin.onGameTick(GameTick.INSTANCE);
assertEquals("goblins", slayerPlugin.getCurrentTask().getTaskName());
assertEquals(17, slayerPlugin.getCurrentTask().getAmount());
@@ -218,7 +218,7 @@ public class SlayerPluginTest
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_NEW_NPC_CONTACT);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
slayerPlugin.onGameTick(GameTick.INSTANCE);
assertEquals("Suqahs", slayerPlugin.getCurrentTask().getTaskName());
assertEquals(211, slayerPlugin.getCurrentTask().getAmount());
@@ -230,7 +230,7 @@ public class SlayerPluginTest
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_BOSS_NEW);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
slayerPlugin.onGameTick(GameTick.INSTANCE);
assertEquals("Vet'ion", slayerPlugin.getCurrentTask().getTaskName());
assertEquals(3, slayerPlugin.getCurrentTask().getAmount());
@@ -243,7 +243,7 @@ public class SlayerPluginTest
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_BOSS_NEW_THE);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
slayerPlugin.onGameTick(GameTick.INSTANCE);
assertEquals("Chaos Elemental", slayerPlugin.getCurrentTask().getTaskName());
assertEquals(3, slayerPlugin.getCurrentTask().getAmount());
@@ -296,7 +296,7 @@ public class SlayerPluginTest
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_EXISTING);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
slayerPlugin.onGameTick(GameTick.INSTANCE);
assertEquals("suqahs", slayerPlugin.getCurrentTask().getTaskName());
assertEquals(222, slayerPlugin.getCurrentTask().getAmount());
@@ -331,7 +331,7 @@ public class SlayerPluginTest
ChatMessage chatMessageEvent = new ChatMessage(null, GAMEMESSAGE, "Perterter", TASK_POINTS, null, 0);
slayerPlugin.onChatMessage(chatMessageEvent);
VarbitChanged varbitChanged = new VarbitChanged();
VarbitChanged varbitChanged = VarbitChanged.INSTANCE;
slayerPlugin.onVarbitChanged(varbitChanged);
assertEquals(9, slayerPlugin.getStreak());
@@ -347,7 +347,7 @@ public class SlayerPluginTest
ChatMessage chatMessageEvent = new ChatMessage(null, GAMEMESSAGE, "Perterter", TASK_LARGE_STREAK, null, 0);
slayerPlugin.onChatMessage(chatMessageEvent);
VarbitChanged varbitChanged = new VarbitChanged();
VarbitChanged varbitChanged = VarbitChanged.INSTANCE;
slayerPlugin.onVarbitChanged(varbitChanged);
assertEquals(2465, slayerPlugin.getStreak());
@@ -408,7 +408,7 @@ public class SlayerPluginTest
when(slayerConfig.taskCommand()).thenReturn(true);
when(chatClient.getTask(anyString())).thenReturn(task);
ChatMessage setMessage = new ChatMessage();
ChatMessage setMessage = ChatMessage.INSTANCE;
setMessage.setType(ChatMessageType.PUBLICCHAT);
setMessage.setName("Adam");
setMessage.setMessageNode(mock(MessageNode.class));
@@ -430,7 +430,7 @@ public class SlayerPluginTest
when(slayerConfig.taskCommand()).thenReturn(true);
when(chatClient.getTask(anyString())).thenReturn(task);
ChatMessage chatMessage = new ChatMessage();
ChatMessage chatMessage = ChatMessage.INSTANCE;
chatMessage.setType(ChatMessageType.PUBLICCHAT);
chatMessage.setName("Adam");
chatMessage.setMessageNode(mock(MessageNode.class));