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