mirror of
https://github.com/songoda/FabledSkyBlock.git
synced 2024-09-28 22:47:26 +02:00
Added ProtectorDamage setting
This commit is contained in:
parent
959d52a431
commit
93ae6fd494
@ -83,6 +83,7 @@ public class PermissionManager {
|
|||||||
new ItemDropPermission(),
|
new ItemDropPermission(),
|
||||||
new FishingPermission(plugin),
|
new FishingPermission(plugin),
|
||||||
new CauldronPermission(plugin),
|
new CauldronPermission(plugin),
|
||||||
|
new ProtectorDamagePermission(plugin),
|
||||||
|
|
||||||
// Basic
|
// Basic
|
||||||
new MemberPermission(),
|
new MemberPermission(),
|
||||||
|
@ -5,9 +5,7 @@ import com.songoda.skyblock.SkyBlock;
|
|||||||
import com.songoda.skyblock.permission.ListeningPermission;
|
import com.songoda.skyblock.permission.ListeningPermission;
|
||||||
import com.songoda.skyblock.permission.PermissionHandler;
|
import com.songoda.skyblock.permission.PermissionHandler;
|
||||||
import com.songoda.skyblock.permission.PermissionType;
|
import com.songoda.skyblock.permission.PermissionType;
|
||||||
import org.bukkit.entity.LivingEntity;
|
import org.bukkit.entity.*;
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.bukkit.entity.TNTPrimed;
|
|
||||||
import org.bukkit.entity.minecart.ExplosiveMinecart;
|
import org.bukkit.entity.minecart.ExplosiveMinecart;
|
||||||
import org.bukkit.event.entity.EntityChangeBlockEvent;
|
import org.bukkit.event.entity.EntityChangeBlockEvent;
|
||||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||||
@ -64,7 +62,11 @@ public class MobGriefingPermission extends ListeningPermission {
|
|||||||
&& (!(event.getDamager() instanceof org.bukkit.entity.Projectile)
|
&& (!(event.getDamager() instanceof org.bukkit.entity.Projectile)
|
||||||
|| !(((org.bukkit.entity.Projectile) event.getDamager()).getShooter() instanceof Player))
|
|| !(((org.bukkit.entity.Projectile) event.getDamager()).getShooter() instanceof Player))
|
||||||
&& !(event.getDamager() instanceof TNTPrimed)
|
&& !(event.getDamager() instanceof TNTPrimed)
|
||||||
&& !(event.getDamager() instanceof ExplosiveMinecart)) {
|
&& !(event.getDamager() instanceof ExplosiveMinecart)
|
||||||
|
&& !(event.getDamager() instanceof IronGolem)
|
||||||
|
&& !(event.getDamager() instanceof Snowman)
|
||||||
|
&& !(event.getDamager() instanceof Wolf &&
|
||||||
|
((Wolf) event.getDamager()).isTamed())) {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,29 @@
|
|||||||
|
package com.songoda.skyblock.permission.permissions.listening;
|
||||||
|
|
||||||
|
import com.songoda.core.compatibility.CompatibleMaterial;
|
||||||
|
import com.songoda.skyblock.SkyBlock;
|
||||||
|
import com.songoda.skyblock.permission.ListeningPermission;
|
||||||
|
import com.songoda.skyblock.permission.PermissionHandler;
|
||||||
|
import com.songoda.skyblock.permission.PermissionType;
|
||||||
|
import org.bukkit.entity.*;
|
||||||
|
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||||
|
|
||||||
|
public class ProtectorDamagePermission extends ListeningPermission {
|
||||||
|
|
||||||
|
private final SkyBlock plugin;
|
||||||
|
|
||||||
|
public ProtectorDamagePermission(SkyBlock plugin) {
|
||||||
|
super("ProtectorDamagePermission", CompatibleMaterial.CARVED_PUMPKIN, PermissionType.ISLAND);
|
||||||
|
this.plugin = plugin;
|
||||||
|
}
|
||||||
|
|
||||||
|
@PermissionHandler
|
||||||
|
public void onEntityDamageByEntity(EntityDamageByEntityEvent event) {
|
||||||
|
if(event.getDamager() instanceof IronGolem ||
|
||||||
|
event.getDamager() instanceof Snowman ||
|
||||||
|
(event.getDamager() instanceof Wolf &&
|
||||||
|
((Wolf) event.getDamager()).isTamed())) {
|
||||||
|
event.setCancelled(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1323,6 +1323,8 @@ Menu:
|
|||||||
Displayname: '&aLeaf Decay'
|
Displayname: '&aLeaf Decay'
|
||||||
MobGriefing:
|
MobGriefing:
|
||||||
Displayname: '&aMob Griefing'
|
Displayname: '&aMob Griefing'
|
||||||
|
ProtectorDamage:
|
||||||
|
Displayname: '&aProtector damage'
|
||||||
Status:
|
Status:
|
||||||
Enabled:
|
Enabled:
|
||||||
Lore:
|
Lore:
|
||||||
@ -1793,6 +1795,8 @@ Menu:
|
|||||||
Displayname: '&aNatural Mob Spawning'
|
Displayname: '&aNatural Mob Spawning'
|
||||||
MobGriefing:
|
MobGriefing:
|
||||||
Displayname: '&aMob Griefing'
|
Displayname: '&aMob Griefing'
|
||||||
|
ProtectorDamage:
|
||||||
|
Displayname: '&aProtector Damage'
|
||||||
PvP:
|
PvP:
|
||||||
Displayname: '&aPvP'
|
Displayname: '&aPvP'
|
||||||
Explosions:
|
Explosions:
|
||||||
|
@ -168,6 +168,7 @@ Settings:
|
|||||||
NaturalMobSpawning: true
|
NaturalMobSpawning: true
|
||||||
MobGriefing: true
|
MobGriefing: true
|
||||||
Explosions: true
|
Explosions: true
|
||||||
|
ProtectorDamage: true
|
||||||
FireSpread: true
|
FireSpread: true
|
||||||
LeafDecay: true
|
LeafDecay: true
|
||||||
KeepItemsOnDeath: false
|
KeepItemsOnDeath: false
|
Loading…
Reference in New Issue
Block a user