Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.xerox262.nodamage;
- import org.bukkit.ChatColor;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Arrow;
- import org.bukkit.entity.Player;
- import org.bukkit.entity.ThrownPotion;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.entity.EntityDamageByEntityEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- public class NoDamage extends JavaPlugin implements Listener {
- @Override
- public void onEnable() {
- saveDefaultConfig();
- getServer().getPluginManager().registerEvents(this, this);
- }
- @Override
- public boolean onCommand(CommandSender sender, Command command,
- String label, String[] args) {
- if (sender.hasPermission("nodamage.reload")) {
- reloadConfig();
- sender.sendMessage(ChatColor.GREEN + "Successfully reloaded the configuration file for NoDamage");
- } else {
- sender.sendMessage(ChatColor.DARK_RED
- + "You do not have permission to reload the configuration file");
- }
- return true;
- }
- @EventHandler
- private void damage(EntityDamageByEntityEvent e) {
- String configKey = "";
- switch (e.getDamager().getType()) {
- case ARROW:
- Arrow arrow = (Arrow) e.getDamager();
- if (arrow.getShooter() != null
- && arrow.getShooter() instanceof Player) {
- configKey = "Arrow.Player.";
- } else {
- configKey = "Arrow.Other.";
- }
- break;
- case BLAZE:
- configKey = "Blaze.";
- break;
- case CAVE_SPIDER:
- configKey = "Cave spider.";
- break;
- case EGG:
- configKey = "Egg.";
- break;
- case ENDERMAN:
- configKey = "Enderman.";
- break;
- case ENDER_DRAGON:
- configKey = "Ender dragon.";
- break;
- case ENDER_SIGNAL:
- configKey = "Ender pearl.";
- break;
- case FIREBALL:
- configKey = "Ghast fireball.";
- break;
- case FISHING_HOOK:
- configKey = "Fishing rod.";
- break;
- case GIANT:
- configKey = "Giant.";
- break;
- case IRON_GOLEM:
- configKey = "Iron golem.";
- break;
- case LIGHTNING:
- configKey = "Lightning.";
- break;
- case MAGMA_CUBE:
- configKey = "Magma cube.";
- break;
- case PIG_ZOMBIE:
- configKey = "Pig zombie.";
- break;
- case PLAYER:
- configKey = "Player.";
- break;
- case SILVERFISH:
- configKey = "Silverfish.";
- break;
- case SLIME:
- configKey = "Slime.";
- break;
- case SMALL_FIREBALL:
- configKey = "Blaze fireball.";
- break;
- case SNOWBALL:
- configKey = "Snowball.";
- break;
- case SPIDER:
- configKey = "Spider.";
- break;
- case SPLASH_POTION:
- ThrownPotion potion = (ThrownPotion) e.getDamager();
- if (potion.getShooter() instanceof Player) {
- configKey = "Potion.Player.";
- } else {
- configKey = "Potion.Other.";
- }
- break;
- case WITHER:
- configKey = "Wither.";
- break;
- case WITHER_SKULL:
- configKey = "Wither skull.";
- break;
- case WOLF:
- configKey = "Wolf.";
- break;
- case ZOMBIE:
- configKey = "Zombie.";
- break;
- default:
- return;
- }
- switch (e.getEntity().getType()) {
- case BAT:
- configKey += "Bat";
- break;
- case BLAZE:
- configKey += "Blaze";
- break;
- case BOAT:
- configKey += "Boat";
- break;
- case CAVE_SPIDER:
- configKey += "Cave spider";
- break;
- case CHICKEN:
- configKey += "Chicken";
- break;
- case COW:
- configKey += "Cow";
- break;
- case CREEPER:
- configKey += "Creeper";
- break;
- case ENDERMAN:
- configKey += "Enderman";
- break;
- case ENDER_CRYSTAL:
- configKey += "Ender crystal";
- break;
- case ENDER_DRAGON:
- configKey += "Ender dragon";
- break;
- case FIREBALL:
- configKey += "Ghast fireball";
- break;
- case GHAST:
- configKey += "Ghast";
- break;
- case GIANT:
- configKey += "Giant";
- break;
- case HORSE:
- configKey += "Horse";
- break;
- case IRON_GOLEM:
- configKey += "Iron golem";
- break;
- case ITEM_FRAME:
- configKey += "Item frame";
- break;
- case MAGMA_CUBE:
- configKey += "Magma cube";
- break;
- case MINECART:
- configKey += "Minecart";
- break;
- case MINECART_CHEST:
- configKey += "Chest minecart";
- break;
- case MINECART_COMMAND:
- configKey += "Command block minecart";
- break;
- case MINECART_FURNACE:
- configKey += "Furnace minecart";
- break;
- case MINECART_HOPPER:
- configKey += "Hopper minecart";
- break;
- case MINECART_MOB_SPAWNER:
- configKey += "Mob spawner minecart";
- break;
- case MINECART_TNT:
- configKey += "Tnt minecart";
- break;
- case MUSHROOM_COW:
- configKey += "Mushroom cow";
- break;
- case OCELOT:
- configKey += "Ocelot";
- break;
- case PAINTING:
- configKey += "Painting";
- break;
- case PIG:
- configKey += "Pig";
- break;
- case PIG_ZOMBIE:
- configKey += "Pig zombie";
- break;
- case PLAYER:
- configKey += "Player";
- break;
- case SHEEP:
- configKey += "Sheep";
- break;
- case SILVERFISH:
- configKey += "Silverfish";
- break;
- case SKELETON:
- configKey += "Skeleton";
- break;
- case SLIME:
- configKey += "Slime";
- break;
- case SNOWMAN:
- configKey += "Snowman";
- break;
- case SPIDER:
- configKey += "Spider";
- break;
- case SQUID:
- configKey += "Squid";
- break;
- case VILLAGER:
- configKey += "Villager";
- break;
- case WITCH:
- configKey += "Witch";
- break;
- case WITHER:
- configKey += "Wither";
- break;
- case WOLF:
- configKey += "Wolf";
- break;
- case ZOMBIE:
- configKey += "Zombie";
- break;
- default:
- return;
- }
- if (getConfig().contains(configKey) && getConfig().isBoolean(configKey)
- && !getConfig().getBoolean(configKey)) {
- e.setCancelled(true);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement