mirror of
https://github.com/cnaude/PurpleIRC-spigot.git
synced 2025-02-13 10:01:29 +01:00
Herochat null pointer check (invalid channel)
This commit is contained in:
parent
155b1467cc
commit
fddf4f8377
10
pom.xml
10
pom.xml
@ -93,19 +93,19 @@
|
||||
<type>jar</type>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
|
||||
<dependency>
|
||||
<groupId>org.bukkit</groupId>
|
||||
<artifactId>spigot-19</artifactId>
|
||||
<version>1.9</version>
|
||||
<artifactId>spigot-184</artifactId>
|
||||
<version>1.8.4</version>
|
||||
<type>jar</type>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.bukkit</groupId>
|
||||
<artifactId>spigot-184</artifactId>
|
||||
<version>1.8.4</version>
|
||||
<artifactId>spigot-19</artifactId>
|
||||
<version>1.9</version>
|
||||
<type>jar</type>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
@ -118,7 +118,7 @@ public final class PurpleBot {
|
||||
public String charSet;
|
||||
public String commandPrefix;
|
||||
public String quitMessage;
|
||||
public String botIdentPassword;
|
||||
public String botIdentPassword;
|
||||
public List<String> rawMessages;
|
||||
public String channelCmdNotifyMode;
|
||||
public String partInvalidChannelsMsg;
|
||||
@ -256,7 +256,7 @@ public final class PurpleBot {
|
||||
this.filters = new CaseInsensitiveMap<>();
|
||||
this.tailerFilters = new ArrayList<>();
|
||||
this.channelNicks = new CaseInsensitiveMap<>();
|
||||
this.rawMessages = new ArrayList<>();
|
||||
this.rawMessages = new ArrayList<>();
|
||||
this.channelTopicChanserv = new CaseInsensitiveMap<>();
|
||||
this.joinMsg = new CaseInsensitiveMap<>();
|
||||
this.msgOnJoin = new CaseInsensitiveMap<>();
|
||||
@ -662,10 +662,10 @@ public final class PurpleBot {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
public void asyncRawlineNow(final List<String> messages) {
|
||||
for (String s : messages) {
|
||||
bot.sendRaw().rawLineNow(s);
|
||||
bot.sendRaw().rawLineNow(s);
|
||||
}
|
||||
}
|
||||
|
||||
@ -687,7 +687,7 @@ public final class PurpleBot {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
public void zncResponse(String message) {
|
||||
if (zncSender != null) {
|
||||
zncSender.sendMessage(message);
|
||||
@ -738,7 +738,7 @@ public final class PurpleBot {
|
||||
trustAllCerts = config.getBoolean("trust-all-certs", false);
|
||||
disableDiffieHellman = config.getBoolean("disable-diffie-hellman", false);
|
||||
sendRawMessageOnConnect = config.getBoolean("raw-message-on-connect", false);
|
||||
rawMessages.add(config.getString("raw-message"));
|
||||
rawMessages.add(config.getString("raw-message"));
|
||||
rawMessages.addAll(config.getStringList("raw-message-list"));
|
||||
relayPrivateChat = config.getBoolean("relay-private-chat", false);
|
||||
logPrivateChat = config.getBoolean("log-private-chat", false);
|
||||
@ -2763,11 +2763,15 @@ public final class PurpleBot {
|
||||
String rawHCMessage = filterMessage(
|
||||
plugin.tokenizer.ircChatToHeroChatTokenizer(this, user, channel, tmpl, message, Herochat.getChannelManager(), hChannel), channelName);
|
||||
if (!rawHCMessage.isEmpty()) {
|
||||
Herochat.getChannelManager().getChannel(hChannel).sendRawMessage(rawHCMessage);
|
||||
messageSent = true;
|
||||
if (logIrcToHeroChat.containsKey(channelName)) {
|
||||
if (logIrcToHeroChat.get(channelName)) {
|
||||
plugin.getServer().getConsoleSender().sendMessage(rawHCMessage);
|
||||
if (Herochat.getChannelManager().getChannel(hChannel) == null) {
|
||||
plugin.logError("Herochat channel is invalid: " + hChannel);
|
||||
} else {
|
||||
Herochat.getChannelManager().getChannel(hChannel).sendRawMessage(rawHCMessage);
|
||||
messageSent = true;
|
||||
if (logIrcToHeroChat.containsKey(channelName)) {
|
||||
if (logIrcToHeroChat.get(channelName)) {
|
||||
plugin.getServer().getConsoleSender().sendMessage(rawHCMessage);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -206,17 +206,26 @@ public class ChatTokenizer {
|
||||
*/
|
||||
public String ircChatToHeroChatTokenizer(PurpleBot ircBot, User user, org.pircbotx.Channel channel, String template, String message, ChannelManager channelManager, String hChannel) {
|
||||
String ircNick = user.getNick();
|
||||
String heroNick = "";
|
||||
String heroColor = "";
|
||||
String tmpl;
|
||||
if (channelManager.getChannel(hChannel) == null) {
|
||||
plugin.logError("Herochat channel is invalid: " + hChannel);
|
||||
} else {
|
||||
heroNick = channelManager.getChannel(hChannel).getNick();
|
||||
heroColor = channelManager.getChannel(hChannel).getColor().toString();
|
||||
}
|
||||
Player player = this.getPlayer(ircNick);
|
||||
if (player != null) {
|
||||
tmpl = playerTokenizer(player, template);
|
||||
} else {
|
||||
tmpl = playerTokenizer(ircNick, template);
|
||||
}
|
||||
plugin.logDebug(message);
|
||||
return plugin.colorConverter.ircColorsToGame(ircUserTokenizer(tmpl, user, ircBot)
|
||||
.replace("%HEROCHANNEL%", hChannel)
|
||||
.replace("%HERONICK%", channelManager.getChannel(hChannel).getNick())
|
||||
.replace("%HEROCOLOR%", channelManager.getChannel(hChannel).getColor().toString())
|
||||
.replace("%HERONICK%", heroNick)
|
||||
.replace("%HEROCOLOR%", heroColor)
|
||||
.replace("%NICKPREFIX%", ircBot.getNickPrefix(user, channel))
|
||||
.replace("%CHANNELPREFIX%", ircBot.getChannelPrefix(channel))
|
||||
.replace("%MESSAGE%", message)
|
||||
|
Loading…
Reference in New Issue
Block a user