mirror of
https://github.com/EssentialsX/Essentials.git
synced 2025-02-01 21:11:44 +01:00
Add SmallFireball to EssProtect
This commit is contained in:
parent
8c478c76a5
commit
a886645afa
@ -20,6 +20,7 @@ import org.bukkit.entity.Fireball;
|
|||||||
import org.bukkit.entity.LivingEntity;
|
import org.bukkit.entity.LivingEntity;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.entity.Projectile;
|
import org.bukkit.entity.Projectile;
|
||||||
|
import org.bukkit.entity.SmallFireball;
|
||||||
import org.bukkit.entity.TNTPrimed;
|
import org.bukkit.entity.TNTPrimed;
|
||||||
import org.bukkit.event.entity.CreatureSpawnEvent;
|
import org.bukkit.event.entity.CreatureSpawnEvent;
|
||||||
import org.bukkit.event.entity.EndermanPickupEvent;
|
import org.bukkit.event.entity.EndermanPickupEvent;
|
||||||
@ -38,13 +39,13 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
{
|
{
|
||||||
private final transient IProtect prot;
|
private final transient IProtect prot;
|
||||||
private final transient IEssentials ess;
|
private final transient IEssentials ess;
|
||||||
|
|
||||||
public EssentialsProtectEntityListener(final IProtect prot)
|
public EssentialsProtectEntityListener(final IProtect prot)
|
||||||
{
|
{
|
||||||
this.prot = prot;
|
this.prot = prot;
|
||||||
this.ess = prot.getEssentials();
|
this.ess = prot.getEssentials();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEntityDamage(final EntityDamageEvent event)
|
public void onEntityDamage(final EntityDamageEvent event)
|
||||||
{
|
{
|
||||||
@ -57,7 +58,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
if (event instanceof EntityDamageByBlockEvent)
|
if (event instanceof EntityDamageByBlockEvent)
|
||||||
{
|
{
|
||||||
final DamageCause cause = event.getCause();
|
final DamageCause cause = event.getCause();
|
||||||
|
|
||||||
if (prot.getSettingBool(ProtectConfig.disable_contactdmg)
|
if (prot.getSettingBool(ProtectConfig.disable_contactdmg)
|
||||||
&& cause == DamageCause.CONTACT
|
&& cause == DamageCause.CONTACT
|
||||||
&& !(target instanceof Player
|
&& !(target instanceof Player
|
||||||
@ -86,7 +87,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event instanceof EntityDamageByEntityEvent)
|
if (event instanceof EntityDamageByEntityEvent)
|
||||||
{
|
{
|
||||||
final EntityDamageByEntityEvent edEvent = (EntityDamageByEntityEvent)event;
|
final EntityDamageByEntityEvent edEvent = (EntityDamageByEntityEvent)event;
|
||||||
@ -111,7 +112,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (eAttack instanceof Creeper && prot.getSettingBool(ProtectConfig.prevent_creeper_playerdmg)
|
if (eAttack instanceof Creeper && prot.getSettingBool(ProtectConfig.prevent_creeper_playerdmg)
|
||||||
&& !(target instanceof Player
|
&& !(target instanceof Player
|
||||||
&& user.isAuthorized("essentials.protect.damage.creeper")
|
&& user.isAuthorized("essentials.protect.damage.creeper")
|
||||||
@ -120,8 +121,9 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (eAttack instanceof Fireball && prot.getSettingBool(ProtectConfig.prevent_fireball_playerdmg)
|
if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball)
|
||||||
|
&& prot.getSettingBool(ProtectConfig.prevent_fireball_playerdmg)
|
||||||
&& !(target instanceof Player
|
&& !(target instanceof Player
|
||||||
&& user.isAuthorized("essentials.protect.damage.fireball")
|
&& user.isAuthorized("essentials.protect.damage.fireball")
|
||||||
&& !user.isAuthorized("essentials.protect.damage.disable")))
|
&& !user.isAuthorized("essentials.protect.damage.disable")))
|
||||||
@ -129,7 +131,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
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")
|
||||||
@ -138,7 +140,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (edEvent.getDamager() instanceof Projectile
|
if (edEvent.getDamager() instanceof Projectile
|
||||||
&& target instanceof Player
|
&& target instanceof Player
|
||||||
&& ((prot.getSettingBool(ProtectConfig.disable_projectiles)
|
&& ((prot.getSettingBool(ProtectConfig.disable_projectiles)
|
||||||
@ -153,7 +155,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
final DamageCause cause = event.getCause();
|
final DamageCause cause = event.getCause();
|
||||||
if (target instanceof Player)
|
if (target instanceof Player)
|
||||||
{
|
{
|
||||||
@ -165,7 +167,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cause == DamageCause.SUFFOCATION
|
if (cause == DamageCause.SUFFOCATION
|
||||||
&& prot.getSettingBool(ProtectConfig.disable_suffocate)
|
&& prot.getSettingBool(ProtectConfig.disable_suffocate)
|
||||||
&& !(user.isAuthorized("essentials.protect.damage.suffocation")
|
&& !(user.isAuthorized("essentials.protect.damage.suffocation")
|
||||||
@ -201,7 +203,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEntityExplode(final EntityExplodeEvent event)
|
public void onEntityExplode(final EntityExplodeEvent event)
|
||||||
{
|
{
|
||||||
@ -242,7 +244,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
set.add(cp);
|
set.add(cp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
((CraftServer)ess.getServer()).getHandle().sendPacketNearby(loc.getX(), loc.getY(), loc.getZ(), 64.0D, ((CraftWorld)loc.getWorld()).getHandle().worldProvider.dimension,
|
((CraftServer)ess.getServer()).getHandle().sendPacketNearby(loc.getX(), loc.getY(), loc.getZ(), 64.0D, ((CraftWorld)loc.getWorld()).getHandle().worldProvider.dimension,
|
||||||
new Packet60Explosion(loc.getX(), loc.getY(), loc.getZ(), 3.0f, set));
|
new Packet60Explosion(loc.getX(), loc.getY(), loc.getZ(), 3.0f, set));
|
||||||
}
|
}
|
||||||
@ -259,7 +261,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (event.getEntity() instanceof Fireball
|
else if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball)
|
||||||
&& prot.getSettingBool(ProtectConfig.prevent_fireball_explosion))
|
&& prot.getSettingBool(ProtectConfig.prevent_fireball_explosion))
|
||||||
{
|
{
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
@ -295,7 +297,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreatureSpawn(final CreatureSpawnEvent event)
|
public void onCreatureSpawn(final CreatureSpawnEvent event)
|
||||||
{
|
{
|
||||||
@ -317,7 +319,7 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEntityTarget(final EntityTargetEvent event)
|
public void onEntityTarget(final EntityTargetEvent event)
|
||||||
{
|
{
|
||||||
@ -343,11 +345,11 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onExplosionPrime(ExplosionPrimeEvent event)
|
public void onExplosionPrime(ExplosionPrimeEvent event)
|
||||||
{
|
{
|
||||||
if (event.getEntity() instanceof Fireball
|
if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball)
|
||||||
&& prot.getSettingBool(ProtectConfig.prevent_fireball_fire))
|
&& prot.getSettingBool(ProtectConfig.prevent_fireball_fire))
|
||||||
{
|
{
|
||||||
event.setFire(false);
|
event.setFire(false);
|
||||||
@ -357,10 +359,12 @@ public class EssentialsProtectEntityListener extends EntityListener
|
|||||||
@Override
|
@Override
|
||||||
public void onEndermanPickup(EndermanPickupEvent event)
|
public void onEndermanPickup(EndermanPickupEvent event)
|
||||||
{
|
{
|
||||||
if (event.isCancelled()) {
|
if (event.isCancelled())
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (prot.getSettingBool(ProtectConfig.prevent_enderman_pickup)) {
|
if (prot.getSettingBool(ProtectConfig.prevent_enderman_pickup))
|
||||||
|
{
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user