From acb840cffb2e5b6e723810cb2220a73ed2f76c7f Mon Sep 17 00:00:00 2001
From: TheStonedTurtle <29030969+TheStonedTurtle@users.noreply.github.com>
Date: Fri, 14 Dec 2018 08:39:37 -0800
Subject: [PATCH] clanchat plugin: add CC rank icons to oublic and private
messages
---
.../plugins/clanchat/ClanChatConfig.java | 22 ++++++++
.../plugins/clanchat/ClanChatPlugin.java | 50 +++++++++++++++----
2 files changed, 63 insertions(+), 9 deletions(-)
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatConfig.java
index cfddcb84a5..5fdd7996be 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatConfig.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatConfig.java
@@ -104,4 +104,26 @@ public interface ClanChatConfig extends Config
{
return ClanMemberRank.UNRANKED;
}
+
+ @ConfigItem(
+ keyName = "privateMessageIcons",
+ name = "Private Message Icons",
+ description = "Add clan chat rank icons to private messages received from clan mates.",
+ position = 6
+ )
+ default boolean privateMessageIcons()
+ {
+ return false;
+ }
+
+ @ConfigItem(
+ keyName = "publicChatIcons",
+ name = "Public Chat Icons",
+ description = "Add clan chat rank icons to public chat messages from clan mates.",
+ position = 7
+ )
+ default boolean publicChatIcons()
+ {
+ return false;
+ }
}
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatPlugin.java
index 3e57a0723f..ef1f27e3cf 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatPlugin.java
@@ -353,10 +353,38 @@ public class ClanChatPlugin extends Plugin
return;
}
- if (chatMessage.getType() == ChatMessageType.CLANCHAT && client.getClanChatCount() > 0)
+ if (client.getClanChatCount() <= 0)
{
- insertClanRankIcon(chatMessage);
+ return;
}
+
+ switch (chatMessage.getType())
+ {
+ case PRIVATE_MESSAGE_RECEIVED:
+ case PRIVATE_MESSAGE_RECEIVED_MOD:
+ if (!config.privateMessageIcons())
+ {
+ return;
+ }
+ break;
+ case PUBLIC:
+ case PUBLIC_MOD:
+ if (!config.publicChatIcons())
+ {
+ return;
+ }
+ break;
+ case CLANCHAT:
+ if (!config.clanChatIcons())
+ {
+ return;
+ }
+ break;
+ default:
+ return;
+ }
+
+ insertClanRankIcon(chatMessage);
}
@Subscribe
@@ -431,18 +459,22 @@ public class ClanChatPlugin extends Plugin
private void insertClanRankIcon(final ChatMessage message)
{
- if (!config.clanChatIcons())
- {
- return;
- }
-
final ClanMemberRank rank = clanManager.getRank(message.getName());
if (rank != null && rank != ClanMemberRank.UNRANKED)
{
int iconNumber = clanManager.getIconNumber(rank);
- message.getMessageNode()
- .setSender(message.getMessageNode().getSender() + "
");
+ final String img = "
";
+ if (message.getType() == ChatMessageType.CLANCHAT)
+ {
+ message.getMessageNode()
+ .setSender(message.getMessageNode().getSender() + " " + img);
+ }
+ else
+ {
+ message.getMessageNode()
+ .setName(img + message.getMessageNode().getName());
+ }
client.refreshChat();
}
}