@@ -0,0 +1,2565 @@
+package com.github.niwaniwa.we.core.player;%0A%0Aimport java.net.InetSocketAddress;%0Aimport java.util.List;%0Aimport java.util.UUID;%0A%0Aimport org.bukkit.Bukkit;%0Aimport org.bukkit.ChatColor;%0Aimport org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer;%0Aimport org.bukkit.entity.Player;%0Aimport org.bukkit.permissions.Permission;%0A%0Aimport com.github.niwaniwa.we.core.api.callback.Callback;%0Aimport com.github.niwaniwa.we.core.twitter.TwitterManager;%0A%0Aimport net.minecraft.server.v1_8_R3.EntityPlayer;%0Aimport twitter4j.Status;%0Aimport twitter4j.StatusUpdate;%0A%0Apublic abstract class EggPlayer implements Tweet, WhitePlayer %7B%0A%0A%09private Player player;%0A%0A%09public EggPlayer(Player player) %7B%0A%09%09this.player = player;%0A%09%7D%0A%0A%09@Override%0A%09public void remove() %7B%0A%09%09player.remove();%0A%09%7D%0A%0A%09@Override%0A%09public String getName() %7B%0A%09%09return player.getName();%0A%09%7D%0A%0A%09@Override%0A%09public String getFullName() %7B%0A%09%09return getPrefix() + getName();%0A%09%7D%0A%0A%09@Override%0A%09public Player getPlayer() %7B%0A%09%09return player;%0A%09%7D%0A%0A%09@Override%0A%09public UUID getUniqueId() %7B%0A%09%09return player.getUniqueId();%0A%09%7D%0A%0A%09@Override%0A%09public boolean isOp()%7B%0A%09%09return player.isOp();%0A%09%7D%0A%0A%09@Override%0A%09public boolean isOnline() %7B%0A%09%09return player.isOnline();%0A%09%7D%0A%0A%09@Override%0A%09public void sendMessage(String message) %7B%0A%09%09this.sendMessage(message, true);%0A%09%7D%0A%0A%09@Override%0A%09public void sendMessage(String message, boolean replaceColorCode) %7B%0A%09%09player.sendMessage(ChatColor.translateAlternateColorCodes('&', message));%0A%09%7D%0A%0A%09@Override%0A%09public TwitterManager getTwitterManager() %7B  throw new UnsupportedOperationException(getClass().getSimpleName());  %7D%0A%0A%09@Override%0A%09public boolean hasPermission(String permission) %7B%0A%09%09return player.hasPermission(permission);%0A%09%7D%0A%0A%09@Override%0A%09public boolean hasPermission(Permission permission) %7B%0A%09%09return player.hasPermission(permission);%0A%09%7D%0A%0A%09public void update()%7B%0A%09%09player = Bukkit.getPlayer(getUniqueId());%0A%09%7D%0A%0A%09@Override%0A%09public InetSocketAddress getAddress() %7B%0A%09%09return player.getAddress();%0A%09%7D%0A%0A%09@Override%0A%09public EntityPlayer getHandle()%7B%0A%09%09return ((CraftPlayer) player).getHandle();%0A%09%7D%0A%0A%09@Override%0A%09public void updateStatus(StatusUpdate update) %7B  throw new UnsupportedOperationException(getClass().getSimpleName());  %7D%0A%0A%09@Override%0A%09public void updateStatus(StatusUpdate update, Callback callback) %7B  throw new UnsupportedOperationException(getClass().getSimpleName());  %7D%0A%0A%09@Override%0A%09public void updateStatus(String tweet) %7B  throw new UnsupportedOperationException(getClass().getSimpleName());  %7D%0A%0A%09@Override%0A%09public List%3CStatus%3E getTimeLine() %7B throw new UnsupportedOperationException(getClass().getSimpleName());  %7D%0A%0A%7D%0A

Add player class