summaryrefslogtreecommitdiffstats
path: root/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2012-08-18 21:19:00 +0100
committerKHobbits <rob@khobbits.co.uk>2012-08-19 14:54:58 +0100
commitf5bf5ed25116a8b290bf8fe5e4bd351418af3856 (patch)
tree8c42a15cee3555453436d00face55b39781fc4c0 /EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java
parent9261b259a98d156870b62706cb7bd16b7d9cf57a (diff)
downloadEssentials-f5bf5ed25116a8b290bf8fe5e4bd351418af3856.tar
Essentials-f5bf5ed25116a8b290bf8fe5e4bd351418af3856.tar.gz
Essentials-f5bf5ed25116a8b290bf8fe5e4bd351418af3856.tar.lz
Essentials-f5bf5ed25116a8b290bf8fe5e4bd351418af3856.tar.xz
Essentials-f5bf5ed25116a8b290bf8fe5e4bd351418af3856.zip
Split Ess protect into EssProtect and EssAntiBuild
New permissions: essentials.build - same as build: true essentials.build.interact.<id> - whitelist single interact block essentials.build.place.<id> - whitelist single place block essentials.build.break.<id> - whitelist single break block essentials.build.use.<id> - whitelist single use item
Diffstat (limited to 'EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java')
-rw-r--r--EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java65
1 files changed, 65 insertions, 0 deletions
diff --git a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java b/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java
new file mode 100644
index 000000000..c7b2eb7dd
--- /dev/null
+++ b/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java
@@ -0,0 +1,65 @@
+package com.earth2me.essentials.antibuild;
+
+import java.util.EnumMap;
+import java.util.List;
+import java.util.Map;
+import java.util.logging.Logger;
+import org.bukkit.plugin.Plugin;
+import org.bukkit.plugin.PluginManager;
+import org.bukkit.plugin.java.JavaPlugin;
+
+
+public class EssentialsAntiBuild extends JavaPlugin implements IAntiBuild
+{
+ private static final Logger LOGGER = Logger.getLogger("Minecraft");
+ private final transient Map<AntiBuildConfig, Boolean> settingsBoolean = new EnumMap<AntiBuildConfig, Boolean>(AntiBuildConfig.class);
+ private final transient Map<AntiBuildConfig, List<Integer>> settingsList = new EnumMap<AntiBuildConfig, List<Integer>>(AntiBuildConfig.class);
+ private transient EssentialsConnect ess = null;
+
+ @Override
+ public void onEnable()
+ {
+ final PluginManager pm = this.getServer().getPluginManager();
+ final Plugin essPlugin = pm.getPlugin("Essentials");
+ if (essPlugin == null || !essPlugin.isEnabled())
+ {
+ return;
+ }
+ ess = new EssentialsConnect(essPlugin, this);
+
+ final EssentialsAntiBuildListener blockListener = new EssentialsAntiBuildListener(this);
+ pm.registerEvents(blockListener, this);
+ }
+
+ @Override
+ public boolean checkProtectionItems(final AntiBuildConfig list, final int id)
+ {
+ final List<Integer> itemList = settingsList.get(list);
+ return itemList != null && !itemList.isEmpty() && itemList.contains(id);
+ }
+
+ @Override
+ public EssentialsConnect getEssentialsConnect()
+ {
+ return ess;
+ }
+
+ @Override
+ public Map<AntiBuildConfig, Boolean> getSettingsBoolean()
+ {
+ return settingsBoolean;
+ }
+
+ @Override
+ public Map<AntiBuildConfig, List<Integer>> getSettingsList()
+ {
+ return settingsList;
+ }
+
+ @Override
+ public boolean getSettingBool(final AntiBuildConfig protectConfig)
+ {
+ final Boolean bool = settingsBoolean.get(protectConfig);
+ return bool == null ? protectConfig.getDefaultValueBoolean() : bool;
+ }
+}