package com.taiter.ce.Enchantments.Armor; /* * This file is part of Custom Enchantments * Copyright (C) Taiterio 2015 * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the * Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License * for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ import org.bukkit.entity.Player; import org.bukkit.event.Event; import org.bukkit.event.entity.EntityDamageByEntityEvent; import org.bukkit.inventory.ItemStack; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; import com.taiter.ce.Enchantments.CEnchantment; public class Berserker extends CEnchantment { int duration; int strength; int trigger; int cooldown; public Berserker(Application app) { super(app); configEntries.put("DurationPerLevel", 200); configEntries.put("BaseStrength", 5); configEntries.put("HpToTrigger", 4); configEntries.put("Cooldown", 6000); triggers.add(Trigger.DAMAGE_TAKEN); } @Override public void effect(Event e, ItemStack item, int level) { EntityDamageByEntityEvent event = (EntityDamageByEntityEvent) e; Player player = (Player) event.getEntity(); if(player.getHealth() <= trigger) { player.addPotionEffect(new PotionEffect(PotionEffectType.INCREASE_DAMAGE, duration * level, strength + level - 1)); player.sendMessage("Your bloodloss makes you stronger!"); generateCooldown(player, cooldown); } } @Override public void initConfigEntries() { duration = Integer.parseInt(getConfig().getString("Enchantments." + getOriginalName() + ".DurationPerLevel")); strength = Integer.parseInt(getConfig().getString("Enchantments." + getOriginalName() + ".BaseStrength"))-1; trigger = Integer.parseInt(getConfig().getString("Enchantments." + getOriginalName() + ".HpToTrigger")); cooldown = Integer.parseInt(getConfig().getString("Enchantments." + getOriginalName() + ".Cooldown")); } }