Add world load event

This commit is contained in:
Adam
2018-08-14 10:13:25 -04:00
parent 3c34b5f338
commit f25eaff16e
2 changed files with 53 additions and 0 deletions

View File

@@ -26,13 +26,20 @@ package net.runelite.mixins;
import java.util.EnumSet;
import net.runelite.api.WorldType;
import net.runelite.api.events.WorldLoad;
import net.runelite.api.mixins.FieldHook;
import net.runelite.api.mixins.Inject;
import net.runelite.api.mixins.Mixin;
import net.runelite.api.mixins.Shadow;
import net.runelite.rs.api.RSClient;
import net.runelite.rs.api.RSWorld;
@Mixin(RSWorld.class)
public abstract class RSWorldMixin implements RSWorld
{
@Shadow("clientInstance")
private static RSClient client;
@Inject
@Override
public EnumSet<WorldType> getTypes()
@@ -46,4 +53,13 @@ public abstract class RSWorldMixin implements RSWorld
{
setMask(WorldType.toMask(types));
}
@Inject
@FieldHook("playerCount")
public void playerCountChanged(int idx)
{
// playerCount is the last field updated
WorldLoad worldLoad = new WorldLoad(this);
client.getCallbacks().post(worldLoad);
}
}