diff --git a/runelite-api/src/main/java/net/runelite/api/GraphicID.java b/runelite-api/src/main/java/net/runelite/api/GraphicID.java
index 5a6f7054bb..3aa58d8b64 100644
--- a/runelite-api/src/main/java/net/runelite/api/GraphicID.java
+++ b/runelite-api/src/main/java/net/runelite/api/GraphicID.java
@@ -51,9 +51,10 @@ public class GraphicID
public static final int IMBUED_HEART = 1316;
public static final int FLYING_FISH = 1387;
public static final int OLM_BURN = 1351;
+ public static final int OLM_LIGHTNING = 1356;
public static final int OLM_TELEPORT = 1359;
public static final int OLM_HEAL = 1363;
public static final int OLM_CRYSTAL = 1447;
public static final int XERIC_TELEPORT = 1612;
public static final int HYDRA_LIGHTNING = 1666;
-}
+}
\ No newline at end of file
diff --git a/runelite-api/src/main/java/net/runelite/api/events/AnimationChanged.java b/runelite-api/src/main/java/net/runelite/api/events/AnimationChanged.java
index 9d3bf12a07..0c4e1d5b68 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/AnimationChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/AnimationChanged.java
@@ -20,13 +20,6 @@ import net.runelite.api.Actor;
@Data
public class AnimationChanged
{
- public static final AnimationChanged INSTANCE = new AnimationChanged();
-
- private AnimationChanged()
- {
- // noop
- }
-
/**
* The actor that has entered a new animation.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/AreaSoundEffectPlayed.java b/runelite-api/src/main/java/net/runelite/api/events/AreaSoundEffectPlayed.java
index 4fb1a120a6..488bff8264 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/AreaSoundEffectPlayed.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/AreaSoundEffectPlayed.java
@@ -29,13 +29,6 @@ import lombok.Data;
@Data
public class AreaSoundEffectPlayed
{
- public static final AreaSoundEffectPlayed INSTANCE = new AreaSoundEffectPlayed();
-
- private AreaSoundEffectPlayed()
- {
- // noop
- }
-
private int soundId;
private int sceneX;
private int sceneY;
diff --git a/runelite-api/src/main/java/net/runelite/api/events/BeforeMenuRender.java b/runelite-api/src/main/java/net/runelite/api/events/BeforeMenuRender.java
index db6d1de3f3..5d1e10994b 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/BeforeMenuRender.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/BeforeMenuRender.java
@@ -29,13 +29,6 @@ import lombok.Data;
@Data
public class BeforeMenuRender
{
- public static final BeforeMenuRender INSTANCE = new BeforeMenuRender();
-
- private BeforeMenuRender()
- {
- // noop
- }
-
private boolean consumed;
public void consume()
diff --git a/runelite-api/src/main/java/net/runelite/api/events/BeforeRender.java b/runelite-api/src/main/java/net/runelite/api/events/BeforeRender.java
index 73c004d4b3..741041e1e0 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/BeforeRender.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/BeforeRender.java
@@ -29,10 +29,4 @@ package net.runelite.api.events;
*/
public class BeforeRender
{
- public static final BeforeRender INSTANCE = new BeforeRender();
-
- private BeforeRender()
- {
- // noop
- }
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/BoostedLevelChanged.java b/runelite-api/src/main/java/net/runelite/api/events/BoostedLevelChanged.java
index e38a043e9a..a465e3b407 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/BoostedLevelChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/BoostedLevelChanged.java
@@ -44,13 +44,6 @@ import lombok.Data;
@Data
public class BoostedLevelChanged
{
- public static final BoostedLevelChanged INSTANCE = new BoostedLevelChanged();
-
- private BoostedLevelChanged()
- {
- // noop
- }
-
/**
* The skill that has had its level modified.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/CannonballFired.java b/runelite-api/src/main/java/net/runelite/api/events/CannonballFired.java
index c44789965a..077a88096d 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/CannonballFired.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/CannonballFired.java
@@ -29,10 +29,4 @@ package net.runelite.api.events;
*/
public class CannonballFired
{
- public static final CannonballFired INSTANCE = new CannonballFired();
-
- private CannonballFired()
- {
- // noop
- }
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ChatMessage.java b/runelite-api/src/main/java/net/runelite/api/events/ChatMessage.java
index 5b464d0807..791ec350b3 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ChatMessage.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ChatMessage.java
@@ -28,6 +28,7 @@ import net.runelite.api.ChatMessageType;
import net.runelite.api.MessageNode;
import lombok.AllArgsConstructor;
import lombok.Data;
+import lombok.NoArgsConstructor;
/**
* An event where a new chat message is received.
@@ -39,15 +40,9 @@ import lombok.Data;
*/
@Data
@AllArgsConstructor
+@NoArgsConstructor
public class ChatMessage
{
- public static final ChatMessage INSTANCE = new ChatMessage();
-
- private ChatMessage()
- {
- // noop
- }
-
/**
* The underlying MessageNode for the message.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ClanChanged.java b/runelite-api/src/main/java/net/runelite/api/events/ClanChanged.java
index de9ae6798e..e39dbc400e 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ClanChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ClanChanged.java
@@ -24,21 +24,14 @@
*/
package net.runelite.api.events;
-import lombok.Data;
+import lombok.Value;
/**
* An event where the client has joined or left a clan chat.
*/
-@Data
+@Value
public class ClanChanged
{
- public static final ClanChanged INSTANCE = new ClanChanged();
-
- private ClanChanged()
- {
- // noop
- }
-
/**
* Whether or not the client is now in a clan chat.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ClanMemberJoined.java b/runelite-api/src/main/java/net/runelite/api/events/ClanMemberJoined.java
index 81a9a96fd6..c0a694555b 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ClanMemberJoined.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ClanMemberJoined.java
@@ -25,18 +25,11 @@
package net.runelite.api.events;
import net.runelite.api.ClanMember;
-import lombok.Data;
+import lombok.Value;
-@Data
+@Value
public class ClanMemberJoined
{
- public static final ClanMemberJoined INSTANCE = new ClanMemberJoined();
-
- private ClanMemberJoined()
- {
- // noop
- }
-
/**
* The ClanMember that joined
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ClanMemberLeft.java b/runelite-api/src/main/java/net/runelite/api/events/ClanMemberLeft.java
index 75e46e5e1d..c403261532 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ClanMemberLeft.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ClanMemberLeft.java
@@ -25,18 +25,11 @@
package net.runelite.api.events;
import net.runelite.api.ClanMember;
-import lombok.Data;
+import lombok.Value;
-@Data
+@Value
public class ClanMemberLeft
{
- public static final ClanMemberLeft INSTANCE = new ClanMemberLeft();
-
- private ClanMemberLeft()
- {
- // noop
- }
-
/**
* The ClanMember that left
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ClientTick.java b/runelite-api/src/main/java/net/runelite/api/events/ClientTick.java
index 6874f4145c..369ff7982a 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ClientTick.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ClientTick.java
@@ -29,10 +29,4 @@ package net.runelite.api.events;
*/
public class ClientTick
{
- public static final ClientTick INSTANCE = new ClientTick();
-
- private ClientTick()
- {
- // noop
- }
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/CommandExecuted.java b/runelite-api/src/main/java/net/runelite/api/events/CommandExecuted.java
index 2f170642e8..d0dfae5ff2 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/CommandExecuted.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/CommandExecuted.java
@@ -24,7 +24,7 @@
*/
package net.runelite.api.events;
-import lombok.Data;
+import lombok.Value;
/**
* An event where a command has been used in the chat.
@@ -41,16 +41,9 @@ import lombok.Data;
* set the command field to an empty string. For example, the message ":: hello world!"
* will set command to "" and arguments to ["hello", "world!"].
*/
-@Data
+@Value
public class CommandExecuted
{
- public static final CommandExecuted INSTANCE = new CommandExecuted();
-
- private CommandExecuted()
- {
- // noop
- }
-
/**
* The name of the command entered.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectChanged.java b/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectChanged.java
index 161f3c6b19..a18683d7b4 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectChanged.java
@@ -35,13 +35,6 @@ import lombok.Data;
@Data
public class DecorativeObjectChanged
{
- public static final DecorativeObjectChanged INSTANCE = new DecorativeObjectChanged();
-
- private DecorativeObjectChanged()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectDespawned.java b/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectDespawned.java
index efa9f657db..94c06488c7 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectDespawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectDespawned.java
@@ -35,13 +35,6 @@ import lombok.Data;
@Data
public class DecorativeObjectDespawned
{
- public static final DecorativeObjectDespawned INSTANCE = new DecorativeObjectDespawned();
-
- private DecorativeObjectDespawned()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectSpawned.java b/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectSpawned.java
index a25b493743..fe8d17862f 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectSpawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/DecorativeObjectSpawned.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class DecorativeObjectSpawned
{
- public static final DecorativeObjectSpawned INSTANCE = new DecorativeObjectSpawned();
-
- private DecorativeObjectSpawned()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/DraggingWidgetChanged.java b/runelite-api/src/main/java/net/runelite/api/events/DraggingWidgetChanged.java
index 8f1179f76e..8aef02d570 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/DraggingWidgetChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/DraggingWidgetChanged.java
@@ -33,13 +33,6 @@ import lombok.Data;
@Data
public class DraggingWidgetChanged
{
- public static final DraggingWidgetChanged INSTANCE = new DraggingWidgetChanged();
-
- private DraggingWidgetChanged()
- {
- // noop
- }
-
/**
* Whether a widget is currently being dragged.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ExperienceChanged.java b/runelite-api/src/main/java/net/runelite/api/events/ExperienceChanged.java
index 980fbfcd75..587efd4f41 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ExperienceChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ExperienceChanged.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class ExperienceChanged
{
- public static final ExperienceChanged INSTANCE = new ExperienceChanged();
-
- private ExperienceChanged()
- {
- // noop
- }
-
/**
* The modified skill.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GameObjectChanged.java b/runelite-api/src/main/java/net/runelite/api/events/GameObjectChanged.java
index 5cdba0899c..117ad81f60 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GameObjectChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GameObjectChanged.java
@@ -34,13 +34,6 @@ import net.runelite.api.Tile;
@Data
public class GameObjectChanged
{
- public static final GameObjectChanged INSTANCE = new GameObjectChanged();
-
- private GameObjectChanged()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GameObjectDespawned.java b/runelite-api/src/main/java/net/runelite/api/events/GameObjectDespawned.java
index 28091ca793..5d2e9fad1a 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GameObjectDespawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GameObjectDespawned.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class GameObjectDespawned
{
- public static final GameObjectDespawned INSTANCE = new GameObjectDespawned();
-
- private GameObjectDespawned()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GameObjectSpawned.java b/runelite-api/src/main/java/net/runelite/api/events/GameObjectSpawned.java
index e7965b1164..5dfc301066 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GameObjectSpawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GameObjectSpawned.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class GameObjectSpawned
{
- public static final GameObjectSpawned INSTANCE = new GameObjectSpawned();
-
- private GameObjectSpawned()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GameStateChanged.java b/runelite-api/src/main/java/net/runelite/api/events/GameStateChanged.java
index f89c8ecb43..2a0b61fc40 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GameStateChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GameStateChanged.java
@@ -33,13 +33,6 @@ import lombok.Data;
@Data
public class GameStateChanged
{
- public static final GameStateChanged INSTANCE = new GameStateChanged();
-
- private GameStateChanged()
- {
- // noop
- }
-
/**
* The new game state.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GameTick.java b/runelite-api/src/main/java/net/runelite/api/events/GameTick.java
index 2bf035633d..aefa7fc3e4 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GameTick.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GameTick.java
@@ -24,6 +24,8 @@
*/
package net.runelite.api.events;
+import lombok.Data;
+
// The NPC update event seem to run every server tick,
// but having the game tick event after all packets
// have been processed is typically more useful.
@@ -41,12 +43,7 @@ package net.runelite.api.events;
* Note that occurrences that take place purely on the client, such as right
* click menus, are independent of the game tick.
*/
+@Data
public class GameTick
{
- public static final GameTick INSTANCE = new GameTick();
-
- private GameTick()
- {
- // noop
- }
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GrandExchangeOfferChanged.java b/runelite-api/src/main/java/net/runelite/api/events/GrandExchangeOfferChanged.java
index 7a49ee6f8d..7260063760 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GrandExchangeOfferChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GrandExchangeOfferChanged.java
@@ -44,13 +44,6 @@ import lombok.Data;
@Data
public class GrandExchangeOfferChanged
{
- public static final GrandExchangeOfferChanged INSTANCE = new GrandExchangeOfferChanged();
-
- private GrandExchangeOfferChanged()
- {
- // noop
- }
-
/**
* The offer that has been modified.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GraphicsObjectCreated.java b/runelite-api/src/main/java/net/runelite/api/events/GraphicsObjectCreated.java
index 4d624e716f..f2cc4f35a9 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GraphicsObjectCreated.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GraphicsObjectCreated.java
@@ -25,24 +25,16 @@
package net.runelite.api.events;
import net.runelite.api.GraphicsObject;
-
-import lombok.Data;
+import lombok.Value;
/**
* An event where a new {@link GraphicsObject} has been created.
*/
-@Data
+@Value
public class GraphicsObjectCreated
{
- public static final GraphicsObjectCreated INSTANCE = new GraphicsObjectCreated();
-
- private GraphicsObjectCreated()
- {
- // noop
- }
-
/**
* The newly created graphics object.
*/
- private GraphicsObject graphicsObject;
+ private final GraphicsObject graphicsObject;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GroundObjectChanged.java b/runelite-api/src/main/java/net/runelite/api/events/GroundObjectChanged.java
index 836780f6a5..8fa97ae503 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GroundObjectChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GroundObjectChanged.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class GroundObjectChanged
{
- public static final GroundObjectChanged INSTANCE = new GroundObjectChanged();
-
- private GroundObjectChanged()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GroundObjectDespawned.java b/runelite-api/src/main/java/net/runelite/api/events/GroundObjectDespawned.java
index 0ff488f3b4..54bb6dfbe0 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GroundObjectDespawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GroundObjectDespawned.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class GroundObjectDespawned
{
- public static final GroundObjectDespawned INSTANCE = new GroundObjectDespawned();
-
- private GroundObjectDespawned()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/GroundObjectSpawned.java b/runelite-api/src/main/java/net/runelite/api/events/GroundObjectSpawned.java
index 7964707840..af1f15ab6f 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/GroundObjectSpawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GroundObjectSpawned.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class GroundObjectSpawned
{
- public static final GroundObjectSpawned INSTANCE = new GroundObjectSpawned();
-
- private GroundObjectSpawned()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/HitsplatApplied.java b/runelite-api/src/main/java/net/runelite/api/events/HitsplatApplied.java
index 3cf8986299..f96a0f08d7 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/HitsplatApplied.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/HitsplatApplied.java
@@ -38,13 +38,6 @@ import lombok.Data;
@Data
public class HitsplatApplied
{
- public static final HitsplatApplied INSTANCE = new HitsplatApplied();
-
- private HitsplatApplied()
- {
- // noop
- }
-
/**
* The actor the hitsplat was applied to.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/InteractChanged.java b/runelite-api/src/main/java/net/runelite/api/events/InteractChanged.java
index f606eba5d0..fcd2e54a43 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/InteractChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/InteractChanged.java
@@ -30,12 +30,5 @@ import lombok.Data;
@Data
public class InteractChanged
{
- public static final InteractChanged INSTANCE = new InteractChanged();
-
- private InteractChanged()
- {
- // noop
- }
-
private Actor actor;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/InteractingChanged.java b/runelite-api/src/main/java/net/runelite/api/events/InteractingChanged.java
index 4549527b4d..c76abd349f 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/InteractingChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/InteractingChanged.java
@@ -1,26 +1,18 @@
package net.runelite.api.events;
import net.runelite.api.Actor;
-
-import lombok.Data;
+import lombok.Value;
/**
* An event called when the actor an actor is interacting with changes
*/
-@Data
+@Value
public class InteractingChanged
{
- public static final InteractingChanged INSTANCE = new InteractingChanged();
-
- private InteractingChanged()
- {
- // noop
- }
-
- private Actor source;
+ private final Actor source;
/**
* Target actor, may be null
*/
- private Actor target;
+ private final Actor target;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ItemContainerChanged.java b/runelite-api/src/main/java/net/runelite/api/events/ItemContainerChanged.java
index e68ad8fb44..ec0ff6627b 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ItemContainerChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ItemContainerChanged.java
@@ -25,8 +25,7 @@
package net.runelite.api.events;
import net.runelite.api.ItemContainer;
-
-import lombok.Data;
+import lombok.Value;
/**
* An event called whenever the stack size of an {@link api.Item}
@@ -39,18 +38,11 @@ import lombok.Data;
*
Dropping an item
*
*/
-@Data
+@Value
public class ItemContainerChanged
{
- public static final ItemContainerChanged INSTANCE = new ItemContainerChanged();
-
- private ItemContainerChanged()
- {
- // noop
- }
-
/**
* The modified item container.
*/
- private ItemContainer itemContainer;
+ private final ItemContainer itemContainer;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ItemDespawned.java b/runelite-api/src/main/java/net/runelite/api/events/ItemDespawned.java
index 1c22d7ce59..aeb90ede92 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ItemDespawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ItemDespawned.java
@@ -26,23 +26,15 @@ package net.runelite.api.events;
import net.runelite.api.Item;
import net.runelite.api.Tile;
-
-import lombok.Data;
+import lombok.Value;
/**
* Called when an item pile despawns from the ground. When the client loads a new scene,
* all item piles are implicitly despawned, and despawn events will not be sent.
*/
-@Data
+@Value
public class ItemDespawned
{
- public static final ItemDespawned INSTANCE = new ItemDespawned();
-
- private ItemDespawned()
- {
- // noop
- }
-
- private Tile tile;
- private Item item;
+ private final Tile tile;
+ private final Item item;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ItemQuantityChanged.java b/runelite-api/src/main/java/net/runelite/api/events/ItemQuantityChanged.java
index ee273f407d..2cb1048f06 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ItemQuantityChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ItemQuantityChanged.java
@@ -26,23 +26,16 @@ package net.runelite.api.events;
import net.runelite.api.Item;
import net.runelite.api.Tile;
-import lombok.Data;
+import lombok.Value;
/**
* Called when the quantity of an item pile changes.
*/
-@Data
+@Value
public class ItemQuantityChanged
{
- public static final ItemQuantityChanged INSTANCE = new ItemQuantityChanged();
-
- private ItemQuantityChanged()
- {
- // noop
- }
-
- private Item item;
- private Tile tile;
- private int oldQuantity;
- private int newQuantity;
+ private final Item item;
+ private final Tile tile;
+ private final int oldQuantity;
+ private final int newQuantity;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ItemSpawned.java b/runelite-api/src/main/java/net/runelite/api/events/ItemSpawned.java
index aae38645c2..eb41b3e530 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ItemSpawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ItemSpawned.java
@@ -26,22 +26,15 @@ package net.runelite.api.events;
import net.runelite.api.Item;
import net.runelite.api.Tile;
-import lombok.Data;
+import lombok.Value;
/**
* Called when an item pile spawns on the ground. When the client loads a new scene,
* all item piles are implicitly reset and a new spawn event will be sent.
*/
-@Data
+@Value
public class ItemSpawned
{
- public static final ItemSpawned INSTANCE = new ItemSpawned();
-
- private ItemSpawned()
- {
- // noop
- }
-
- private Tile tile;
- private Item item;
+ private final Tile tile;
+ private final Item item;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/LocalPlayerDeath.java b/runelite-api/src/main/java/net/runelite/api/events/LocalPlayerDeath.java
index 0cf8f33c76..e46b815f49 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/LocalPlayerDeath.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/LocalPlayerDeath.java
@@ -29,10 +29,4 @@ package net.runelite.api.events;
*/
public class LocalPlayerDeath
{
- public static final LocalPlayerDeath INSTANCE = new LocalPlayerDeath();
-
- private LocalPlayerDeath()
- {
- // noop
- }
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java b/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java
index 0f1cafcf15..37f73ec792 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java
@@ -35,17 +35,10 @@ import net.runelite.api.MenuEntry;
@AllArgsConstructor
public class MenuEntryAdded
{
- public static final MenuEntryAdded INSTANCE = new MenuEntryAdded();
-
- private MenuEntryAdded()
- {
- // noop
- }
-
/**
* The MenuEntry object that was actually added
*/
- private MenuEntry menuEntry;
+ private final MenuEntry menuEntry;
public String getOption()
{
diff --git a/runelite-api/src/main/java/net/runelite/api/events/MenuOpened.java b/runelite-api/src/main/java/net/runelite/api/events/MenuOpened.java
index 634d8f46f3..3a7b04c287 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/MenuOpened.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/MenuOpened.java
@@ -33,13 +33,6 @@ import lombok.Data;
@Data
public class MenuOpened
{
- public static final MenuOpened INSTANCE = new MenuOpened();
-
- private MenuOpened()
- {
- // noop
- }
-
/**
* The menu entries in the newly opened menu.
*
diff --git a/runelite-api/src/main/java/net/runelite/api/events/MenuOptionClicked.java b/runelite-api/src/main/java/net/runelite/api/events/MenuOptionClicked.java
index 770fb6966e..2180458228 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/MenuOptionClicked.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/MenuOptionClicked.java
@@ -42,13 +42,6 @@ import net.runelite.api.MenuEntry;
@Data
public class MenuOptionClicked
{
- public static final MenuOptionClicked INSTANCE = new MenuOptionClicked();
-
- private MenuOptionClicked()
- {
- // noop
- }
-
public MenuOptionClicked(MenuEntry entry)
{
menuEntry = entry;
diff --git a/runelite-api/src/main/java/net/runelite/api/events/MenuShouldLeftClick.java b/runelite-api/src/main/java/net/runelite/api/events/MenuShouldLeftClick.java
index 85561790ab..c36372ff2c 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/MenuShouldLeftClick.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/MenuShouldLeftClick.java
@@ -33,13 +33,6 @@ import lombok.Data;
@Data
public class MenuShouldLeftClick
{
- public static final MenuShouldLeftClick INSTANCE = new MenuShouldLeftClick();
-
- private MenuShouldLeftClick()
- {
- // noop
- }
-
/**
* If set to true, the menu will open on left click.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/NameableNameChanged.java b/runelite-api/src/main/java/net/runelite/api/events/NameableNameChanged.java
index 839f81dcec..afcc43973d 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/NameableNameChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/NameableNameChanged.java
@@ -25,23 +25,16 @@
package net.runelite.api.events;
import net.runelite.api.Nameable;
-import lombok.Data;
+import lombok.Value;
/**
* An event where a {@link Nameable} has had their name changed.
*/
-@Data
+@Value
public class NameableNameChanged
{
- public static final NameableNameChanged INSTANCE = new NameableNameChanged();
-
- private NameableNameChanged()
- {
- // noop
- }
-
/**
* The nameable that changed names.
*/
- private Nameable nameable;
+ private final Nameable nameable;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/NpcActionChanged.java b/runelite-api/src/main/java/net/runelite/api/events/NpcActionChanged.java
index f5906ad03f..35838e067c 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/NpcActionChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/NpcActionChanged.java
@@ -33,13 +33,6 @@ import net.runelite.api.NPCDefinition;
@Data
public class NpcActionChanged
{
- public static final NpcActionChanged INSTANCE = new NpcActionChanged();
-
- private NpcActionChanged()
- {
- // noop
- }
-
/**
* The NPC composition that has been changed.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/NpcDespawned.java b/runelite-api/src/main/java/net/runelite/api/events/NpcDespawned.java
index f5b20af29e..f1bc72344f 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/NpcDespawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/NpcDespawned.java
@@ -26,25 +26,18 @@ package net.runelite.api.events;
import net.runelite.api.Actor;
import net.runelite.api.NPC;
-import lombok.Data;
+import lombok.Value;
/**
* An event where an {@link NPC} has despawned.
*/
-@Data
+@Value
public class NpcDespawned
{
- public static final NpcDespawned INSTANCE = new NpcDespawned();
-
- private NpcDespawned()
- {
- // noop
- }
-
/**
* The despawned NPC.
*/
- private NPC npc;
+ private final NPC npc;
public Actor getActor()
{
diff --git a/runelite-api/src/main/java/net/runelite/api/events/NpcSpawned.java b/runelite-api/src/main/java/net/runelite/api/events/NpcSpawned.java
index 226fa9918b..911d3780c1 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/NpcSpawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/NpcSpawned.java
@@ -26,25 +26,18 @@ package net.runelite.api.events;
import net.runelite.api.Actor;
import net.runelite.api.NPC;
-import lombok.Data;
+import lombok.Value;
/**
* An event where an {@link NPC} has spawned.
*/
-@Data
+@Value
public class NpcSpawned
{
- public static final NpcSpawned INSTANCE = new NpcSpawned();
-
- private NpcSpawned()
- {
- // noop
- }
-
/**
* The spawned NPC.
*/
- private NPC npc;
+ private final NPC npc;
public Actor getActor()
{
diff --git a/runelite-api/src/main/java/net/runelite/api/events/OverheadTextChanged.java b/runelite-api/src/main/java/net/runelite/api/events/OverheadTextChanged.java
index 242c2c07c5..a8a22730fd 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/OverheadTextChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/OverheadTextChanged.java
@@ -1,19 +1,12 @@
package net.runelite.api.events;
import net.runelite.api.Actor;
-import lombok.Data;
+import lombok.Value;
-@Data
+@Value
public class OverheadTextChanged
{
- public static final OverheadTextChanged INSTANCE = new OverheadTextChanged();
+ private final Actor actor;
- private OverheadTextChanged()
- {
- // noop
- }
-
- private Actor actor;
-
- private String overheadText;
+ private final String overheadText;
}
\ No newline at end of file
diff --git a/runelite-api/src/main/java/net/runelite/api/events/PlayerDespawned.java b/runelite-api/src/main/java/net/runelite/api/events/PlayerDespawned.java
index 3740d6179d..7094f3bd1a 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/PlayerDespawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/PlayerDespawned.java
@@ -26,27 +26,20 @@ package net.runelite.api.events;
import net.runelite.api.Actor;
import net.runelite.api.Player;
-import lombok.Data;
+import lombok.Value;
/**
* An event where a {@link Player} has despawned.
*
* Note: This event does not get called for the local player.
*/
-@Data
+@Value
public class PlayerDespawned
{
- public static final PlayerDespawned INSTANCE = new PlayerDespawned();
-
- private PlayerDespawned()
- {
- // noop
- }
-
/**
* The despawned player.
*/
- private Player player;
+ private final Player player;
public Actor getActor()
{
diff --git a/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionClicked.java b/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionClicked.java
index b085b0e5bb..dcfb0421ca 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionClicked.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionClicked.java
@@ -33,13 +33,6 @@ import lombok.Data;
@Data
public class PlayerMenuOptionClicked
{
- public static final PlayerMenuOptionClicked INSTANCE = new PlayerMenuOptionClicked();
-
- private PlayerMenuOptionClicked()
- {
- // noop
- }
-
/**
* The menu option clicked.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionsChanged.java b/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionsChanged.java
index 4ce089baed..d33aa4d06c 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionsChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionsChanged.java
@@ -29,13 +29,6 @@ import lombok.Data;
@Data
public class PlayerMenuOptionsChanged
{
- public static final PlayerMenuOptionsChanged INSTANCE = new PlayerMenuOptionsChanged();
-
- private PlayerMenuOptionsChanged()
- {
- // noop
- }
-
/**
* Index in playerOptions which changed.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/PlayerSpawned.java b/runelite-api/src/main/java/net/runelite/api/events/PlayerSpawned.java
index aafcf5ec01..31cc16a9c0 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/PlayerSpawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/PlayerSpawned.java
@@ -26,25 +26,18 @@ package net.runelite.api.events;
import net.runelite.api.Actor;
import net.runelite.api.Player;
-import lombok.Data;
+import lombok.Value;
/**
* An event where a {@link Player} has spawned.
*/
-@Data
+@Value
public class PlayerSpawned
{
- public static final PlayerSpawned INSTANCE = new PlayerSpawned();
-
- private PlayerSpawned()
- {
- // noop
- }
-
/**
* The spawned player.
*/
- private Player player;
+ private final Player player;
public Actor getActor()
{
diff --git a/runelite-api/src/main/java/net/runelite/api/events/PostHealthBar.java b/runelite-api/src/main/java/net/runelite/api/events/PostHealthBar.java
index 5f0f7addee..c8896ff945 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/PostHealthBar.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/PostHealthBar.java
@@ -30,12 +30,5 @@ import lombok.Data;
@Data
public class PostHealthBar
{
- public static final PostHealthBar INSTANCE = new PostHealthBar();
-
- private PostHealthBar()
- {
- // noop
- }
-
private HealthBar healthBar;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/PostItemDefinition.java b/runelite-api/src/main/java/net/runelite/api/events/PostItemDefinition.java
index 66b4dbb7ce..35718b5ea9 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/PostItemDefinition.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/PostItemDefinition.java
@@ -34,13 +34,6 @@ import net.runelite.api.ItemDefinition;
@Data
public class PostItemDefinition
{
- public static final PostItemDefinition INSTANCE = new PostItemDefinition();
-
- private PostItemDefinition()
- {
- // noop
- }
-
/**
* The newly created item.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ProjectileMoved.java b/runelite-api/src/main/java/net/runelite/api/events/ProjectileMoved.java
index 4deb6879bc..70d73d7026 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ProjectileMoved.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ProjectileMoved.java
@@ -37,13 +37,6 @@ import lombok.Data;
@Data
public class ProjectileMoved
{
- public static final ProjectileMoved INSTANCE = new ProjectileMoved();
-
- private ProjectileMoved()
- {
- // noop
- }
-
/**
* The projectile being moved.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ProjectileSpawned.java b/runelite-api/src/main/java/net/runelite/api/events/ProjectileSpawned.java
index d415e3b850..f5ba810a5f 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ProjectileSpawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ProjectileSpawned.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class ProjectileSpawned
{
- public static final ProjectileSpawned INSTANCE = new ProjectileSpawned();
-
- private ProjectileSpawned()
- {
- // noop
- }
-
/**
* The spawned projectile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/RemovedFriend.java b/runelite-api/src/main/java/net/runelite/api/events/RemovedFriend.java
index e8e7f24511..c60cd13c33 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/RemovedFriend.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/RemovedFriend.java
@@ -24,23 +24,16 @@
*/
package net.runelite.api.events;
-import lombok.Data;
+import lombok.Value;
/**
* An event where a request to remove a friend is sent to the server.
*/
-@Data
+@Value
public class RemovedFriend
{
- public static final RemovedFriend INSTANCE = new RemovedFriend();
-
- private RemovedFriend()
- {
- // noop
- }
-
/**
* The name of the removed friend.
*/
- private String name;
+ private final String name;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ResizeableChanged.java b/runelite-api/src/main/java/net/runelite/api/events/ResizeableChanged.java
index 084d0eb0f6..146f92ac38 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ResizeableChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ResizeableChanged.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class ResizeableChanged
{
- public static final ResizeableChanged INSTANCE = new ResizeableChanged();
-
- private ResizeableChanged()
- {
- // noop
- }
-
/**
* Whether the game is in resizable mode.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/ScriptCallbackEvent.java b/runelite-api/src/main/java/net/runelite/api/events/ScriptCallbackEvent.java
index fc36c9ae4d..0c1bdd5ee9 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/ScriptCallbackEvent.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ScriptCallbackEvent.java
@@ -33,13 +33,6 @@ import lombok.Data;
@Data
public class ScriptCallbackEvent
{
- public static final ScriptCallbackEvent INSTANCE = new ScriptCallbackEvent();
-
- private ScriptCallbackEvent()
- {
- // noop
- }
-
/**
* The script being called.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/SoundEffectPlayed.java b/runelite-api/src/main/java/net/runelite/api/events/SoundEffectPlayed.java
index 049229c6e4..127a9a2646 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/SoundEffectPlayed.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/SoundEffectPlayed.java
@@ -29,13 +29,6 @@ import lombok.Data;
@Data
public class SoundEffectPlayed
{
- public static final SoundEffectPlayed INSTANCE = new SoundEffectPlayed();
-
- private SoundEffectPlayed()
- {
- // noop
- }
-
private int soundId;
private int delay;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/SpotAnimationChanged.java b/runelite-api/src/main/java/net/runelite/api/events/SpotAnimationChanged.java
index 6bfe72baec..79b8643d2c 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/SpotAnimationChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/SpotAnimationChanged.java
@@ -21,13 +21,6 @@ import net.runelite.api.Actor;
@Data
public class SpotAnimationChanged
{
- public static final SpotAnimationChanged INSTANCE = new SpotAnimationChanged();
-
- private SpotAnimationChanged()
- {
- // noop
- }
-
/**
* The actor that has had their graphic changed.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/UsernameChanged.java b/runelite-api/src/main/java/net/runelite/api/events/UsernameChanged.java
index 3dea001150..91bed8a304 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/UsernameChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/UsernameChanged.java
@@ -32,10 +32,4 @@ package net.runelite.api.events;
*/
public class UsernameChanged
{
- public static final UsernameChanged INSTANCE = new UsernameChanged();
-
- private UsernameChanged()
- {
- // noop
- }
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/VarClientIntChanged.java b/runelite-api/src/main/java/net/runelite/api/events/VarClientIntChanged.java
index ab9892b6de..82c2c404d4 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/VarClientIntChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/VarClientIntChanged.java
@@ -25,20 +25,13 @@
*/
package net.runelite.api.events;
-import lombok.Data;
+import lombok.Value;
/**
* An event where a varbit integer has changed.
*/
-@Data
+@Value
public class VarClientIntChanged
{
- public static final VarClientIntChanged INSTANCE = new VarClientIntChanged();
-
- private VarClientIntChanged()
- {
- // noop
- }
-
private int index;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/VarClientStrChanged.java b/runelite-api/src/main/java/net/runelite/api/events/VarClientStrChanged.java
index 7aca876b72..e1d7da6ffa 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/VarClientStrChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/VarClientStrChanged.java
@@ -25,20 +25,13 @@
*/
package net.runelite.api.events;
-import lombok.Data;
+import lombok.Value;
/**
* An event where a varbit string has changed.
*/
-@Data
+@Value
public class VarClientStrChanged
{
- public static final VarClientStrChanged INSTANCE = new VarClientStrChanged();
-
- private VarClientStrChanged()
- {
- // noop
- }
-
private int index;
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/VarbitChanged.java b/runelite-api/src/main/java/net/runelite/api/events/VarbitChanged.java
index 04b8a30ab3..9680e54ac4 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/VarbitChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/VarbitChanged.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class VarbitChanged
{
- public static final VarbitChanged INSTANCE = new VarbitChanged();
-
- private VarbitChanged()
- {
- // noop
- }
-
/**
* Index in the varp array that was changed.
* For varplayer, this is the varplayer id.
diff --git a/runelite-api/src/main/java/net/runelite/api/events/WallObjectChanged.java b/runelite-api/src/main/java/net/runelite/api/events/WallObjectChanged.java
index 59ccec9a72..bea7686602 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/WallObjectChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/WallObjectChanged.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class WallObjectChanged
{
- public static final WallObjectChanged INSTANCE = new WallObjectChanged();
-
- private WallObjectChanged()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/WallObjectDespawned.java b/runelite-api/src/main/java/net/runelite/api/events/WallObjectDespawned.java
index 6c34cbc9ac..6ac609a46f 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/WallObjectDespawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/WallObjectDespawned.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class WallObjectDespawned
{
- public static final WallObjectDespawned INSTANCE = new WallObjectDespawned();
-
- private WallObjectDespawned()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/WallObjectSpawned.java b/runelite-api/src/main/java/net/runelite/api/events/WallObjectSpawned.java
index babf7d50b8..dc22e07f7d 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/WallObjectSpawned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/WallObjectSpawned.java
@@ -34,13 +34,6 @@ import lombok.Data;
@Data
public class WallObjectSpawned
{
- public static final WallObjectSpawned INSTANCE = new WallObjectSpawned();
-
- private WallObjectSpawned()
- {
- // noop
- }
-
/**
* The affected tile.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/WidgetHiddenChanged.java b/runelite-api/src/main/java/net/runelite/api/events/WidgetHiddenChanged.java
index 91883db505..2cf434faa4 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/WidgetHiddenChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/WidgetHiddenChanged.java
@@ -33,13 +33,6 @@ import lombok.Data;
@Data
public class WidgetHiddenChanged
{
- public static final WidgetHiddenChanged INSTANCE = new WidgetHiddenChanged();
-
- private WidgetHiddenChanged()
- {
- // noop
- }
-
/**
* The affected widget.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/WidgetLoaded.java b/runelite-api/src/main/java/net/runelite/api/events/WidgetLoaded.java
index bf9c258412..c71bc41634 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/WidgetLoaded.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/WidgetLoaded.java
@@ -32,13 +32,6 @@ import lombok.Data;
@Data
public class WidgetLoaded
{
- public static final WidgetLoaded INSTANCE = new WidgetLoaded();
-
- private WidgetLoaded()
- {
- // noop
- }
-
/**
* The group ID of the loaded widget.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/WidgetMenuOptionClicked.java b/runelite-api/src/main/java/net/runelite/api/events/WidgetMenuOptionClicked.java
index abe0962d8e..6945e88790 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/WidgetMenuOptionClicked.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/WidgetMenuOptionClicked.java
@@ -33,13 +33,6 @@ import lombok.Data;
@Data
public class WidgetMenuOptionClicked
{
- public static final WidgetMenuOptionClicked INSTANCE = new WidgetMenuOptionClicked();
-
- private WidgetMenuOptionClicked()
- {
- // noop
- }
-
/**
* The clicked menu option.
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/events/WidgetPositioned.java b/runelite-api/src/main/java/net/runelite/api/events/WidgetPositioned.java
index 6f58e9fe07..d5479e3485 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/WidgetPositioned.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/WidgetPositioned.java
@@ -24,16 +24,13 @@
*/
package net.runelite.api.events;
+import lombok.Value;
+
/**
* An event where the position of a {@link net.runelite.api.widgets.Widget}
* relative to its parent has changed.
*/
+@Value
public class WidgetPositioned
{
- public static final WidgetPositioned INSTANCE = new WidgetPositioned();
-
- private WidgetPositioned()
- {
- // noop
- }
}
diff --git a/runelite-api/src/main/java/net/runelite/api/events/WorldListLoad.java b/runelite-api/src/main/java/net/runelite/api/events/WorldListLoad.java
index f060a50139..67fa28797e 100644
--- a/runelite-api/src/main/java/net/runelite/api/events/WorldListLoad.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/WorldListLoad.java
@@ -25,20 +25,13 @@
package net.runelite.api.events;
import net.runelite.api.World;
-import lombok.Data;
+import lombok.Value;
/**
* Event when the world list is loaded for the world switcher
*/
-@Data
+@Value
public class WorldListLoad
{
- public static final WorldListLoad INSTANCE = new WorldListLoad();
-
- private WorldListLoad()
- {
- // noop
- }
-
- private World[] worlds;
+ private final World[] worlds;
}
diff --git a/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java b/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java
index df29fd2c04..ca25fa84a8 100644
--- a/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java
+++ b/runelite-client/src/main/java/net/runelite/client/callback/Hooks.java
@@ -87,6 +87,9 @@ 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;
@@ -148,13 +151,13 @@ public class Hooks implements Callbacks
deferredEventBus.replay();
- eventBus.post(GameTick.INSTANCE);
+ eventBus.post(GAME_TICK);
int tick = client.getTickCount();
client.setTickCount(tick + 1);
}
- eventBus.post(BeforeRender.INSTANCE);
+ eventBus.post(BEFORE_RENDER);
clientThread.invoke();
@@ -508,7 +511,7 @@ public class Hooks implements Callbacks
public static boolean drawMenu()
{
- BeforeMenuRender event = BeforeMenuRender.INSTANCE;
+ BeforeMenuRender event = new BeforeMenuRender();
client.getCallbacks().post(event);
return event.isConsumed();
}
diff --git a/runelite-client/src/main/java/net/runelite/client/chat/CommandManager.java b/runelite-client/src/main/java/net/runelite/client/chat/CommandManager.java
index cf5292991e..7529fc6d56 100644
--- a/runelite-client/src/main/java/net/runelite/client/chat/CommandManager.java
+++ b/runelite-client/src/main/java/net/runelite/client/chat/CommandManager.java
@@ -114,9 +114,7 @@ public class CommandManager
String command = split[0];
String[] args = Arrays.copyOfRange(split, 1, split.length);
- CommandExecuted commandExecuted = CommandExecuted.INSTANCE;
- commandExecuted.setCommand(command);
- commandExecuted.setArguments(args);
+ CommandExecuted commandExecuted = new CommandExecuted(command, args);
eventBus.post(commandExecuted);
}
diff --git a/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java b/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java
index c723bfa326..6c674c1d14 100644
--- a/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java
+++ b/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java
@@ -429,7 +429,7 @@ public class MenuManager
if (curMenuOption.getMenuTarget().equals(event.getTarget())
&& curMenuOption.getMenuOption().equals(event.getOption()))
{
- WidgetMenuOptionClicked customMenu = WidgetMenuOptionClicked.INSTANCE;
+ WidgetMenuOptionClicked customMenu = new WidgetMenuOptionClicked();
customMenu.setMenuOption(event.getOption());
customMenu.setMenuTarget(event.getTarget());
customMenu.setWidget(curMenuOption.getWidget());
@@ -444,7 +444,7 @@ public class MenuManager
//
username (level-42) or
username
String username = Text.removeTags(target).split("[(]")[0].trim();
- PlayerMenuOptionClicked playerMenuOptionClicked = PlayerMenuOptionClicked.INSTANCE;
+ PlayerMenuOptionClicked playerMenuOptionClicked = new PlayerMenuOptionClicked();
playerMenuOptionClicked.setMenuOption(event.getOption());
playerMenuOptionClicked.setMenuTarget(username);
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningOverlay.java
index 179c9b8c02..48491da688 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningOverlay.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningOverlay.java
@@ -27,10 +27,8 @@
*/
package net.runelite.client.plugins.aoewarnings;
-import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Dimension;
-import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.Polygon;
import java.awt.Rectangle;
@@ -38,13 +36,11 @@ import java.time.Duration;
import java.time.Instant;
import java.util.Iterator;
import java.util.Map;
-import javax.annotation.Nullable;
import javax.inject.Inject;
import net.runelite.api.Client;
import net.runelite.api.Perspective;
import net.runelite.api.Point;
import net.runelite.api.Projectile;
-import net.runelite.api.coords.LocalPoint;
import net.runelite.api.coords.WorldPoint;
import net.runelite.client.ui.overlay.Overlay;
import net.runelite.client.ui.overlay.OverlayLayer;
@@ -62,7 +58,7 @@ public class AoeWarningOverlay extends Overlay
private final AoeWarningConfig config;
@Inject
- public AoeWarningOverlay(@Nullable Client client, AoeWarningPlugin plugin, AoeWarningConfig config)
+ public AoeWarningOverlay(Client client, AoeWarningPlugin plugin, AoeWarningConfig config)
{
setPosition(OverlayPosition.DYNAMIC);
setLayer(OverlayLayer.UNDER_WIDGETS);
@@ -74,24 +70,25 @@ public class AoeWarningOverlay extends Overlay
@Override
public Dimension render(Graphics2D graphics)
{
+ WorldPoint lp = client.getLocalPlayer().getWorldLocation();
for (WorldPoint point : plugin.getLightningTrail())
{
- drawTile(graphics, point, new Color(0, 150, 200), 2, 150, 50);
+ OverlayUtil.drawTile(graphics, client, point, lp, new Color(0, 150, 200), 2, 150, 50);
}
for (WorldPoint point : plugin.getAcidTrail())
{
- drawTile(graphics, point, new Color(69, 241, 44), 2, 150, 50);
+ OverlayUtil.drawTile(graphics, client, point, lp, new Color(69, 241, 44), 2, 150, 50);
}
for (WorldPoint point : plugin.getCrystalSpike())
{
- drawTile(graphics, point, new Color(255, 0, 84), 2, 150, 50);
+ OverlayUtil.drawTile(graphics, client, point, lp, new Color(255, 0, 84), 2, 150, 50);
}
for (WorldPoint point : plugin.getWintertodtSnowFall())
{
- drawTile(graphics, point, new Color(255, 0, 84), 2, 150, 50);
+ OverlayUtil.drawTile(graphics, client, point, lp, new Color(255, 0, 84), 2, 150, 50);
}
Instant now = Instant.now();
@@ -164,7 +161,8 @@ public class AoeWarningOverlay extends Overlay
{
if (tickProgress >= 0)
{
- renderTextLocation(graphics, Integer.toString(tickProgress), config.textSize(), config.fontStyle().getFont(), color, centerPoint(tilePoly.getBounds()));
+ OverlayUtil.renderTextLocation(graphics, Integer.toString(tickProgress), plugin.getTextSize(),
+ plugin.getFontStyle(), color, centerPoint(tilePoly.getBounds()), plugin.isShadows(), 0);
}
}
graphics.setColor(new Color(setAlphaComponent(config.overlayColor().getRGB(), fillAlpha), true));
@@ -173,50 +171,6 @@ public class AoeWarningOverlay extends Overlay
return null;
}
- private void drawTile(Graphics2D graphics, WorldPoint point, Color color, int strokeWidth, int outlineAlpha, int fillAlpha)
- {
- WorldPoint playerLocation = client.getLocalPlayer().getWorldLocation();
- if (point.distanceTo(playerLocation) >= 32)
- {
- return;
- }
- LocalPoint lp = LocalPoint.fromWorld(client, point);
- if (lp == null)
- {
- return;
- }
-
- Polygon poly = Perspective.getCanvasTilePoly(client, lp);
- if (poly == null)
- {
- return;
- }
- graphics.setColor(new Color(color.getRed(), color.getGreen(), color.getBlue(), outlineAlpha));
- graphics.setStroke(new BasicStroke(strokeWidth));
- graphics.draw(poly);
- graphics.setColor(new Color(color.getRed(), color.getGreen(), color.getBlue(), fillAlpha));
- graphics.fill(poly);
- }
-
- private void renderTextLocation(Graphics2D graphics, String txtString, int fontSize, int fontStyle, Color fontColor, Point canvasPoint)
- {
- graphics.setFont(new Font("Arial", fontStyle, fontSize));
- if (canvasPoint != null)
- {
- final Point canvasCenterPoint = new Point(
- canvasPoint.getX(),
- canvasPoint.getY());
- final Point canvasCenterPoint_shadow = new Point(
- canvasPoint.getX() + 1,
- canvasPoint.getY() + 1);
- if (config.shadows())
- {
- OverlayUtil.renderTextLocation(graphics, canvasCenterPoint_shadow, txtString, Color.BLACK);
- }
- OverlayUtil.renderTextLocation(graphics, canvasCenterPoint, txtString, fontColor);
- }
- }
-
private Point centerPoint(Rectangle rect)
{
int x = (int) (rect.getX() + rect.getWidth() / 2);
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningPlugin.java
index 37375941d6..00ed024a44 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningPlugin.java
@@ -41,6 +41,7 @@ import lombok.extern.slf4j.Slf4j;
import net.runelite.api.Client;
import net.runelite.api.GameObject;
import net.runelite.api.GameState;
+import net.runelite.api.GraphicID;
import net.runelite.api.GraphicsObject;
import net.runelite.api.NullObjectID;
import net.runelite.api.ObjectID;
@@ -48,6 +49,7 @@ import net.runelite.api.Projectile;
import net.runelite.api.Tile;
import net.runelite.api.coords.LocalPoint;
import net.runelite.api.coords.WorldPoint;
+import net.runelite.api.events.ConfigChanged;
import net.runelite.api.events.GameObjectDespawned;
import net.runelite.api.events.GameObjectSpawned;
import net.runelite.api.events.GameStateChanged;
@@ -72,40 +74,35 @@ import net.runelite.client.ui.overlay.OverlayManager;
@Slf4j
public class AoeWarningPlugin extends Plugin
{
-
@Getter
private final Map bombs = new HashMap<>();
private final Map projectiles = new HashMap<>();
-
@Inject
public AoeWarningConfig config;
-
@Inject
private Notifier notifier;
-
@Inject
private OverlayManager overlayManager;
-
@Inject
private AoeWarningOverlay coreOverlay;
-
@Inject
private BombOverlay bombOverlay;
-
@Inject
private Client client;
-
@Getter(AccessLevel.PACKAGE)
private List LightningTrail = new ArrayList<>();
-
@Getter(AccessLevel.PACKAGE)
private List AcidTrail = new ArrayList<>();
-
@Getter(AccessLevel.PACKAGE)
private List CrystalSpike = new ArrayList<>();
-
@Getter(AccessLevel.PACKAGE)
private List WintertodtSnowFall = new ArrayList<>();
+ @Getter(AccessLevel.PACKAGE)
+ private boolean shadows;
+ @Getter(AccessLevel.PACKAGE)
+ private int textSize;
+ @Getter(AccessLevel.PACKAGE)
+ private int fontStyle;
@Provides
AoeWarningConfig getConfig(ConfigManager configManager)
@@ -123,10 +120,7 @@ public class AoeWarningPlugin extends Plugin
{
overlayManager.add(coreOverlay);
overlayManager.add(bombOverlay);
- LightningTrail.clear();
- AcidTrail.clear();
- CrystalSpike.clear();
- WintertodtSnowFall.clear();
+ reset(true);
}
@Override
@@ -134,10 +128,29 @@ public class AoeWarningPlugin extends Plugin
{
overlayManager.remove(coreOverlay);
overlayManager.remove(bombOverlay);
- LightningTrail.clear();
- AcidTrail.clear();
- CrystalSpike.clear();
- WintertodtSnowFall.clear();
+ reset(false);
+ }
+
+ @Subscribe
+ public void onConfigChanged(ConfigChanged event)
+ {
+ if (!event.getGroup().equals("aoe"))
+ {
+ return;
+ }
+
+ switch (event.getKey())
+ {
+ case "fontStyle":
+ fontStyle = config.fontStyle().getFont();
+ break;
+ case "textSize":
+ textSize = config.textSize();
+ break;
+ case "shadows":
+ shadows = config.shadows();
+ break;
+ }
}
@Subscribe
@@ -172,12 +185,12 @@ public class AoeWarningPlugin extends Plugin
public void onGameObjectSpawned(GameObjectSpawned event)
{
final GameObject gameObject = event.getGameObject();
- final WorldPoint bombLocation = gameObject.getWorldLocation();
+ final WorldPoint wp = gameObject.getWorldLocation();
switch (gameObject.getId())
{
case ObjectID.CRYSTAL_BOMB:
- bombs.put(bombLocation, new CrystalBomb(gameObject, client.getTickCount()));
+ bombs.put(wp, new CrystalBomb(gameObject, client.getTickCount()));
if (config.aoeNotifyAll() || config.bombDisplayNotifyEnabled())
{
@@ -185,17 +198,16 @@ public class AoeWarningPlugin extends Plugin
}
break;
case ObjectID.ACID_POOL:
- AcidTrail.add(bombLocation);
+ AcidTrail.add(wp);
break;
case ObjectID.SMALL_CRYSTALS:
- //todo
- CrystalSpike.add(bombLocation);
+ CrystalSpike.add(wp);
break;
case NullObjectID.NULL_26690:
//Wintertodt Snowfall
if (config.isWintertodtEnabled())
{
- WintertodtSnowFall.add(bombLocation);
+ WintertodtSnowFall.add(wp);
if (config.aoeNotifyAll() || config.isWintertodtNotifyEnabled())
{
@@ -210,25 +222,23 @@ public class AoeWarningPlugin extends Plugin
public void onGameObjectDespawned(GameObjectDespawned event)
{
GameObject gameObject = event.getGameObject();
- WorldPoint bombLocation = gameObject.getWorldLocation();
+ WorldPoint wp = gameObject.getWorldLocation();
switch (gameObject.getId())
{
case ObjectID.CRYSTAL_BOMB:
- //might as well check the ObjectID to save some time.
purgeBombs(bombs);
break;
case ObjectID.ACID_POOL:
- AcidTrail.remove(bombLocation);
+ AcidTrail.remove(wp);
break;
case ObjectID.SMALL_CRYSTALS:
- //todo
- CrystalSpike.remove(bombLocation);
+ CrystalSpike.remove(wp);
break;
case NullObjectID.NULL_26690:
//Wintertodt Snowfall
if (config.isWintertodtEnabled())
{
- WintertodtSnowFall.remove(bombLocation);
+ WintertodtSnowFall.remove(wp);
}
break;
}
@@ -251,7 +261,7 @@ public class AoeWarningPlugin extends Plugin
LightningTrail.clear();
for (GraphicsObject o : client.getGraphicsObjects())
{
- if (o.getId() == 1356)
+ if (o.getId() == GraphicID.OLM_LIGHTNING)
{
LightningTrail.add(WorldPoint.fromLocal(client, o.getLocation()));
@@ -281,6 +291,12 @@ public class AoeWarningPlugin extends Plugin
Map.Entry entry = it.next();
WorldPoint world = entry.getKey();
LocalPoint local = LocalPoint.fromWorld(client, world);
+
+ if (local == null)
+ {
+ return;
+ }
+
Tile tile = tiles[world.getPlane()][local.getSceneX()][local.getSceneY()];
GameObject[] objects = tile.getGameObjects();
boolean containsObjects = false;
@@ -391,4 +407,20 @@ public class AoeWarningPlugin extends Plugin
return false;
}
-}
+
+ private void reset(boolean setConfig)
+ {
+ LightningTrail.clear();
+ AcidTrail.clear();
+ CrystalSpike.clear();
+ WintertodtSnowFall.clear();
+ bombs.clear();
+ projectiles.clear();
+ if (setConfig)
+ {
+ fontStyle = config.fontStyle().getFont();
+ textSize = config.textSize();
+ shadows = config.shadows();
+ }
+ }
+}
\ No newline at end of file
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/BombOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/BombOverlay.java
index b538b3df25..317f5ad04b 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/BombOverlay.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/BombOverlay.java
@@ -121,6 +121,10 @@ public class BombOverlay extends Overlay
{
final Player localPlayer = client.getLocalPlayer();
LocalPoint localLoc = LocalPoint.fromWorld(client, bomb.getWorldLocation());
+ if (localLoc == null)
+ {
+ return;
+ }
double distance_x = Math.abs(bomb.getWorldLocation().getX() - localPlayer.getWorldLocation().getX());
double distance_y = Math.abs(bomb.getWorldLocation().getY() - localPlayer.getWorldLocation().getY());
Color color_code = Color.decode(SAFE);
@@ -142,7 +146,7 @@ public class BombOverlay extends Overlay
{
color_code = Color.decode(CAUTION);
}
- LocalPoint CenterPoint = new LocalPoint(localLoc.getX() + 0, localLoc.getY() + 0);
+ LocalPoint CenterPoint = new LocalPoint(localLoc.getX(), localLoc.getY());
Polygon poly = Perspective.getCanvasTileAreaPoly(client, CenterPoint, BOMB_AOE);
if (poly != null)
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java
index 9fd09a8ac8..cc64835acb 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/devtools/DevToolsPlugin.java
@@ -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 = VarbitChanged.INSTANCE;
+ VarbitChanged varbitChanged = new VarbitChanged();
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(VarbitChanged.INSTANCE); // fake event
+ eventBus.post(new VarbitChanged()); // fake event
break;
}
case "addxp":
@@ -293,7 +293,7 @@ public class DevToolsPlugin extends Plugin
client.queueChangedSkill(skill);
- ExperienceChanged experienceChanged = ExperienceChanged.INSTANCE;
+ ExperienceChanged experienceChanged = new ExperienceChanged();
experienceChanged.setSkill(skill);
eventBus.post(experienceChanged);
break;
@@ -312,11 +312,11 @@ public class DevToolsPlugin extends Plugin
client.queueChangedSkill(skill);
- ExperienceChanged experienceChanged = ExperienceChanged.INSTANCE;
+ ExperienceChanged experienceChanged = new ExperienceChanged();
experienceChanged.setSkill(skill);
eventBus.post(experienceChanged);
- BoostedLevelChanged boostedLevelChanged = BoostedLevelChanged.INSTANCE;
+ BoostedLevelChanged boostedLevelChanged = new BoostedLevelChanged();
boostedLevelChanged.setSkill(skill);
eventBus.post(boostedLevelChanged);
break;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/freezetimers/FreezeTimersOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/freezetimers/FreezeTimersOverlay.java
index 87e3a0ee98..6842cd111d 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/freezetimers/FreezeTimersOverlay.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/freezetimers/FreezeTimersOverlay.java
@@ -54,17 +54,17 @@ public class FreezeTimersOverlay extends Overlay
private final BufferedImage FREEZE_IMAGE = ImageUtil.getResourceStreamFromClass(getClass(), "freeze.png");
private final BufferedImage TB_IMAGE = ImageUtil.getResourceStreamFromClass(getClass(), "teleblock.png");
private final BufferedImage VENG_IMAGE = ImageUtil.getResourceStreamFromClass(getClass(), "veng.png");
- @Inject
private Timers timers;
private boolean lock;
private long finishedAtTest;
@Inject
- public FreezeTimersOverlay(FreezeTimersConfig config, Client client)
+ public FreezeTimersOverlay(FreezeTimersConfig config, Client client, Timers timers)
{
this.config = config;
this.client = client;
+ this.timers = timers;
setPriority(OverlayPriority.HIGHEST);
setPosition(OverlayPosition.DYNAMIC);
setLayer(OverlayLayer.UNDER_WIDGETS);
@@ -119,24 +119,23 @@ public class FreezeTimersOverlay extends Overlay
String text = processTickCounter(finishedAt);
int test = Integer.parseInt(text);
Point poi = actor.getCanvasTextLocation(g, text, 0);
+
if (poi == null)
{
return false;
}
- int xpoi = poi.getX();
- int ypoi = poi.getY();
- Point FixedPoint = new Point(xpoi, ypoi);
+ Point FixedPoint = new Point(poi.getX(), poi.getY());
if (config.noImage())
{
if (test > 3)
{
- renderTextLocation(g, text, config.textSize(), config.fontStyle().getFont(), Color.WHITE, FixedPoint);
+ OverlayUtil.renderTextLocation(g, text, config.textSize(), config.fontStyle().getFont(), Color.WHITE, FixedPoint, false, 0);
}
else
{
- renderTextLocation(g, text, config.textSize(), config.fontStyle().getFont(), Color.YELLOW, FixedPoint);
+ OverlayUtil.renderTextLocation(g, text, config.textSize(), config.fontStyle().getFont(), Color.YELLOW, FixedPoint, false, 0);
}
}
else
@@ -161,23 +160,26 @@ public class FreezeTimersOverlay extends Overlay
String text = processTickCounter(finishedAt);
Point poi = actor.getCanvasTextLocation(g, text, 0);
- int xpoi = poi.getX() + 20;
- int ypoi = poi.getY();
- Point FixedPoint = new Point(xpoi, ypoi);
+ if (poi == null)
+ {
+ return false;
+ }
+
+ Point FixedPoint = new Point(poi.getX() + 20, poi.getY());
if (config.noImage())
{
if (timers.getTimerEnd(actor, TimerType.FREEZE) <= currentTick)
{
- renderTextLocation(g, text, config.textSize(), config.fontStyle().getFont(), Color.CYAN, poi);
+ OverlayUtil.renderTextLocation(g, text, config.textSize(), config.fontStyle().getFont(), Color.CYAN, poi, false, 0);
}
if (timers.getTimerEnd(actor, TimerType.FREEZE) >= currentTick)
{
- renderTextLocation(g, " | " + text, config.textSize(), config.fontStyle().getFont(), Color.CYAN, FixedPoint);
+ OverlayUtil.renderTextLocation(g, " | " + text, config.textSize(), config.fontStyle().getFont(), Color.CYAN, FixedPoint, false, 0);
}
if (timers.getTimerEnd(actor, TimerType.VENG) >= currentTick)
{
- renderTextLocation(g, " | " + text, config.textSize(), config.fontStyle().getFont(), Color.CYAN, FixedPoint);
+ OverlayUtil.renderTextLocation(g, " | " + text, config.textSize(), config.fontStyle().getFont(), Color.CYAN, FixedPoint, false, 0);
}
}
else
@@ -202,22 +204,26 @@ public class FreezeTimersOverlay extends Overlay
String text = processTickCounter(finishedAt);
Point poi = actor.getCanvasTextLocation(g, text, 0);
- int xpoi = poi.getX() - 20;
- int ypoi = poi.getY();
- Point FixedPoint = new Point(xpoi, ypoi);
+
+ if (poi == null)
+ {
+ return false;
+ }
+
+ Point FixedPoint = new Point(poi.getX() - 20, poi.getY());
if (config.noImage())
{
if (timers.getTimerEnd(actor, TimerType.FREEZE) <= currentTick)
{
- renderTextLocation(g, text, config.textSize(), config.fontStyle().getFont(), Color.RED, poi);
+ OverlayUtil.renderTextLocation(g, text, config.textSize(), config.fontStyle().getFont(), Color.RED, poi, false, 0);
}
if (timers.getTimerEnd(actor, TimerType.FREEZE) >= currentTick)
{
- renderTextLocation(g, text + " | ", config.textSize(), config.fontStyle().getFont(), Color.RED, FixedPoint);
+ OverlayUtil.renderTextLocation(g, text + " | ", config.textSize(), config.fontStyle().getFont(), Color.RED, FixedPoint, false, 0);
}
if (timers.getTimerEnd(actor, TimerType.TELEBLOCK) >= currentTick)
{
- renderTextLocation(g, text + " | ", config.textSize(), config.fontStyle().getFont(), Color.RED, FixedPoint);
+ OverlayUtil.renderTextLocation(g, text + " | ", config.textSize(), config.fontStyle().getFont(), Color.RED, FixedPoint, false, 0);
}
}
else
@@ -229,10 +235,13 @@ public class FreezeTimersOverlay extends Overlay
g.setColor(RED);
Polygon poly = actor.getCanvasTilePoly();
- if (poly != null)
+
+ if (poly == null)
{
- OverlayUtil.renderPolygon(g, poly, RED);
+ return false;
}
+
+ OverlayUtil.renderPolygon(g, poly, RED);
OverlayUtil.renderTextLocation(g, new Point((int) poly.getBounds2D().getCenterX(),
(int) poly.getBounds2D().getCenterY()), actor.getName(), RED);
}
@@ -249,22 +258,6 @@ public class FreezeTimersOverlay extends Overlay
xOffset);
}
- private void renderTextLocation(Graphics2D graphics, String txtString, int fontSize, int fontStyle, Color fontColor, Point canvasPoint)
- {
- graphics.setFont(new Font("Arial", fontStyle, fontSize));
- if (canvasPoint != null)
- {
- final Point canvasCenterPoint = new Point(
- canvasPoint.getX(),
- canvasPoint.getY());
- final Point canvasCenterPoint_shadow = new Point(
- canvasPoint.getX() + 1,
- canvasPoint.getY() + 1);
- OverlayUtil.renderTextLocation(graphics, canvasCenterPoint_shadow, txtString, Color.BLACK);
- OverlayUtil.renderTextLocation(graphics, canvasCenterPoint, txtString, fontColor);
- }
- }
-
public void renderImageLocation(Graphics2D graphics, Point imgLoc, BufferedImage image)
{
int x = imgLoc.getX();
@@ -273,12 +266,9 @@ public class FreezeTimersOverlay extends Overlay
graphics.drawImage(image, x, y, null);
}
- public void renderActorTextAndImage(Graphics2D graphics, Actor actor, String text, Color color,
- BufferedImage image, int yOffset, int xOffset)
+ private void renderActorTextAndImage(Graphics2D graphics, Actor actor, String text, Color color, BufferedImage image, int yOffset, int xOffset)
{
- Point textLocation = new Point(actor.getCanvasImageLocation(image, 0).getX() + xOffset,
- actor.getCanvasImageLocation(image, 0).getY() + yOffset);
-
+ Point textLocation = new Point(actor.getCanvasImageLocation(image, 0).getX() + xOffset, actor.getCanvasImageLocation(image, 0).getY() + yOffset);
renderImageLocation(graphics, textLocation, image);
xOffset = image.getWidth() + 1;
yOffset = (image.getHeight() - (int) graphics.getFontMetrics().getStringBounds(text, graphics).getHeight());
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/freezetimers/FreezeTimersPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/freezetimers/FreezeTimersPlugin.java
index 8ac9d913d7..e66279aa4d 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/freezetimers/FreezeTimersPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/freezetimers/FreezeTimersPlugin.java
@@ -121,7 +121,7 @@ public class FreezeTimersPlugin extends Plugin
{
if (prayerTracker.getSpotanimLastTick(actor) != actor.getSpotAnimation())
{
- SpotAnimationChanged callback = SpotAnimationChanged.INSTANCE;
+ SpotAnimationChanged callback = new SpotAnimationChanged();
callback.setActor(actor);
client.getCallbacks().post(callback);
}
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/implings/ImplingsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/implings/ImplingsPlugin.java
index f0709535f4..5ec61041da 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/implings/ImplingsPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/implings/ImplingsPlugin.java
@@ -30,14 +30,13 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.HashMap;
import javax.inject.Inject;
import lombok.AccessLevel;
import lombok.Getter;
import net.runelite.api.GameState;
import net.runelite.api.NPC;
-import net.runelite.api.events.GameTick;
import net.runelite.api.events.GameStateChanged;
+import net.runelite.api.events.GameTick;
import net.runelite.api.events.NpcDespawned;
import net.runelite.api.events.NpcSpawned;
import net.runelite.client.config.ConfigManager;
@@ -119,6 +118,11 @@ public class ImplingsPlugin extends Plugin
{
Impling impling = Impling.findImpling(npc.getId());
+ if (impling == null || impling.getImplingType() == null)
+ {
+ continue;
+ }
+
ImplingType type = impling.getImplingType();
if (implingCounterMap.containsKey(type))
{
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/BatSolver/BatSolver.java b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/BatSolver/BatSolver.java
index a2b9f1bb01..e937633dc8 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/BatSolver/BatSolver.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/BatSolver/BatSolver.java
@@ -106,7 +106,7 @@ public class BatSolver
}
- public void calculateChanceOfPoison()
+ private void calculateChanceOfPoison()
{
if (getType() == null)
{
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/BatSolver/SolutionSet.java b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/BatSolver/SolutionSet.java
index 11bda048e5..82c36163e4 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/BatSolver/SolutionSet.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/BatSolver/SolutionSet.java
@@ -35,9 +35,9 @@ import lombok.Getter;
// e.g. if there is an empty chest in L room chest 1, the other empty chests could be 16, 17, 38, 54, 55
// See https://dikkenoob.github.io/ for more information
-public class SolutionSet
+class SolutionSet
{
- public static final SolutionSet[] SOLUTION_SETS =
+ static final SolutionSet[] SOLUTION_SETS =
{
new SolutionSet(ThievingRoomType.LEFT_TURN, 1, 16, 17, 55),
new SolutionSet(ThievingRoomType.LEFT_TURN, 1, 17, 38, 54),
@@ -147,12 +147,12 @@ public class SolutionSet
this.emptyChests = new HashSet<>(Arrays.asList(emptyChests));
}
- public void addEmptyChest(int chestId)
+ void addEmptyChest(int chestId)
{
emptyChests.add(chestId);
}
- public boolean containsChest(int chestId)
+ boolean containsChest(int chestId)
{
return emptyChests.contains(chestId);
}
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/InstancePoint.java b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/InstancePoint.java
index 490c5d40b1..b1ba3e0102 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/InstancePoint.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/InstancePoint.java
@@ -15,7 +15,7 @@ public class InstancePoint
private static final int CHUNK_SIZE = 8;
private static final double CHUNK_OFFSET = 3.5;
- public InstancePoint(int x, int y, int rot)
+ private InstancePoint(int x, int y, int rot)
{
this.x = x;
this.y = y;
@@ -29,7 +29,7 @@ public class InstancePoint
this.rot = 0;
}
- public static InstancePoint buildFromPoint(WorldPoint worldPoint, Client client)
+ static InstancePoint buildFromPoint(WorldPoint worldPoint, Client client)
{
Point point = new Point(worldPoint.getX(), worldPoint.getY());
Point base = new Point(client.getBaseX(), client.getBaseY());
@@ -48,7 +48,7 @@ public class InstancePoint
return buildFromTile(base, point, rotation, new Point(x, y));
}
- public static InstancePoint buildFromTile(Point base, Point tile, int rot, Point chunkOrigin)
+ private static InstancePoint buildFromTile(Point base, Point tile, int rot, Point chunkOrigin)
{
int deltaX = tile.getX() - base.getX();
int deltaY = tile.getY() - base.getY();
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/RaidsThievingConstants.java b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/RaidsThievingConstants.java
index 965934a01b..8ab527ebe8 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/RaidsThievingConstants.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/RaidsThievingConstants.java
@@ -26,10 +26,10 @@ package net.runelite.client.plugins.raidsthieving;
public class RaidsThievingConstants
{
- public static final int CLOSED_CHEST_ID = 29742;
- public static final int OPEN_EMPTY_CHEST = 29743;
- public static final int OPEN_FULL_CHEST_1 = 29744;
- public static final int OPEN_FULL_CHEST_2 = 29745;
- public static final int EMPTY_TROUGH = 29746;
+ static final int CLOSED_CHEST_ID = 29742;
+ static final int OPEN_EMPTY_CHEST = 29743;
+ static final int OPEN_FULL_CHEST_1 = 29744;
+ static final int OPEN_FULL_CHEST_2 = 29745;
+ static final int EMPTY_TROUGH = 29746;
public static final int[] STORAGE = {29769, 29770, 29771, 29772};
}
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/RaidsThievingPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/RaidsThievingPlugin.java
index 1569ab79fe..a7679b985a 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/RaidsThievingPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/raidsthieving/RaidsThievingPlugin.java
@@ -201,6 +201,12 @@ public class RaidsThievingPlugin extends Plugin
{
log.debug("Found poison splat");
WorldPoint loc = WorldPoint.fromLocal(client, obj.getLocation());
+
+ if (chests.get(loc) == null)
+ {
+ return;
+ }
+
chests.get(loc).setPoison(true);
}
}
@@ -235,7 +241,7 @@ public class RaidsThievingPlugin extends Plugin
mapper = null;
}
- public int numberOfEmptyChestsFound()
+ int numberOfEmptyChestsFound()
{
int total = 0;
for (ThievingChest chest : chests.values())
@@ -248,7 +254,6 @@ public class RaidsThievingPlugin extends Plugin
return total;
}
-
private boolean checkForBats()
{
for (ThievingChest chest : chests.values())
@@ -266,7 +271,7 @@ public class RaidsThievingPlugin extends Plugin
return false;
}
- public int getChestId(WorldPoint worldPoint)
+ int getChestId(WorldPoint worldPoint)
{
return chests.get(worldPoint).getChestId();
}
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/KnapsackSolver.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/KnapsackSolver.java
index b97e2aa21f..dc2afab56c 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/KnapsackSolver.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/KnapsackSolver.java
@@ -27,7 +27,7 @@ package net.runelite.client.plugins.slayer;
import java.util.ArrayList;
import java.util.List;
-public class KnapsackSolver
+class KnapsackSolver
{
private List reconstructItemsInSack(int[][] sackMatrix, List items, int i, int w)
@@ -49,7 +49,7 @@ public class KnapsackSolver
}
}
- public int howMuchFitsInSack(List items, int maxWeight)
+ int howMuchFitsInSack(List items, int maxWeight)
{
int itemCount = items.size();
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/NPCPresence.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/NPCPresence.java
index 0924660d6c..cc28df5393 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/NPCPresence.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/NPCPresence.java
@@ -29,17 +29,17 @@ public class NPCPresence
return name + "[" + combatLevel + "]";
}
- public boolean shouldExist()
+ boolean shouldExist()
{
return fadeTimer > 0;
}
- public void tickExistence()
+ void tickExistence()
{
fadeTimer--;
}
- public static NPCPresence buildPresence(NPC npc)
+ static NPCPresence buildPresence(NPC npc)
{
return new NPCPresence(npc.getName(), npc.getCombatLevel());
}
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java
index e15e641d33..79dca36797 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java
@@ -390,7 +390,7 @@ public class SlayerPlugin extends Plugin
}
}
- int estimateKillCount(List potentialKills, int gains)
+ private int estimateKillCount(List potentialKills, int gains)
{
// failsafe to avoid calculating kill count if there were no slayer monsters around that could be killed on task
// this failsafe *WILL FAIL* if someone decides to lamp their slayer in the middle of a task next to on task creatures
@@ -751,7 +751,7 @@ public class SlayerPlugin extends Plugin
}
@VisibleForTesting
- void killedOne()
+ private void killedOne()
{
if (currentTask.getAmount() == 0)
{
@@ -788,7 +788,7 @@ public class SlayerPlugin extends Plugin
}
// checks if any contiguous subsequence of seq0 exactly matches the String toMatch
- boolean contiguousSubsequenceMatches(String[] seq0, String toMatch)
+ private boolean contiguousSubsequenceMatches(String[] seq0, String toMatch)
{
for (int i = 0; i < seq0.length; i++)
{
@@ -962,7 +962,7 @@ public class SlayerPlugin extends Plugin
rebuildTargetList();
}
- public AsyncBufferedImage getImageForTask(Task task)
+ AsyncBufferedImage getImageForTask(Task task)
{
int itemSpriteId = ItemID.ENCHANTED_GEM;
if (task != null)
@@ -1048,6 +1048,11 @@ public class SlayerPlugin extends Plugin
return;
}
+ if (task == null)
+ {
+ return;
+ }
+
if (TASK_STRING_VALIDATION.matcher(task.getTask()).find() || task.getTask().length() > TASK_STRING_MAX_LENGTH ||
TASK_STRING_VALIDATION.matcher(task.getLocation()).find() || task.getLocation().length() > TASK_STRING_MAX_LENGTH)
{
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerTaskPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerTaskPanel.java
index ea3fbf0712..0cd238a6d3 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerTaskPanel.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerTaskPanel.java
@@ -343,7 +343,7 @@ public class SlayerTaskPanel extends PluginPanel
changePauseState(paused);
}
- static String htmlLabel(String key, long timeMillis)
+ private static String htmlLabel(String key, long timeMillis)
{
if (timeMillis == Long.MAX_VALUE)
{
@@ -363,7 +363,7 @@ public class SlayerTaskPanel extends PluginPanel
}
}
- static String htmlLabel(String key, int value)
+ private static String htmlLabel(String key, int value)
{
String valueStr = StackFormatter.quantityToRSDecimalStack(value);
return String.format(HTML_LABEL_TEMPLATE, ColorUtil.toHexColor(ColorScheme.LIGHT_GRAY_COLOR),
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerXpDropLookup.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerXpDropLookup.java
index a3e3898390..458c9421c2 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerXpDropLookup.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerXpDropLookup.java
@@ -31,14 +31,14 @@ import java.io.InputStreamReader;
import java.util.List;
import java.util.Map;
-public class SlayerXpDropLookup
+class SlayerXpDropLookup
{
private Map> xpMap;
// floating point math equality
private static final double EPSILON = 1e-6;
- void loadXpJson()
+ private void loadXpJson()
{
final InputStream xpFile = getClass().getResourceAsStream("/slayer_xp.json");
Gson gson = new Gson();
@@ -76,7 +76,7 @@ public class SlayerXpDropLookup
* @param npc the npc we are estimating slayer xp for
* @return our best guess for the slayer xp for this npc
*/
- public double findXpForNpc(NPCPresence npc)
+ double findXpForNpc(NPCPresence npc)
{
List xpCombatLevel = xpMap.get(npc.getName());
if (xpCombatLevel == null)
@@ -127,7 +127,7 @@ public class SlayerXpDropLookup
return -1;
}
- public SlayerXpDropLookup()
+ SlayerXpDropLookup()
{
loadXpJson();
}
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/theatre/rooms/nylocas/NyloOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/theatre/rooms/nylocas/NyloOverlay.java
index 54e568cb7e..0f3e4dd26d 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/theatre/rooms/nylocas/NyloOverlay.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/theatre/rooms/nylocas/NyloOverlay.java
@@ -39,6 +39,7 @@ import net.runelite.client.ui.overlay.OverlayMenuEntry;
import net.runelite.client.ui.overlay.OverlayPosition;
import net.runelite.client.ui.overlay.OverlayPriority;
import net.runelite.client.ui.overlay.components.PanelComponent;
+import net.runelite.client.ui.overlay.components.table.TableAlignment;
import net.runelite.client.ui.overlay.components.table.TableComponent;
import net.runelite.client.util.ColorUtil;
@@ -102,6 +103,7 @@ class NyloOverlay extends Overlay
panelComponent.getChildren().clear();
TableComponent tableComponent = new TableComponent();
+ tableComponent.setColumnAlignments(TableAlignment.LEFT, TableAlignment.RIGHT);
int nyloCount = (hagios + toxobolos + ischyros);
if (nylohandler.getWave() < 21)
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/theatre/rooms/xarpus/XarpusCounter.java b/runelite-client/src/main/java/net/runelite/client/plugins/theatre/rooms/xarpus/XarpusCounter.java
index 840902c186..3b39af4640 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/theatre/rooms/xarpus/XarpusCounter.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/theatre/rooms/xarpus/XarpusCounter.java
@@ -13,6 +13,7 @@ import net.runelite.client.ui.overlay.OverlayMenuEntry;
import net.runelite.client.ui.overlay.OverlayPosition;
import net.runelite.client.ui.overlay.components.PanelComponent;
import net.runelite.client.ui.overlay.components.TitleComponent;
+import net.runelite.client.ui.overlay.components.table.TableAlignment;
import net.runelite.client.ui.overlay.components.table.TableComponent;
public class XarpusCounter extends Overlay
@@ -60,6 +61,7 @@ public class XarpusCounter extends Overlay
));
TableComponent tableComponent = new TableComponent();
+ tableComponent.setColumnAlignments(TableAlignment.LEFT, TableAlignment.RIGHT);
tableComponent.addRow("Exhumes", String.valueOf(xarpusHandler.getExhumesCount()));
panelComponent.getChildren().add(tableComponent);
diff --git a/runelite-client/src/main/java/net/runelite/client/util/GameEventManager.java b/runelite-client/src/main/java/net/runelite/client/util/GameEventManager.java
index 94359890e8..edaedc856f 100644
--- a/runelite-client/src/main/java/net/runelite/client/util/GameEventManager.java
+++ b/runelite-client/src/main/java/net/runelite/client/util/GameEventManager.java
@@ -118,9 +118,7 @@ public class GameEventManager
if (itemContainer != null)
{
- ItemContainerChanged event = ItemContainerChanged.INSTANCE;
- event.setItemContainer(itemContainer);
- eventBus.post(event);
+ eventBus.post(new ItemContainerChanged(itemContainer));
}
}
@@ -128,8 +126,7 @@ public class GameEventManager
{
if (npc != null)
{
- final NpcSpawned npcSpawned = NpcSpawned.INSTANCE;
- npcSpawned.setNpc(npc);
+ final NpcSpawned npcSpawned = new NpcSpawned(npc);
eventBus.post(npcSpawned);
}
}
@@ -138,8 +135,7 @@ public class GameEventManager
{
if (player != null)
{
- final PlayerSpawned playerSpawned = PlayerSpawned.INSTANCE;
- playerSpawned.setPlayer(player);
+ final PlayerSpawned playerSpawned = new PlayerSpawned(player);
eventBus.post(playerSpawned);
}
}
@@ -148,7 +144,7 @@ public class GameEventManager
{
Optional.ofNullable(tile.getWallObject()).ifPresent(object ->
{
- final WallObjectSpawned objectSpawned = WallObjectSpawned.INSTANCE;
+ final WallObjectSpawned objectSpawned = new WallObjectSpawned();
objectSpawned.setTile(tile);
objectSpawned.setWallObject(object);
eventBus.post(objectSpawned);
@@ -156,7 +152,7 @@ public class GameEventManager
Optional.ofNullable(tile.getDecorativeObject()).ifPresent(object ->
{
- final DecorativeObjectSpawned objectSpawned = DecorativeObjectSpawned.INSTANCE;
+ final DecorativeObjectSpawned objectSpawned = new DecorativeObjectSpawned();
objectSpawned.setTile(tile);
objectSpawned.setDecorativeObject(object);
eventBus.post(objectSpawned);
@@ -164,7 +160,7 @@ public class GameEventManager
Optional.ofNullable(tile.getGroundObject()).ifPresent(object ->
{
- final GroundObjectSpawned objectSpawned = GroundObjectSpawned.INSTANCE;
+ final GroundObjectSpawned objectSpawned = new GroundObjectSpawned();
objectSpawned.setTile(tile);
objectSpawned.setGroundObject(object);
eventBus.post(objectSpawned);
@@ -174,7 +170,7 @@ public class GameEventManager
.filter(Objects::nonNull)
.forEach(object ->
{
- final GameObjectSpawned objectSpawned = GameObjectSpawned.INSTANCE;
+ final GameObjectSpawned objectSpawned = new GameObjectSpawned();
objectSpawned.setTile(tile);
objectSpawned.setGameObject(object);
eventBus.post(objectSpawned);
@@ -190,9 +186,7 @@ public class GameEventManager
current = current.getNext();
- final ItemSpawned itemSpawned = ItemSpawned.INSTANCE;
- itemSpawned.setItem(item);
- itemSpawned.setTile(tile);
+ final ItemSpawned itemSpawned = new ItemSpawned(tile, item);
eventBus.post(itemSpawned);
}
});
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/attackstyles/AttackStylesPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/attackstyles/AttackStylesPluginTest.java
index 6a94e305e1..2060d0d536 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/attackstyles/AttackStylesPluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/attackstyles/AttackStylesPluginTest.java
@@ -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(VarbitChanged.INSTANCE);
+ attackPlugin.onVarbitChanged(new VarbitChanged());
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(VarbitChanged.INSTANCE);
+ attackPlugin.onVarbitChanged(new VarbitChanged());
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(VarbitChanged.INSTANCE);
+ attackPlugin.onVarbitChanged(new VarbitChanged());
// Verify there is a warned skill
Set warnedSkills = attackPlugin.getWarnedSkills();
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/cerberus/CerberusPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/cerberus/CerberusPluginTest.java
index daac7907de..4f35f7b174 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/cerberus/CerberusPluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/cerberus/CerberusPluginTest.java
@@ -71,7 +71,7 @@ public class CerberusPluginTest
mockNpc(new LocalPoint(2, 5)),
mockNpc(new LocalPoint(1, 5))
));
- cerberusPlugin.onGameTick(GameTick.INSTANCE);
+ cerberusPlugin.onGameTick(new GameTick());
// Expected sort is by lowest y first, then by lowest x
assertEquals(ghosts.get(0).getLocalLocation(), new LocalPoint(0, 0));
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/chatnotifications/ChatNotificationsPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/chatnotifications/ChatNotificationsPluginTest.java
index 58cf5ac99e..c30c8a4e9e 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/chatnotifications/ChatNotificationsPluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/chatnotifications/ChatNotificationsPluginTest.java
@@ -83,7 +83,7 @@ public class ChatNotificationsPluginTest
MessageNode messageNode = mock(MessageNode.class);
when(messageNode.getValue()).thenReturn("Deathbeam, Deathbeam OSRS");
- ChatMessage chatMessage = ChatMessage.INSTANCE;
+ ChatMessage chatMessage = new ChatMessage();
chatMessage.setType(ChatMessageType.PUBLICCHAT);
chatMessage.setMessageNode(messageNode);
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/cooking/CookingPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/cooking/CookingPluginTest.java
index f05a53c8f9..6b8334e99d 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/cooking/CookingPluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/cooking/CookingPluginTest.java
@@ -118,7 +118,7 @@ public class CookingPluginTest
when(config.fermentTimer()).thenReturn(true);
when(client.getLocalPlayer()).thenReturn(player);
- SpotAnimationChanged graphicChanged = SpotAnimationChanged.INSTANCE;
+ SpotAnimationChanged graphicChanged = new SpotAnimationChanged();
graphicChanged.setActor(player);
cookingPlugin.onSpotAnimationChanged(graphicChanged);
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/emojis/EmojiPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/emojis/EmojiPluginTest.java
index ebf58ca625..3427246946 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/emojis/EmojiPluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/emojis/EmojiPluginTest.java
@@ -73,7 +73,7 @@ public class EmojiPluginTest
when(client.createIndexedSprite()).thenReturn(mock(IndexedSprite.class));
// Trip emoji loading
- GameStateChanged gameStateChanged = GameStateChanged.INSTANCE;
+ GameStateChanged gameStateChanged = new GameStateChanged();
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(":) :) :)");
- ChatMessage chatMessage = ChatMessage.INSTANCE;
+ ChatMessage chatMessage = new ChatMessage();
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 = GameStateChanged.INSTANCE;
+ GameStateChanged gameStateChanged = new GameStateChanged();
gameStateChanged.setGameState(GameState.LOGGED_IN);
emojiPlugin.onGameStateChanged(gameStateChanged);
MessageNode messageNode = mock(MessageNode.class);
when(messageNode.getValue()).thenReturn(":D");
- ChatMessage chatMessage = ChatMessage.INSTANCE;
+ ChatMessage chatMessage = new ChatMessage();
chatMessage.setType(ChatMessageType.PUBLICCHAT);
chatMessage.setMessageNode(messageNode);
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/idlenotifier/IdleNotifierPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/idlenotifier/IdleNotifierPluginTest.java
index b8373c81b3..51dc7842e0 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/idlenotifier/IdleNotifierPluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/idlenotifier/IdleNotifierPluginTest.java
@@ -132,13 +132,13 @@ public class IdleNotifierPluginTest
public void checkAnimationIdle()
{
when(player.getAnimation()).thenReturn(AnimationID.WOODCUTTING_BRONZE);
- AnimationChanged animationChanged = AnimationChanged.INSTANCE;
+ AnimationChanged animationChanged = new AnimationChanged();
animationChanged.setActor(player);
plugin.onAnimationChanged(animationChanged);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
when(player.getAnimation()).thenReturn(AnimationID.IDLE);
plugin.onAnimationChanged(animationChanged);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
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 = AnimationChanged.INSTANCE;
+ AnimationChanged animationChanged = new AnimationChanged();
animationChanged.setActor(player);
plugin.onAnimationChanged(animationChanged);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
when(player.getAnimation()).thenReturn(AnimationID.LOOKING_INTO);
plugin.onAnimationChanged(animationChanged);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
when(player.getAnimation()).thenReturn(AnimationID.IDLE);
plugin.onAnimationChanged(animationChanged);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
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 = AnimationChanged.INSTANCE;
+ AnimationChanged animationChanged = new AnimationChanged();
animationChanged.setActor(player);
plugin.onAnimationChanged(animationChanged);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
// Logout
when(client.getGameState()).thenReturn(GameState.LOGIN_SCREEN);
- GameStateChanged gameStateChanged = GameStateChanged.INSTANCE;
+ GameStateChanged gameStateChanged = new GameStateChanged();
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(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
verify(notifier, times(0)).notify(any());
}
@@ -190,16 +190,11 @@ public class IdleNotifierPluginTest
public void checkCombatIdle()
{
when(player.getInteracting()).thenReturn(monster);
- InteractingChanged event = InteractingChanged.INSTANCE;
- event.setSource(player);
- event.setTarget(monster);
- plugin.onInteractingChanged(event);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onInteractingChanged(new InteractingChanged(player, monster));
+ plugin.onGameTick(new GameTick());
when(player.getInteracting()).thenReturn(null);
- event.setSource(player);
- event.setTarget(null);
- plugin.onInteractingChanged(event);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onInteractingChanged(new InteractingChanged(player, null));
+ plugin.onGameTick(new GameTick());
verify(notifier).notify("[" + PLAYER_NAME + "] is now out of combat!");
}
@@ -207,37 +202,27 @@ public class IdleNotifierPluginTest
public void checkCombatReset()
{
when(player.getInteracting()).thenReturn(monster);
- InteractingChanged event = InteractingChanged.INSTANCE;
- event.setSource(player);
- event.setTarget(monster);
- plugin.onInteractingChanged(event);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onInteractingChanged(new InteractingChanged(player, monster));
+ plugin.onGameTick(new GameTick());
when(player.getInteracting()).thenReturn(randomEvent);
- event.setSource(player);
- event.setTarget(randomEvent);
- plugin.onInteractingChanged(event);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onInteractingChanged(new InteractingChanged(player, randomEvent));
+ plugin.onGameTick(new GameTick());
when(player.getInteracting()).thenReturn(null);
- event.setSource(player);
- event.setTarget(null);
- plugin.onInteractingChanged(event);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onInteractingChanged(new InteractingChanged(player, null));
+ plugin.onGameTick(new GameTick());
verify(notifier, times(0)).notify(any());
}
@Test
public void checkCombatLogout()
{
- InteractingChanged event = InteractingChanged.INSTANCE;
- event.setSource(player);
- event.setTarget(monster);
- plugin.onInteractingChanged(event);
+ plugin.onInteractingChanged(new InteractingChanged(player, monster));
when(player.getInteracting()).thenReturn(monster);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
// Logout
when(client.getGameState()).thenReturn(GameState.LOGIN_SCREEN);
- GameStateChanged gameStateChanged = GameStateChanged.INSTANCE;
+ GameStateChanged gameStateChanged = new GameStateChanged();
gameStateChanged.setGameState(GameState.LOGIN_SCREEN);
plugin.onGameStateChanged(gameStateChanged);
@@ -248,10 +233,8 @@ public class IdleNotifierPluginTest
// Tick
when(player.getInteracting()).thenReturn(null);
- event.setSource(player);
- event.setTarget(null);
- plugin.onInteractingChanged(event);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onInteractingChanged(new InteractingChanged(player, null));
+ plugin.onGameTick(new GameTick());
verify(notifier, times(0)).notify(any());
}
@@ -262,11 +245,11 @@ public class IdleNotifierPluginTest
when(client.getMouseIdleTicks()).thenReturn(80_000);
// But player is being damaged (is in combat)
- final HitsplatApplied hitsplatApplied = HitsplatApplied.INSTANCE;
+ final HitsplatApplied hitsplatApplied = new HitsplatApplied();
hitsplatApplied.setActor(player);
hitsplatApplied.setHitsplat(new Hitsplat(Hitsplat.HitsplatType.DAMAGE, 0, 0));
plugin.onHitsplatApplied(hitsplatApplied);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
verify(notifier, times(0)).notify(any());
}
@@ -279,8 +262,8 @@ public class IdleNotifierPluginTest
when(client.getKeyboardIdleTicks()).thenReturn(80_000);
when(client.getMouseIdleTicks()).thenReturn(14_500);
- plugin.onGameTick(GameTick.INSTANCE);
- plugin.onGameTick(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
+ plugin.onGameTick(new GameTick());
verify(notifier, times(1)).notify(any());
}
@@ -290,11 +273,11 @@ public class IdleNotifierPluginTest
when(config.getSpecEnergyThreshold()).thenReturn(50);
when(client.getVar(Matchers.eq(VarPlayer.SPECIAL_ATTACK_PERCENT))).thenReturn(400); // 40%
- plugin.onGameTick(GameTick.INSTANCE); // once to set lastSpecEnergy to 400
+ plugin.onGameTick(new GameTick()); // 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(GameTick.INSTANCE);
+ plugin.onGameTick(new GameTick());
verify(notifier).notify(Matchers.eq("[" + PLAYER_NAME + "] has restored spec energy!"));
}
}
\ No newline at end of file
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/motherlode/MotherlodePluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/motherlode/MotherlodePluginTest.java
index 3e00ae7b6d..7f4c3bcbb0 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/motherlode/MotherlodePluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/motherlode/MotherlodePluginTest.java
@@ -115,13 +115,13 @@ public class MotherlodePluginTest
public void testOreCounter()
{
// set inMlm
- GameStateChanged gameStateChanged = GameStateChanged.INSTANCE;
+ GameStateChanged gameStateChanged = new GameStateChanged();
gameStateChanged.setGameState(GameState.LOGGED_IN);
motherlodePlugin.onGameStateChanged(gameStateChanged);
// Initial sack count
when(client.getVar(Varbits.SACK_NUMBER)).thenReturn(42);
- motherlodePlugin.onVarbitChanged(VarbitChanged.INSTANCE);
+ motherlodePlugin.onVarbitChanged(new VarbitChanged());
// 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(VarbitChanged.INSTANCE);
+ motherlodePlugin.onVarbitChanged(new VarbitChanged());
inventory = mock(ItemContainer.class);
// +1 rune, +4 nugget, +2 coal, +1 addy
@@ -162,9 +162,7 @@ public class MotherlodePluginTest
when(client.getItemContainer(InventoryID.INVENTORY)).thenReturn(inventory);
// Trigger comparison
- ItemContainerChanged event = ItemContainerChanged.INSTANCE;
- event.setItemContainer(inventory);
- motherlodePlugin.onItemContainerChanged(event);
+ motherlodePlugin.onItemContainerChanged(new ItemContainerChanged(inventory));
verify(motherlodeSession).updateOreFound(ItemID.RUNITE_ORE, 1);
verify(motherlodeSession).updateOreFound(ItemID.GOLDEN_NUGGET, 4);
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/screenshot/ScreenshotPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/screenshot/ScreenshotPluginTest.java
index 9efc27c57e..9aff61c346 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/screenshot/ScreenshotPluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/screenshot/ScreenshotPluginTest.java
@@ -175,11 +175,11 @@ public class ScreenshotPluginTest
assertEquals("Hitpoints(99)", screenshotPlugin.parseLevelUpWidget(LEVEL_UP_LEVEL));
- WidgetLoaded event = WidgetLoaded.INSTANCE;
+ WidgetLoaded event = new WidgetLoaded();
event.setGroupId(LEVEL_UP_GROUP_ID);
screenshotPlugin.onWidgetLoaded(event);
- GameTick tick = GameTick.INSTANCE;
+ GameTick tick = new GameTick();
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 = WidgetLoaded.INSTANCE;
+ WidgetLoaded event = new WidgetLoaded();
event.setGroupId(LEVEL_UP_GROUP_ID);
screenshotPlugin.onWidgetLoaded(event);
- GameTick tick = GameTick.INSTANCE;
+ GameTick tick = new GameTick();
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 = WidgetLoaded.INSTANCE;
+ WidgetLoaded event = new WidgetLoaded();
event.setGroupId(LEVEL_UP_GROUP_ID);
screenshotPlugin.onWidgetLoaded(event);
- GameTick tick = GameTick.INSTANCE;
+ GameTick tick = new GameTick();
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 = WidgetLoaded.INSTANCE;
+ WidgetLoaded event = new WidgetLoaded();
event.setGroupId(DIALOG_SPRITE_GROUP_ID);
screenshotPlugin.onWidgetLoaded(event);
- GameTick tick = GameTick.INSTANCE;
+ GameTick tick = new GameTick();
screenshotPlugin.onGameTick(tick);
verify(drawManager).requestNextFrameListener(Matchers.any(Consumer.class));
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/slayer/SlayerPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/slayer/SlayerPluginTest.java
index c339b1de6e..099a76d19b 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/slayer/SlayerPluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/slayer/SlayerPluginTest.java
@@ -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(GameTick.INSTANCE);
+ slayerPlugin.onGameTick(new GameTick());
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(GameTick.INSTANCE);
+ slayerPlugin.onGameTick(new GameTick());
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(GameTick.INSTANCE);
+ slayerPlugin.onGameTick(new GameTick());
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(GameTick.INSTANCE);
+ slayerPlugin.onGameTick(new GameTick());
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(GameTick.INSTANCE);
+ slayerPlugin.onGameTick(new GameTick());
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(GameTick.INSTANCE);
+ slayerPlugin.onGameTick(new GameTick());
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(GameTick.INSTANCE);
+ slayerPlugin.onGameTick(new GameTick());
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(GameTick.INSTANCE);
+ slayerPlugin.onGameTick(new GameTick());
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(GameTick.INSTANCE);
+ slayerPlugin.onGameTick(new GameTick());
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 = VarbitChanged.INSTANCE;
+ VarbitChanged varbitChanged = new VarbitChanged();
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 = VarbitChanged.INSTANCE;
+ VarbitChanged varbitChanged = new VarbitChanged();
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 = ChatMessage.INSTANCE;
+ ChatMessage setMessage = new ChatMessage();
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 = ChatMessage.INSTANCE;
+ ChatMessage chatMessage = new ChatMessage();
chatMessage.setType(ChatMessageType.PUBLICCHAT);
chatMessage.setName("Adam");
chatMessage.setMessageNode(mock(MessageNode.class));
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSActorMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSActorMixin.java
index 113e6a77cc..f25c98e263 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSActorMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSActorMixin.java
@@ -186,7 +186,7 @@ public abstract class RSActorMixin implements RSActor
@Inject
public void animationChanged(int idx)
{
- AnimationChanged animationChange = AnimationChanged.INSTANCE;
+ AnimationChanged animationChange = new AnimationChanged();
animationChange.setActor(this);
client.getCallbacks().post(animationChange);
}
@@ -195,7 +195,7 @@ public abstract class RSActorMixin implements RSActor
@Inject
public void spotAnimationChanged(int idx)
{
- SpotAnimationChanged spotAnimationChanged = SpotAnimationChanged.INSTANCE;
+ SpotAnimationChanged spotAnimationChanged = new SpotAnimationChanged();
spotAnimationChanged.setActor(this);
client.getCallbacks().post(spotAnimationChanged);
}
@@ -204,9 +204,7 @@ public abstract class RSActorMixin implements RSActor
@Inject
public void interactingChanged(int idx)
{
- InteractingChanged interactingChanged = InteractingChanged.INSTANCE;
- interactingChanged.setSource(this);
- interactingChanged.setTarget(getInteracting());
+ InteractingChanged interactingChanged = new InteractingChanged(this, getInteracting());
client.getCallbacks().post(interactingChanged);
}
@@ -217,10 +215,7 @@ public abstract class RSActorMixin implements RSActor
String overheadText = getOverheadText();
if (overheadText != null)
{
-
- OverheadTextChanged overheadTextChanged = OverheadTextChanged.INSTANCE;
- overheadTextChanged.setActor(this);
- overheadTextChanged.setOverheadText(overheadText);
+ OverheadTextChanged overheadTextChanged = new OverheadTextChanged(this, overheadText);
client.getCallbacks().post(overheadTextChanged);
}
}
@@ -256,7 +251,7 @@ public abstract class RSActorMixin implements RSActor
{
client.getLogger().debug("You died!");
- LocalPlayerDeath event = LocalPlayerDeath.INSTANCE;
+ LocalPlayerDeath event = new LocalPlayerDeath();
client.getCallbacks().post(event);
}
else if (this instanceof RSNPC)
@@ -283,7 +278,7 @@ public abstract class RSActorMixin implements RSActor
public void applyActorHitsplat(int type, int value, int var3, int var4, int gameCycle, int duration)
{
final Hitsplat hitsplat = new Hitsplat(Hitsplat.HitsplatType.fromInteger(type), value, gameCycle + duration);
- final HitsplatApplied event = HitsplatApplied.INSTANCE;
+ final HitsplatApplied event = new HitsplatApplied();
event.setActor(this);
event.setHitsplat(hitsplat);
client.getCallbacks().post(event);
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSClanChatMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSClanChatMixin.java
index c829abf231..beacf0eec4 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClanChatMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClanChatMixin.java
@@ -27,8 +27,7 @@ public abstract class RSClanChatMixin implements RSClanChat
return;
}
- ClanMemberJoined event = ClanMemberJoined.INSTANCE;
- event.setMember(member);
+ ClanMemberJoined event = new ClanMemberJoined(member);
client.getCallbacks().postDeferred(event);
}
@@ -42,8 +41,7 @@ public abstract class RSClanChatMixin implements RSClanChat
return;
}
- ClanMemberLeft event = ClanMemberLeft.INSTANCE;
- event.setMember(member);
+ ClanMemberLeft event = new ClanMemberLeft(member);
client.getCallbacks().postDeferred(event);
}
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java
index 762dd86fa5..069c9a99d4 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSClientMixin.java
@@ -867,7 +867,7 @@ public abstract class RSClientMixin implements RSClient
@Inject
public static void draggingWidgetChanged(int idx)
{
- DraggingWidgetChanged draggingWidgetChanged = DraggingWidgetChanged.INSTANCE;
+ DraggingWidgetChanged draggingWidgetChanged = new DraggingWidgetChanged();
draggingWidgetChanged.setDraggingWidget(client.isDraggingWidget());
client.getCallbacks().post(draggingWidgetChanged);
}
@@ -905,7 +905,7 @@ public abstract class RSClientMixin implements RSClient
if (loaded)
{
- WidgetLoaded event = WidgetLoaded.INSTANCE;
+ WidgetLoaded event = new WidgetLoaded();
event.setGroupId(groupId);
client.getCallbacks().post(event);
}
@@ -937,7 +937,7 @@ public abstract class RSClientMixin implements RSClient
@Inject
public static void experiencedChanged(int idx)
{
- ExperienceChanged experienceChanged = ExperienceChanged.INSTANCE;
+ ExperienceChanged experienceChanged = new ExperienceChanged();
Skill[] possibleSkills = Skill.values();
// We subtract one here because 'Overall' isn't considered a skill that's updated.
@@ -958,7 +958,7 @@ public abstract class RSClientMixin implements RSClient
if (idx >= 0 && idx < skills.length - 1)
{
Skill updatedSkill = skills[idx];
- BoostedLevelChanged boostedLevelChanged = BoostedLevelChanged.INSTANCE;
+ BoostedLevelChanged boostedLevelChanged = new BoostedLevelChanged();
boostedLevelChanged.setSkill(updatedSkill);
client.getCallbacks().post(boostedLevelChanged);
}
@@ -977,7 +977,7 @@ public abstract class RSClientMixin implements RSClient
client.getPlayerMenuTypes()[idx] = playerAction.getId();
}
- PlayerMenuOptionsChanged optionsChanged = PlayerMenuOptionsChanged.INSTANCE;
+ PlayerMenuOptionsChanged optionsChanged = new PlayerMenuOptionsChanged();
optionsChanged.setIndex(idx);
client.getCallbacks().post(optionsChanged);
}
@@ -986,7 +986,7 @@ public abstract class RSClientMixin implements RSClient
@Inject
public static void gameStateChanged(int idx)
{
- GameStateChanged gameStateChange = GameStateChanged.INSTANCE;
+ GameStateChanged gameStateChange = new GameStateChanged();
gameStateChange.setGameState(client.getGameState());
client.getCallbacks().post(gameStateChange);
}
@@ -1007,9 +1007,7 @@ public abstract class RSClientMixin implements RSClient
{
npc.setIndex(idx);
- NpcSpawned npcSpawned = NpcSpawned.INSTANCE;
- npcSpawned.setNpc(npc);
- client.getCallbacks().postDeferred(npcSpawned);
+ client.getCallbacks().postDeferred(new NpcSpawned(npc));
}
}
@@ -1029,15 +1027,11 @@ public abstract class RSClientMixin implements RSClient
if (oldPlayer != null)
{
- PlayerDespawned playerDespawned = PlayerDespawned.INSTANCE;
- playerDespawned.setPlayer(oldPlayer);
- client.getCallbacks().post(playerDespawned);
+ client.getCallbacks().post(new PlayerDespawned(oldPlayer));
}
if (player != null)
{
- PlayerSpawned playerSpawned = PlayerSpawned.INSTANCE;
- playerSpawned.setPlayer(player);
- client.getCallbacks().postDeferred(playerSpawned);
+ client.getCallbacks().postDeferred(new PlayerSpawned(player));
}
}
@@ -1057,7 +1051,7 @@ public abstract class RSClientMixin implements RSClient
return;
}
- GrandExchangeOfferChanged offerChangedEvent = GrandExchangeOfferChanged.INSTANCE;
+ GrandExchangeOfferChanged offerChangedEvent = new GrandExchangeOfferChanged();
offerChangedEvent.setOffer(internalOffer);
offerChangedEvent.setSlot(idx);
client.getCallbacks().post(offerChangedEvent);
@@ -1067,7 +1061,7 @@ public abstract class RSClientMixin implements RSClient
@Inject
public static void settingsChanged(int idx)
{
- VarbitChanged varbitChanged = VarbitChanged.INSTANCE;
+ VarbitChanged varbitChanged = new VarbitChanged();
varbitChanged.setIndex(idx);
client.getCallbacks().post(varbitChanged);
}
@@ -1081,7 +1075,7 @@ public abstract class RSClientMixin implements RSClient
if (oldIsResized != isResized)
{
- ResizeableChanged resizeableChanged = ResizeableChanged.INSTANCE;
+ ResizeableChanged resizeableChanged = new ResizeableChanged();
resizeableChanged.setResized(isResized);
client.getCallbacks().post(resizeableChanged);
@@ -1093,9 +1087,7 @@ public abstract class RSClientMixin implements RSClient
@Inject
public static void clanMemberManagerChanged(int idx)
{
- ClanChanged event = ClanChanged.INSTANCE;
- event.setJoined(client.getClanMemberManager() != null);
- client.getCallbacks().post(event);
+ client.getCallbacks().post(new ClanChanged(client.getClanMemberManager() != null));
}
@FieldHook("canvasWidth")
@@ -1279,7 +1271,7 @@ public abstract class RSClientMixin implements RSClient
@Inject
public static void onUsernameChanged(int idx)
{
- client.getCallbacks().post(UsernameChanged.INSTANCE);
+ client.getCallbacks().post(new UsernameChanged());
}
@Override
@@ -1308,7 +1300,7 @@ public abstract class RSClientMixin implements RSClient
@MethodHook("openMenu")
public void menuOpened(int var1, int var2)
{
- final MenuOpened event = MenuOpened.INSTANCE;
+ final MenuOpened event = new MenuOpened();
event.setMenuEntries(getMenuEntries());
callbacks.post(event);
}
@@ -1521,7 +1513,7 @@ public abstract class RSClientMixin implements RSClient
@FieldHook("cycleCntr")
public static void onCycleCntrChanged(int idx)
{
- client.getCallbacks().post(ClientTick.INSTANCE);
+ client.getCallbacks().post(new ClientTick());
}
@Copy("shouldLeftClickOpenMenu")
@@ -1538,7 +1530,7 @@ public abstract class RSClientMixin implements RSClient
return true;
}
- MenuShouldLeftClick menuShouldLeftClick = MenuShouldLeftClick.INSTANCE;
+ MenuShouldLeftClick menuShouldLeftClick = new MenuShouldLeftClick();
client.getCallbacks().post(menuShouldLeftClick);
if (menuShouldLeftClick.isForceRightClick())
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSFriendSystemMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSFriendSystemMixin.java
index 6a495d7fd6..7497e7c2a5 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSFriendSystemMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSFriendSystemMixin.java
@@ -18,8 +18,7 @@ public abstract class RSFriendSystemMixin implements RSFriendSystem
@Inject
public void rl$removeFriend(String friendName)
{
- RemovedFriend removedFriend = RemovedFriend.INSTANCE;
- removedFriend.setName(friendName);
+ RemovedFriend removedFriend = new RemovedFriend(friendName);
client.getCallbacks().post(removedFriend);
}
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSGraphicsObjectMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSGraphicsObjectMixin.java
index 3fe720a8ab..c7757732ba 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSGraphicsObjectMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSGraphicsObjectMixin.java
@@ -17,8 +17,7 @@ public abstract class RSGraphicsObjectMixin implements RSGraphicsObject
@Inject
RSGraphicsObjectMixin()
{
- final GraphicsObjectCreated event = GraphicsObjectCreated.INSTANCE;
- event.setGraphicsObject(this);
+ final GraphicsObjectCreated event = new GraphicsObjectCreated(this);
client.getCallbacks().post(event);
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSGroundItemMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSGroundItemMixin.java
index 078ca652e7..23d0ce6586 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSGroundItemMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSGroundItemMixin.java
@@ -66,12 +66,7 @@ public abstract class RSGroundItemMixin implements RSGroundItem
{
client.getLogger().debug("Item quantity changed: {} ({} -> {})", getId(), getQuantity(), quantity);
- ItemQuantityChanged itemQuantityChanged = ItemQuantityChanged.INSTANCE;
- itemQuantityChanged.setItem(this);
- itemQuantityChanged.setTile(getTile());
- itemQuantityChanged.setOldQuantity(getQuantity());
- itemQuantityChanged.setNewQuantity(quantity);
-
+ ItemQuantityChanged itemQuantityChanged = new ItemQuantityChanged(this, getTile(), getQuantity(), quantity);
client.getCallbacks().post(itemQuantityChanged);
}
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSHealthBarDefinitionMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSHealthBarDefinitionMixin.java
index f7143c4fd1..f6f31abdf6 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSHealthBarDefinitionMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSHealthBarDefinitionMixin.java
@@ -19,7 +19,7 @@ public abstract class RSHealthBarDefinitionMixin implements RSHealthBarDefinitio
@Inject
public void onRead(RSBuffer buffer)
{
- PostHealthBar postHealthBar = PostHealthBar.INSTANCE;
+ PostHealthBar postHealthBar = new PostHealthBar();
postHealthBar.setHealthBar(this);
client.getCallbacks().post(postHealthBar);
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSItemContainerMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSItemContainerMixin.java
index 21cd6e9c72..74c1bf29a3 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSItemContainerMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSItemContainerMixin.java
@@ -75,8 +75,7 @@ public abstract class RSItemContainerMixin implements RSItemContainer
rl$lastCycle = cycle;
- ItemContainerChanged event = ItemContainerChanged.INSTANCE;
- event.setItemContainer(this);
+ ItemContainerChanged event = new ItemContainerChanged(this);
client.getCallbacks().postDeferred(event);
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSItemDefinitionMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSItemDefinitionMixin.java
index 763dfcb0d6..68105f05bc 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSItemDefinitionMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSItemDefinitionMixin.java
@@ -60,7 +60,7 @@ public abstract class RSItemDefinitionMixin implements RSItemDefinition
@MethodHook(value = "post", end = true)
public void post()
{
- final PostItemDefinition event = PostItemDefinition.INSTANCE;
+ final PostItemDefinition event = new PostItemDefinition();
event.setItemDefinition(this);
client.getCallbacks().post(event);
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSNPCDefinitionMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSNPCDefinitionMixin.java
index 9c1d646c62..07d16f949a 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSNPCDefinitionMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSNPCDefinitionMixin.java
@@ -42,7 +42,7 @@ public abstract class RSNPCDefinitionMixin implements RSNPCDefinition
@Inject
public void actionsHook(int idx)
{
- NpcActionChanged npcActionChanged = NpcActionChanged.INSTANCE;
+ NpcActionChanged npcActionChanged = new NpcActionChanged();
npcActionChanged.setNpcDefinition(this);
npcActionChanged.setIdx(idx);
client.getCallbacks().post(npcActionChanged);
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSNPCMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSNPCMixin.java
index c9d2b0657b..ea0f74f93c 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSNPCMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSNPCMixin.java
@@ -109,9 +109,7 @@ public abstract class RSNPCMixin implements RSNPC
{
if (composition == null)
{
- NpcDespawned event = NpcDespawned.INSTANCE;
- event.setNpc(this);
- client.getCallbacks().post(event);
+ client.getCallbacks().post(new NpcDespawned(this));
}
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSProjectileMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSProjectileMixin.java
index 221a81642f..1c10eeb835 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSProjectileMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSProjectileMixin.java
@@ -46,7 +46,7 @@ public abstract class RSProjectileMixin implements RSProjectile
@Inject
RSProjectileMixin()
{
- final ProjectileSpawned projectileSpawned = ProjectileSpawned.INSTANCE;
+ final ProjectileSpawned projectileSpawned = new ProjectileSpawned();
projectileSpawned.setProjectile(this);
client.getCallbacks().post(projectileSpawned);
}
@@ -105,7 +105,7 @@ public abstract class RSProjectileMixin implements RSProjectile
public void projectileMoved(int targetX, int targetY, int targetZ, int cycle)
{
final LocalPoint position = new LocalPoint(targetX, targetY);
- final ProjectileMoved projectileMoved = ProjectileMoved.INSTANCE;
+ final ProjectileMoved projectileMoved = new ProjectileMoved();
projectileMoved.setProjectile(this);
projectileMoved.setPosition(position);
projectileMoved.setZ(targetZ);
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSTileMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSTileMixin.java
index 34b624cf88..ed17140360 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSTileMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSTileMixin.java
@@ -126,21 +126,21 @@ public abstract class RSTileMixin implements RSTile
if (current == null && previous != null)
{
- WallObjectDespawned wallObjectDespawned = WallObjectDespawned.INSTANCE;
+ WallObjectDespawned wallObjectDespawned = new WallObjectDespawned();
wallObjectDespawned.setTile(this);
wallObjectDespawned.setWallObject(previous);
client.getCallbacks().post(wallObjectDespawned);
}
else if (current != null && previous == null)
{
- WallObjectSpawned wallObjectSpawned = WallObjectSpawned.INSTANCE;
+ WallObjectSpawned wallObjectSpawned = new WallObjectSpawned();
wallObjectSpawned.setTile(this);
wallObjectSpawned.setWallObject(current);
client.getCallbacks().post(wallObjectSpawned);
}
else if (current != null)
{
- WallObjectChanged wallObjectChanged = WallObjectChanged.INSTANCE;
+ WallObjectChanged wallObjectChanged = new WallObjectChanged();
wallObjectChanged.setTile(this);
wallObjectChanged.setPrevious(previous);
wallObjectChanged.setWallObject(current);
@@ -159,21 +159,21 @@ public abstract class RSTileMixin implements RSTile
if (current == null && previous != null)
{
- DecorativeObjectDespawned decorativeObjectDespawned = DecorativeObjectDespawned.INSTANCE;
+ DecorativeObjectDespawned decorativeObjectDespawned = new DecorativeObjectDespawned();
decorativeObjectDespawned.setTile(this);
decorativeObjectDespawned.setDecorativeObject(previous);
client.getCallbacks().post(decorativeObjectDespawned);
}
else if (current != null && previous == null)
{
- DecorativeObjectSpawned decorativeObjectSpawned = DecorativeObjectSpawned.INSTANCE;
+ DecorativeObjectSpawned decorativeObjectSpawned = new DecorativeObjectSpawned();
decorativeObjectSpawned.setTile(this);
decorativeObjectSpawned.setDecorativeObject(current);
client.getCallbacks().post(decorativeObjectSpawned);
}
else if (current != null)
{
- DecorativeObjectChanged decorativeObjectChanged = DecorativeObjectChanged.INSTANCE;
+ DecorativeObjectChanged decorativeObjectChanged = new DecorativeObjectChanged();
decorativeObjectChanged.setTile(this);
decorativeObjectChanged.setPrevious(previous);
decorativeObjectChanged.setDecorativeObject(current);
@@ -192,21 +192,21 @@ public abstract class RSTileMixin implements RSTile
if (current == null && previous != null)
{
- GroundObjectDespawned groundObjectDespawned = GroundObjectDespawned.INSTANCE;
+ GroundObjectDespawned groundObjectDespawned = new GroundObjectDespawned();
groundObjectDespawned.setTile(this);
groundObjectDespawned.setGroundObject(previous);
client.getCallbacks().post(groundObjectDespawned);
}
else if (current != null && previous == null)
{
- GroundObjectSpawned groundObjectSpawned = GroundObjectSpawned.INSTANCE;
+ GroundObjectSpawned groundObjectSpawned = new GroundObjectSpawned();
groundObjectSpawned.setTile(this);
groundObjectSpawned.setGroundObject(current);
client.getCallbacks().post(groundObjectSpawned);
}
else if (current != null)
{
- GroundObjectChanged groundObjectChanged = GroundObjectChanged.INSTANCE;
+ GroundObjectChanged groundObjectChanged = new GroundObjectChanged();
groundObjectChanged.setTile(this);
groundObjectChanged.setPrevious(previous);
groundObjectChanged.setGroundObject(current);
@@ -282,7 +282,7 @@ public abstract class RSTileMixin implements RSTile
logger.trace("Game object despawn: {}", previous.getId());
- GameObjectDespawned gameObjectDespawned = GameObjectDespawned.INSTANCE;
+ GameObjectDespawned gameObjectDespawned = new GameObjectDespawned();
gameObjectDespawned.setTile(this);
gameObjectDespawned.setGameObject(previous);
client.getCallbacks().post(gameObjectDespawned);
@@ -296,7 +296,7 @@ public abstract class RSTileMixin implements RSTile
logger.trace("Game object spawn: {}", current.getId());
- GameObjectSpawned gameObjectSpawned = GameObjectSpawned.INSTANCE;
+ GameObjectSpawned gameObjectSpawned = new GameObjectSpawned();
gameObjectSpawned.setTile(this);
gameObjectSpawned.setGameObject(current);
client.getCallbacks().post(gameObjectSpawned);
@@ -310,7 +310,7 @@ public abstract class RSTileMixin implements RSTile
logger.trace("Game object change: {} -> {}", previous.getId(), current.getId());
- GameObjectChanged gameObjectsChanged = GameObjectChanged.INSTANCE;
+ GameObjectChanged gameObjectsChanged = new GameObjectChanged();
gameObjectsChanged.setTile(this);
gameObjectsChanged.setPrevious(previous);
gameObjectsChanged.setGameObject(current);
@@ -339,9 +339,7 @@ public abstract class RSTileMixin implements RSTile
for (RSNode cur = head.getNext(); cur != head; cur = cur.getNext())
{
RSGroundItem item = (RSGroundItem) cur;
- ItemDespawned itemDespawned = ItemDespawned.INSTANCE;
- itemDespawned.setTile(this);
- itemDespawned.setItem(item);
+ ItemDespawned itemDespawned = new ItemDespawned(this, item);
client.getCallbacks().post(itemDespawned);
}
}
@@ -359,9 +357,7 @@ public abstract class RSTileMixin implements RSTile
{
if (lastUnlink != null)
{
- ItemDespawned itemDespawned = ItemDespawned.INSTANCE;
- itemDespawned.setTile(this);
- itemDespawned.setItem(lastUnlink);
+ ItemDespawned itemDespawned = new ItemDespawned(this, lastUnlink);
client.getCallbacks().post(itemDespawned);
}
return;
@@ -373,9 +369,7 @@ public abstract class RSTileMixin implements RSTile
{
if (lastUnlink != null)
{
- ItemDespawned itemDespawned = ItemDespawned.INSTANCE;
- itemDespawned.setTile(this);
- itemDespawned.setItem(lastUnlink);
+ ItemDespawned itemDespawned = new ItemDespawned(this, lastUnlink);
client.getCallbacks().post(itemDespawned);
}
return;
@@ -408,9 +402,7 @@ public abstract class RSTileMixin implements RSTile
if (lastUnlink != null && lastUnlink != previous && lastUnlink != next)
{
- ItemDespawned itemDespawned = ItemDespawned.INSTANCE;
- itemDespawned.setTile(this);
- itemDespawned.setItem(lastUnlink);
+ ItemDespawned itemDespawned = new ItemDespawned(this, lastUnlink);
client.getCallbacks().post(itemDespawned);
}
@@ -425,9 +417,7 @@ public abstract class RSTileMixin implements RSTile
item.setX(x);
item.setY(y);
- ItemSpawned itemSpawned = ItemSpawned.INSTANCE;
- itemSpawned.setTile(this);
- itemSpawned.setItem(item);
+ ItemSpawned itemSpawned = new ItemSpawned(this, item);
client.getCallbacks().post(itemSpawned);
current = forward ? current.getNext() : current.getPrevious();
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSVarcsMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSVarcsMixin.java
index e3d8db2864..86a757092b 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSVarcsMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSVarcsMixin.java
@@ -19,17 +19,13 @@ public abstract class RSVarcsMixin implements RSVarcs
@Inject
public void onVarCIntChanged(int id, int value)
{
- VarClientIntChanged event = VarClientIntChanged.INSTANCE;
- event.setIndex(id);
- client.getCallbacks().post(event);
+ client.getCallbacks().post(new VarClientIntChanged(id));
}
@MethodHook(value = "setString", end = true)
@Inject
public void onVarCStrChanged(int id, String value)
{
- VarClientStrChanged event = VarClientStrChanged.INSTANCE;
- event.setIndex(id);
- client.getCallbacks().post(event);
+ client.getCallbacks().post(new VarClientStrChanged(id));
}
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSWidgetMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSWidgetMixin.java
index 02b69facf0..4c59a88e53 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSWidgetMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSWidgetMixin.java
@@ -408,7 +408,7 @@ public abstract class RSWidgetMixin implements RSWidget
@Override
public void broadcastHidden(boolean hidden)
{
- WidgetHiddenChanged event = WidgetHiddenChanged.INSTANCE;
+ WidgetHiddenChanged event = new WidgetHiddenChanged();
event.setWidget(this);
event.setHidden(hidden);
@@ -496,7 +496,7 @@ public abstract class RSWidgetMixin implements RSWidget
client.getLogger().trace("Posting widget position changed");
- WidgetPositioned widgetPositioned = WidgetPositioned.INSTANCE;
+ WidgetPositioned widgetPositioned = new WidgetPositioned();
client.getCallbacks().postDeferred(widgetPositioned);
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSWorldMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSWorldMixin.java
index 2b8ff3fc30..eefb479963 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/RSWorldMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSWorldMixin.java
@@ -62,8 +62,7 @@ public abstract class RSWorldMixin implements RSWorld
if (worlds != null && worlds.length > 0 && worlds[worlds.length - 1] == this)
{
// this is the last world in the list.
- WorldListLoad worldLoad = WorldListLoad.INSTANCE;
- worldLoad.setWorlds(worlds);
+ WorldListLoad worldLoad = new WorldListLoad(worlds);
client.getCallbacks().post(worldLoad);
}
}
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java
index c1b2d09409..ab372ca932 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/ScriptVMMixin.java
@@ -98,7 +98,7 @@ public abstract class ScriptVMMixin implements RSClient
return true;
}
- ScriptCallbackEvent event = ScriptCallbackEvent.INSTANCE;
+ ScriptCallbackEvent event = new ScriptCallbackEvent();
event.setScript(currentScript);
event.setEventName(stringOp);
client.getCallbacks().post(event);
diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/SoundEffectMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/SoundEffectMixin.java
index 737e0f0a54..6338d07521 100644
--- a/runelite-mixins/src/main/java/net/runelite/mixins/SoundEffectMixin.java
+++ b/runelite-mixins/src/main/java/net/runelite/mixins/SoundEffectMixin.java
@@ -120,7 +120,7 @@ public abstract class SoundEffectMixin implements RSClient
{
// Regular sound effect
- SoundEffectPlayed event = SoundEffectPlayed.INSTANCE;
+ SoundEffectPlayed event = new SoundEffectPlayed();
event.setSoundId(client.getQueuedSoundEffectIDs()[soundIndex]);
event.setDelay(client.getQueuedSoundEffectDelays()[soundIndex]);
client.getCallbacks().post(event);
@@ -133,7 +133,7 @@ public abstract class SoundEffectMixin implements RSClient
int y = (packedLocation >> 8) & 0xFF;
int range = (packedLocation) & 0xFF;
- AreaSoundEffectPlayed event = AreaSoundEffectPlayed.INSTANCE;
+ AreaSoundEffectPlayed event = new AreaSoundEffectPlayed();
event.setSoundId(client.getQueuedSoundEffectIDs()[soundIndex]);
event.setSceneX(x);
event.setSceneY(y);