32 lines
1.1 KiB
Java
32 lines
1.1 KiB
Java
package xyz.etztech.serverapi.listeners;
|
|
|
|
import org.bukkit.event.EventHandler;
|
|
import org.bukkit.event.EventPriority;
|
|
import org.bukkit.event.Listener;
|
|
import org.bukkit.event.player.AsyncPlayerChatEvent;
|
|
import xyz.etztech.serverapi.ServerAPI;
|
|
import xyz.etztech.serverapi.web.api.ChatAPI;
|
|
|
|
import java.util.Date;
|
|
|
|
public class AsyncPlayerChatListener implements Listener {
|
|
private final ServerAPI plugin;
|
|
|
|
public AsyncPlayerChatListener(ServerAPI plugin) {
|
|
this.plugin = plugin;
|
|
plugin.getServer().getPluginManager().registerEvents(this, plugin);
|
|
}
|
|
|
|
@EventHandler(priority= EventPriority.MONITOR, ignoreCancelled=true)
|
|
public void onChat(AsyncPlayerChatEvent event) {
|
|
int chatLimit = plugin.getConfig().getInt("chat", 100);
|
|
if (ServerAPI.getChat().size() >= chatLimit) {
|
|
ServerAPI.getChat().remove(0);
|
|
}
|
|
ServerAPI.getChat().add(new ChatAPI(
|
|
String.format(event.getFormat(), event.getPlayer().getDisplayName(), event.getMessage()),
|
|
new Date().getTime()
|
|
));
|
|
}
|
|
}
|