2019-07-30 17:14:24 +00:00
|
|
|
package pw.kaboom.extras;
|
|
|
|
|
2019-09-21 23:46:15 +00:00
|
|
|
import java.util.UUID;
|
|
|
|
|
2019-07-30 17:14:24 +00:00
|
|
|
import org.bukkit.ChatColor;
|
|
|
|
|
|
|
|
import org.bukkit.entity.Player;
|
|
|
|
|
|
|
|
import org.bukkit.event.EventHandler;
|
|
|
|
import org.bukkit.event.Listener;
|
|
|
|
|
|
|
|
import org.bukkit.event.player.AsyncPlayerChatEvent;
|
|
|
|
|
2019-09-28 00:29:48 +00:00
|
|
|
import org.bukkit.plugin.java.JavaPlugin;
|
2019-07-30 17:14:24 +00:00
|
|
|
|
2019-09-28 00:29:48 +00:00
|
|
|
class PlayerChat implements Listener {
|
2019-07-30 17:14:24 +00:00
|
|
|
@EventHandler
|
|
|
|
void onAsyncPlayerChat(AsyncPlayerChatEvent event) {
|
|
|
|
final Player player = event.getPlayer();
|
2019-09-21 23:46:15 +00:00
|
|
|
final UUID playerUuid = event.getPlayer().getUniqueId();
|
|
|
|
|
2019-09-28 00:29:48 +00:00
|
|
|
if (Main.commandMillisList.get(playerUuid) != null) {
|
|
|
|
final long millisDifference = System.currentTimeMillis() - Main.commandMillisList.get(playerUuid);
|
2019-09-21 23:46:15 +00:00
|
|
|
|
2019-09-22 02:37:43 +00:00
|
|
|
if (millisDifference < 5) {
|
2019-09-21 23:46:15 +00:00
|
|
|
event.setCancelled(true);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-09-28 00:29:48 +00:00
|
|
|
Main.commandMillisList.put(playerUuid, System.currentTimeMillis());
|
2019-09-21 23:46:15 +00:00
|
|
|
|
|
|
|
if (event.isCancelled()) {
|
|
|
|
return;
|
|
|
|
}
|
2019-07-30 17:14:24 +00:00
|
|
|
|
2019-09-28 00:29:48 +00:00
|
|
|
if (JavaPlugin.getPlugin(Main.class).getConfig().getString(player.getUniqueId().toString()) != null) {
|
2019-07-30 17:14:24 +00:00
|
|
|
final String prefix = ChatColor.translateAlternateColorCodes(
|
|
|
|
'&',
|
2019-09-28 00:29:48 +00:00
|
|
|
JavaPlugin.getPlugin(Main.class).getConfig().getString(player.getUniqueId().toString())
|
2019-07-30 17:14:24 +00:00
|
|
|
);
|
|
|
|
|
|
|
|
event.setFormat(prefix + ChatColor.RESET + " " + player.getDisplayName().toString() + ChatColor.RESET + ": " + ChatColor.RESET + "%2$s");
|
|
|
|
} else if (event.getPlayer().isOp()) {
|
|
|
|
final String prefix = ChatColor.translateAlternateColorCodes(
|
|
|
|
'&',
|
|
|
|
"&4&l[&c&lOP&4&l]"
|
|
|
|
);
|
|
|
|
|
|
|
|
event.setFormat(prefix + ChatColor.RED + " " + player.getDisplayName().toString() + ChatColor.RESET + ": " + ChatColor.RESET + "%2$s");
|
|
|
|
} else {
|
|
|
|
final String prefix = ChatColor.translateAlternateColorCodes(
|
|
|
|
'&',
|
|
|
|
"&8&l[&7&lDeOP&8&l]"
|
|
|
|
);
|
|
|
|
|
|
|
|
event.setFormat(prefix + ChatColor.GRAY + " " + player.getDisplayName().toString() + ChatColor.RESET + ": " + ChatColor.RESET + "%2$s");
|
|
|
|
}
|
|
|
|
|
|
|
|
event.setMessage(ChatColor.translateAlternateColorCodes('&', event.getMessage()));
|
|
|
|
}
|
|
|
|
}
|