[trunk] Protect: new prevent.portal-creation

If enabled, players can't create portals using fire.

git-svn-id: https://svn.java.net/svn/essentials~svn/trunk@1177 e251c2fe-e539-e718-e476-b85c1f46cddb
This commit is contained in:
snowleo 2011-04-11 10:49:45 +00:00
parent 8a30845b1d
commit 0c0a8b2602
3 changed files with 12 additions and 0 deletions

View File

@ -304,6 +304,7 @@ public class Settings implements IConf
epSettings.put("protect.prevent.water-bucket-flow", config.getBoolean("protect.prevent.water-bucket-flow", false));
epSettings.put("protect.prevent.fire-spread", config.getBoolean("protect.prevent.fire-spread", false));
epSettings.put("protect.prevent.flint-fire", config.getBoolean("protect.prevent.flint-fire", false));
epSettings.put("protect.prevent.portal-creation", config.getBoolean("protect.prevent.portal-creation", false));
epSettings.put("protect.prevent.lava-fire-spread", config.getBoolean("protect.prevent.lava-fire-spread", false));
epSettings.put("protect.prevent.tnt-explosion", config.getBoolean("protect.prevent.tnt-explosion", false));
epSettings.put("protect.prevent.creeper-explosion", config.getBoolean("protect.prevent.creeper-explosion", false));

View File

@ -300,6 +300,7 @@ protect:
fire-spread: false
lava-fire-spread: false
flint-fire: false
portal-creation: false
tnt-explosion: false
creeper-explosion: false
creeper-playerdamage: false

View File

@ -2,6 +2,8 @@ package com.earth2me.essentials.protect;
import com.earth2me.essentials.Essentials;
import com.earth2me.essentials.User;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
@ -129,6 +131,14 @@ public class EssentialsProtectBlockListener extends BlockListener
event.setCancelled(true);
return;
}
if (event.getBlock().getType() == Material.OBSIDIAN ||
event.getBlock().getFace(BlockFace.DOWN).getType() == Material.OBSIDIAN)
{
event.setCancelled(EssentialsProtect.guardSettings.get("protect.prevent.portal-creation"));
return;
}
if ((event.getCause().equals(BlockIgniteEvent.IgniteCause.SPREAD)))
{
event.setCancelled(EssentialsProtect.guardSettings.get("protect.prevent.fire-spread"));