mixins: use a ClanMember for ClanMemberJoined/Left
This commit is contained in:
@@ -25,12 +25,13 @@
|
||||
package net.runelite.api.events;
|
||||
|
||||
import lombok.Value;
|
||||
import net.runelite.api.ClanMember;
|
||||
|
||||
@Value
|
||||
public class ClanMemberJoined
|
||||
{
|
||||
/**
|
||||
* Name of the player who joined
|
||||
* The ClanMember that joined
|
||||
*/
|
||||
private String name;
|
||||
private ClanMember member;
|
||||
}
|
||||
|
||||
@@ -25,12 +25,13 @@
|
||||
package net.runelite.api.events;
|
||||
|
||||
import lombok.Value;
|
||||
import net.runelite.api.ClanMember;
|
||||
|
||||
@Value
|
||||
public class ClanMemberLeft
|
||||
{
|
||||
/**
|
||||
* Name of the player who left
|
||||
* The ClanMember that left
|
||||
*/
|
||||
private String name;
|
||||
private ClanMember member;
|
||||
}
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
*/
|
||||
package net.runelite.mixins;
|
||||
|
||||
import net.runelite.api.ClanMember;
|
||||
import net.runelite.api.events.ClanMemberJoined;
|
||||
import net.runelite.api.events.ClanMemberLeft;
|
||||
import net.runelite.api.mixins.Inject;
|
||||
@@ -44,15 +45,27 @@ public abstract class RSClanMemberManagerMixin implements RSClanMemberManager
|
||||
@Override
|
||||
public void rl$add(RSName name, RSName prevName)
|
||||
{
|
||||
ClanMemberJoined event = new ClanMemberJoined(name.getName());
|
||||
client.getCallbacks().post(event);
|
||||
ClanMember member = findByName(name);
|
||||
if (member == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
ClanMemberJoined event = new ClanMemberJoined(member);
|
||||
client.getCallbacks().postDeferred(event);
|
||||
}
|
||||
|
||||
@Inject
|
||||
@Override
|
||||
public void rl$remove(RSNameable nameable)
|
||||
{
|
||||
ClanMemberLeft event = new ClanMemberLeft(nameable.getRsName().getName());
|
||||
client.getCallbacks().post(event);
|
||||
ClanMember member = findByName(nameable.getRsName());
|
||||
if (member == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
ClanMemberLeft event = new ClanMemberLeft(member);
|
||||
client.getCallbacks().postDeferred(event);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,6 +37,9 @@ public interface RSNameableContainer<T extends RSNameable>
|
||||
@Import("isMember")
|
||||
boolean isMember(RSName var1);
|
||||
|
||||
@Import("findByName")
|
||||
T findByName(RSName name);
|
||||
|
||||
/**
|
||||
* Method called by the container when an element is added
|
||||
* @param name
|
||||
|
||||
Reference in New Issue
Block a user