rendered paste bodyimport org.jibble.pircbot.*;import java.util.*;import java.io.*;
public class MyBot extends PircBot {
Map rsname = new HashMap();
public MyBot() {
this.setName("rsbot-Ves");
sendMessage("nickserv", "identify");
}
public void onInvite(String targetNick, String sourceNick, String sourceLogin, String sourceHostname, String channel) {
if (sourceNick.equalsIgnoreCase("Vesuvius27")) {
joinChannel(channel);
}
}
public void onJoin(String channel, String sender, String login, String hostname) {
if (sender.equalsIgnoreCase(getNick())) {
sendMessage(channel, "Sup Guys");
}
else if (sender.equalsIgnoreCase("Vesuvius27")) {
sendAction(channel, "praises his creator");
}
else{sendMessage(channel, "Welcome " + sender + " to " + channel.substring(1) + " IRC");
}
}
private void writeNames() {
try {
FileOutputStream rsnamefos = new FileOutputStream("rsnamefos.tmp");
ObjectOutputStream rsnameoos = new ObjectOutputStream(rsnamefos);
rsnameoos.close();
}
catch (FileNotFoundException e) {
System.err.println("FileNotFoundException");
}
catch (IOException e) {
System.out.println("IOException");
}
}
public void onMessage(String channel, String sender, String login, String hostname, String message) {
if (message.equals("!help")) {
sendMessage(channel, "Sending you help via msg");
sendMessage(sender, "!linkme <RSN - Optional> Stats Graph");
sendMessage(sender, "!remembername <RSN> Stores the RSN for an IRC nick");
}
if (message.startsWith("!remembername")) {
rsname.put(sender,message.substring(14));
sendMessage(channel, "Associating RSN " + message.substring(14) + " with nick " + sender);
call writeNames;
rsnameoos.writeObject(rsname);
}
if (message.startsWith("!linkme")) {
if (message.length() < 8) {
String realname = (String) rsname.get(sender);
if (realname == (null)) {
realname = sender;
}
sendMessage(channel, "http://guilds.sinthos-soft.com/rs/stats/rs_levels.php?user=" + realname);
}
else {sendMessage(channel, "http://guilds.sinthos-soft.com/rs/stats/rs_levels.php?user=" + message.substring(8));
}
}
}
}