mirror of
https://github.com/TotalFreedomMC/TF-EssentialsX.git
synced 2025-04-27 00:49:44 +00:00
Fully support wither blocking in protect
This commit is contained in:
parent
4a18130354
commit
91c193b773
3 changed files with 29 additions and 0 deletions
|
@ -460,6 +460,9 @@ protect:
|
||||||
fireball-explosion: false
|
fireball-explosion: false
|
||||||
fireball-fire: false
|
fireball-fire: false
|
||||||
fireball-playerdamage: false
|
fireball-playerdamage: false
|
||||||
|
witherskull-explosion: flase
|
||||||
|
witherskull-playerdamage: false
|
||||||
|
witherskull-spawnexplosion: flase
|
||||||
creeper-explosion: false
|
creeper-explosion: false
|
||||||
creeper-playerdamage: false
|
creeper-playerdamage: false
|
||||||
creeper-blockdamage: false
|
creeper-blockdamage: false
|
||||||
|
|
|
@ -115,6 +115,16 @@ public class EssentialsProtectEntityListener implements Listener
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((event.getEntity() instanceof WitherSkull
|
||||||
|
&& prot.getSettingBool(ProtectConfig.prevent_witherskull_playerdmg)
|
||||||
|
&& !(target instanceof Player
|
||||||
|
&& user.isAuthorized("essentials.protect.damage.witherskull")
|
||||||
|
&& !user.isAuthorized("essentials.protect.damage.disable"))))
|
||||||
|
{
|
||||||
|
event.setCancelled(true);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (eAttack instanceof TNTPrimed && prot.getSettingBool(ProtectConfig.prevent_tnt_playerdmg)
|
if (eAttack instanceof TNTPrimed && prot.getSettingBool(ProtectConfig.prevent_tnt_playerdmg)
|
||||||
&& !(target instanceof Player
|
&& !(target instanceof Player
|
||||||
&& user.isAuthorized("essentials.protect.damage.tnt")
|
&& user.isAuthorized("essentials.protect.damage.tnt")
|
||||||
|
@ -214,6 +224,12 @@ public class EssentialsProtectEntityListener implements Listener
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (event.getEntity() instanceof WitherSkull
|
||||||
|
&& prot.getSettingBool(ProtectConfig.prevent_witherskull_spawnexplosion))
|
||||||
|
{
|
||||||
|
event.setCancelled(true);
|
||||||
|
return;
|
||||||
|
}
|
||||||
else if (event.getEntity() instanceof Creeper
|
else if (event.getEntity() instanceof Creeper
|
||||||
&& (prot.getSettingBool(ProtectConfig.prevent_creeper_explosion)
|
&& (prot.getSettingBool(ProtectConfig.prevent_creeper_explosion)
|
||||||
|| prot.getSettingBool(ProtectConfig.prevent_creeper_blockdmg)
|
|| prot.getSettingBool(ProtectConfig.prevent_creeper_blockdmg)
|
||||||
|
@ -236,6 +252,13 @@ public class EssentialsProtectEntityListener implements Listener
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
else if ((event.getEntity() instanceof WitherSkull)
|
||||||
|
&& prot.getSettingBool(ProtectConfig.prevent_witherskull_explosion))
|
||||||
|
{
|
||||||
|
event.setCancelled(true);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// This code will prevent explosions near protected rails, signs or protected chests
|
// This code will prevent explosions near protected rails, signs or protected chests
|
||||||
// TODO: Use protect db instead of this code
|
// TODO: Use protect db instead of this code
|
||||||
|
|
||||||
|
|
|
@ -35,6 +35,9 @@ public enum ProtectConfig
|
||||||
prevent_fireball_explosion("protect.prevent.fireball-explosion", false),
|
prevent_fireball_explosion("protect.prevent.fireball-explosion", false),
|
||||||
prevent_fireball_fire("protect.prevent.fireball-fire", false),
|
prevent_fireball_fire("protect.prevent.fireball-fire", false),
|
||||||
prevent_fireball_playerdmg("protect.prevent.fireball-playerdamage", false),
|
prevent_fireball_playerdmg("protect.prevent.fireball-playerdamage", false),
|
||||||
|
prevent_witherskull_explosion("protect.prevent.witherskull-explosion", false),
|
||||||
|
prevent_witherskull_playerdmg("protect.prevent.witherskull-playerdamage", false),
|
||||||
|
prevent_witherskull_spawnexplosion("protect.prevent.witherskull-spawnexplosion", false),
|
||||||
prevent_creeper_explosion("protect.prevent.creeper-explosion", true),
|
prevent_creeper_explosion("protect.prevent.creeper-explosion", true),
|
||||||
prevent_creeper_playerdmg("protect.prevent.creeper-playerdamage", false),
|
prevent_creeper_playerdmg("protect.prevent.creeper-playerdamage", false),
|
||||||
prevent_creeper_blockdmg("protect.prevent.creeper-blockdamage", false),
|
prevent_creeper_blockdmg("protect.prevent.creeper-blockdamage", false),
|
||||||
|
|
Loading…
Reference in a new issue