Hush/src/main/java/com/zerohighdef/hush/Hush.java

55 lines
1.6 KiB
Java

package com.zerohighdef.hush;
import com.zerohighdef.hush.commands.MainCommand;
import com.zerohighdef.hush.listeners.HushAsyncChatListener;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.plugin.java.JavaPlugin;
import java.util.LinkedList;
import java.util.List;
import java.util.logging.Logger;
public final class Hush extends JavaPlugin {
private final Logger log = Logger.getLogger("Minecraft");
private List<WatchList> watchLists;
@Override
public void onEnable() {
saveDefaultConfig();
reloadConfig();
if (isEnabled()) {
new HushAsyncChatListener(this);
new MainCommand(this);
}
}
@Override
public void reloadConfig() {
super.reloadConfig();
buildWatchLists();
}
private void buildWatchLists() {
watchLists = new LinkedList<>();
ConfigurationSection watchListSection = getConfig().getConfigurationSection("watch_lists");
for (String permission: watchListSection.getKeys(false)) {
String banMessage = watchListSection.getString(permission + ".ban_message");
List<String> banPatterns = watchListSection.getStringList(permission + ".ban");
List<String> monitorPatterns = watchListSection.getStringList(permission + ".monitor");
watchLists.add(new WatchList("hush." + permission, banMessage, banPatterns, monitorPatterns));
}
}
public void log(String message) {
log.info( "[Hush]: " + message );
}
public List<WatchList> getWatchLists() {
return watchLists;
}
}