dynmap-neoforge/src/main/java/org/dynmap/Client.java
2011-05-29 17:24:46 -05:00

80 lines
2.3 KiB
Java

package org.dynmap;
import java.io.IOException;
import java.io.Writer;
import org.bukkit.ChatColor;
import org.json.simple.JSONAware;
import org.json.simple.JSONStreamAware;
public class Client {
public static class Update implements JSONAware, JSONStreamAware {
public long timestamp = System.currentTimeMillis();
@Override
public String toJSONString() {
return org.dynmap.web.Json.stringifyJson(this);
}
@Override
public void writeJSONString(Writer w) throws IOException {
// TODO: This isn't the best...
w.write(toJSONString());
}
}
public static class ChatMessage extends Update {
public String type = "chat";
public String source;
public String playerName;
public String message;
public String account;
public String channel;
public ChatMessage(String source, String channel, String playerName, String message, String playeraccount) {
this.source = source;
this.playerName = ChatColor.stripColor(playerName);
this.message = ChatColor.stripColor(message);
this.account = playeraccount;
this.channel = channel;
}
}
public static class PlayerJoinMessage extends Update {
public String type = "playerjoin";
public String playerName;
public String account;
public PlayerJoinMessage(String playerName, String playeraccount) {
this.playerName = ChatColor.stripColor(playerName);
this.account = playeraccount;
}
}
public static class PlayerQuitMessage extends Update {
public String type = "playerquit";
public String playerName;
public String account;
public PlayerQuitMessage(String playerName, String playeraccount) {
this.playerName = ChatColor.stripColor(playerName);
this.account = playeraccount;
}
}
public static class Tile extends Update {
public String type = "tile";
public String name;
public Tile(String name) {
this.name = name;
}
}
public static class DayNight extends Update {
public String type = "daynight";
public boolean isday;
public DayNight(boolean isday) {
this.isday = isday;
}
}
}