Skip to content
This repository has been archived by the owner on Jul 27, 2019. It is now read-only.

Commit

Permalink
Add RedditStream hook - #78
Browse files Browse the repository at this point in the history
  • Loading branch information
cnaude committed Aug 9, 2014
1 parent 929edd2 commit f37e9bd
Show file tree
Hide file tree
Showing 7 changed files with 76 additions and 1 deletion.
8 changes: 7 additions & 1 deletion dependency-reduced-pom.xml
Expand Up @@ -178,10 +178,16 @@
<version>1.2.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.cnaude</groupId>
<artifactId>RedditStream</artifactId>
<version>0.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.kitteh.vanish</groupId>
<artifactId>VanishNoPacket</artifactId>
<version>3.19.1</version>
<version>3.18.7</version>
<scope>compile</scope>
</dependency>
<dependency>
Expand Down
7 changes: 7 additions & 0 deletions pom.xml
Expand Up @@ -142,6 +142,13 @@
<version>1.2.3</version>
</dependency>

<!-- RedditStream -->
<dependency>
<groupId>com.cnaude</groupId>
<artifactId>RedditStream</artifactId>
<version>0.2</version>
</dependency>

<!-- VanishNoPacket -->
<dependency>
<groupId>com.kitteh.vanish</groupId>
Expand Down
@@ -0,0 +1,36 @@
package com.cnaude.purpleirc.GameListeners;

import com.cnaude.purpleirc.PurpleBot;
import com.cnaude.purpleirc.PurpleIRC;
import io.github.wolf_359.RedditBroadcastEvent;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;

/**
*
* @author cnaude
*/
public class RedditStreamListener implements Listener {

private final PurpleIRC plugin;

/**
*
* @param plugin
*/
public RedditStreamListener(PurpleIRC plugin) {
this.plugin = plugin;
}

/**
*
* @param event
*/
@EventHandler
public void onRedditBroadcastEvent(RedditBroadcastEvent event) {
plugin.logDebug("onRedditBroadcastEvent caught");
for (PurpleBot ircBot : plugin.ircBots.values()) {
ircBot.redditStreamBroadcast(event.getMessage());
}
}
}
15 changes: 15 additions & 0 deletions src/main/java/com/cnaude/purpleirc/PurpleBot.java
Expand Up @@ -1257,6 +1257,21 @@ public void consoleBroadcast(String message) {
}
}
}

/**
*
* @param message
*/
public void redditStreamBroadcast(String message) {
if (!this.isConnected()) {
return;
}
for (String channelName : botChannels) {
if (isMessageEnabled(channelName, TemplateName.REDDIT_MESSAGES)) {
asyncIRCMessage(channelName, plugin.tokenizer.gameChatToIRCTokenizer(plugin.getMsgTemplate(botNick, TemplateName.REDDIT_MESSAGES), message));
}
}
}

/**
*
Expand Down
7 changes: 7 additions & 0 deletions src/main/java/com/cnaude/purpleirc/PurpleIRC.java
Expand Up @@ -17,6 +17,7 @@
import com.cnaude.purpleirc.GameListeners.McMMOChatListener;
import com.cnaude.purpleirc.GameListeners.OreBroadcastListener;
import com.cnaude.purpleirc.GameListeners.PrismListener;
import com.cnaude.purpleirc.GameListeners.RedditStreamListener;
import com.cnaude.purpleirc.GameListeners.ReportRTSListener;
import com.cnaude.purpleirc.GameListeners.TitanChatListener;
import com.cnaude.purpleirc.GameListeners.TownyChatListener;
Expand Down Expand Up @@ -223,6 +224,12 @@ public void onEnable() {
} else {
logInfo("Prism not detected.");
}
if (isPluginEnabled("RedditStream")) {
logInfo("Enabling RedditStream support.");
getServer().getPluginManager().registerEvents(new RedditStreamListener(this), this);
} else {
logInfo("RedditStream not detected.");
}
if (isPluginEnabled("TownyChat")) {
logInfo("Enabling TownyChat support.");
getServer().getPluginManager().registerEvents(new TownyChatListener(this), this);
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/cnaude/purpleirc/TemplateName.java
Expand Up @@ -101,5 +101,7 @@ public class TemplateName {
public final static String PRISM_DRAIN = "prism-drain";
public final static String PRISM_EXTINGUISH = "prism-extinguish";
public final static String PRISM_CUSTOM = "prism-custom";

public final static String REDDIT_MESSAGES = "reddit-messages";

}
2 changes: 2 additions & 0 deletions src/main/resources/config.yml
Expand Up @@ -171,6 +171,8 @@ message-format:
prism-drain: '[PrismDrain] [Player: %NAME%] [Radius: %RADIUS%] [OrigBlock: %ORIGINALBLOCK%] [NewBlock: %NEWBLOCK%] [X,Y,Z: %X%,%Y%,%Z%] [World: %BLOCKWORLD%]'
prism-extinguish: '[PrismExtinguish] [Player: %NAME%] [Radius%: %RADIUS] [OrigBlock: %ORIGINALBLOCK%] [NewBlock: %NEWBLOCK%] [X,Y,Z: %X%,%Y%,%Z%] [World: %BLOCKWORLD%]'
prism-custom: '[PrismCustom] [Player: %NAME%] [Action: %ACTION%] [Message: %MESSAGE%] [Plugin: %PLUGIN%]'
# RedditStream
reddit-messages: '[R] %MESSAGE%'
# Defaults below take effect when user joins IRC and matching player is offline
default-player-suffix: ''
default-player-prefix: ''
Expand Down

0 comments on commit f37e9bd

Please sign in to comment.