From d41c6ec6d8890e336d160bb98e06df954f55967d Mon Sep 17 00:00:00 2001 From: Tomas Slusny Date: Sun, 14 Jan 2018 05:02:05 +0100 Subject: [PATCH] Fix new player-is-x mixins - Call the real method from isFriended - Call the real method from isIgnored - Add null check for getClanMembers Signed-off-by: Tomas Slusny --- runelite-api/src/main/java/net/runelite/api/Client.java | 2 +- .../net/runelite/mixins/PlayerIsClanMemberMixin.java | 9 ++++++++- .../java/net/runelite/mixins/PlayerIsFriendMixin.java | 7 ------- .../java/net/runelite/mixins/PlayerIsIgnoredMixin.java | 7 ------- .../src/main/java/net/runelite/rs/api/RSClient.java | 8 ++++++++ 5 files changed, 17 insertions(+), 16 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Client.java b/runelite-api/src/main/java/net/runelite/api/Client.java index 0a7985379d..228d6355c9 100644 --- a/runelite-api/src/main/java/net/runelite/api/Client.java +++ b/runelite-api/src/main/java/net/runelite/api/Client.java @@ -162,7 +162,7 @@ public interface Client IndexedSprite createIndexedSprite(); - boolean isFriend(String name, boolean mustBeLoggedIn); + boolean isFriended(String name, boolean mustBeLoggedIn); boolean isIgnored(String name); diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsClanMemberMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsClanMemberMixin.java index 6bada45152..9feaf04db2 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsClanMemberMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsClanMemberMixin.java @@ -74,7 +74,14 @@ public abstract class PlayerIsClanMemberMixin implements RSClient { isClanMember = false; - for (RSClanMember clanMember : getClanMembers()) + final RSClanMember[] clanMembers = getClanMembers(); + + if (clanMembers == null) + { + return false; + } + + for (RSClanMember clanMember : clanMembers) { if (clanMember == null) { diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsFriendMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsFriendMixin.java index 2565cc2166..0f066951c5 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsFriendMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsFriendMixin.java @@ -95,11 +95,4 @@ public abstract class PlayerIsFriendMixin implements RSClient return isFriended; } - - @Inject - @Override - public boolean isFriend(String name, boolean mustBeLoggedIn) - { - return rl$isFriended(name, mustBeLoggedIn); - } } diff --git a/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsIgnoredMixin.java b/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsIgnoredMixin.java index cdf784983d..c03b79b523 100644 --- a/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsIgnoredMixin.java +++ b/runelite-mixins/src/main/java/net/runelite/mixins/PlayerIsIgnoredMixin.java @@ -84,11 +84,4 @@ public abstract class PlayerIsIgnoredMixin implements RSClient return isIgnored; } - - @Inject - @Override - public boolean isIgnored(String name) - { - return rl$isIgnored(name); - } } diff --git a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java index dfb25ea22d..cd1204a89d 100644 --- a/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java +++ b/runescape-api/src/main/java/net/runelite/rs/api/RSClient.java @@ -338,4 +338,12 @@ public interface RSClient extends RSGameEngine, Client @Import("destinationY") int getDestinationY(); + + @Import("isFriended") + @Override + boolean isFriended(String name, boolean mustBeLoggedIn); + + @Import("isIgnored") + @Override + boolean isIgnored(String name); }