diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/RSUserMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/RSUserMixin.java index ac8fb4a5da..c351da8d41 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/RSUserMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/RSUserMixin.java @@ -1,13 +1,20 @@ package net.runelite.mixins; +import net.runelite.api.events.NameableNameChanged; +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.RSUser; import net.runelite.rs.api.RSUsername; @Mixin(RSUser.class) public abstract class RSUserMixin implements RSUser { + @Shadow("client") + private static RSClient client; + @Override @Inject public String getName() @@ -22,4 +29,11 @@ public abstract class RSUserMixin implements RSUser RSUsername prevName = getRsPrevName(); return prevName == null ? null : prevName.getName(); } + + @FieldHook("previousUsername") + @Inject + public void onPrevNameChanged(int idx) + { + client.getCallbacks().post(NameableNameChanged.class, new NameableNameChanged(this)); + } }