Added Plasmic
This commit is contained in:
@@ -246,6 +246,7 @@ public class EcoEnchants {
|
||||
public static final EcoEnchant EXTRACTION = new Extraction();
|
||||
public static final EcoEnchant DWELLER = new Dweller();
|
||||
public static final EcoEnchant STALWART = new Stalwart();
|
||||
public static final EcoEnchant PLASMIC = new Plasmic();
|
||||
|
||||
/**
|
||||
* Get all registered {@link EcoEnchant}s
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
package com.willfp.ecoenchants.enchantments.ecoenchants.normal;
|
||||
|
||||
import com.willfp.ecoenchants.enchantments.EcoEnchant;
|
||||
import com.willfp.ecoenchants.enchantments.EcoEnchants;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||
import org.bukkit.inventory.EntityEquipment;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
public final class Plasmic extends EcoEnchant {
|
||||
public Plasmic() {
|
||||
super(
|
||||
"plasmic", EnchantmentType.NORMAL
|
||||
);
|
||||
}
|
||||
|
||||
// START OF LISTENERS
|
||||
|
||||
private static final Material[] items = {
|
||||
Material.DIAMOND_HELMET,
|
||||
Material.DIAMOND_CHESTPLATE,
|
||||
Material.DIAMOND_LEGGINGS,
|
||||
Material.DIAMOND_BOOTS,
|
||||
|
||||
Material.NETHERITE_HELMET,
|
||||
Material.NETHERITE_CHESTPLATE,
|
||||
Material.NETHERITE_LEGGINGS,
|
||||
Material.NETHERITE_BOOTS
|
||||
};
|
||||
|
||||
@Override
|
||||
public void onMeleeAttack(LivingEntity attacker, LivingEntity victim, int level, EntityDamageByEntityEvent event) {
|
||||
EntityEquipment equipment = victim.getEquipment();
|
||||
if(equipment == null) return;
|
||||
|
||||
int pieces = 0;
|
||||
for (ItemStack armorPiece : equipment.getArmorContents()) {
|
||||
if(armorPiece == null) continue;
|
||||
if(Arrays.asList(items).contains(armorPiece.getType())) pieces++;
|
||||
}
|
||||
|
||||
if(pieces == 0) return;
|
||||
|
||||
double multiplier = this.getConfig().getDouble(EcoEnchants.CONFIG_LOCATION + "multiplier");
|
||||
|
||||
event.setDamage(event.getDamage() * (1 + (level * multiplier * pieces)));
|
||||
}
|
||||
}
|
||||
24
Plugin/src/main/resources/enchants/normal/plasmic.yml
Normal file
24
Plugin/src/main/resources/enchants/normal/plasmic.yml
Normal file
@@ -0,0 +1,24 @@
|
||||
#
|
||||
# Plasmic EcoEnchant
|
||||
#
|
||||
|
||||
name: "Plasmic"
|
||||
description: Increases damage dealt against opponents with diamond or netherite armor.
|
||||
enabled: true
|
||||
|
||||
obtaining:
|
||||
table: true
|
||||
villager: true
|
||||
loot: true
|
||||
rarity: legendary
|
||||
|
||||
general-config:
|
||||
targets:
|
||||
- sword
|
||||
grindstoneable: true
|
||||
conflicts:
|
||||
- voltage
|
||||
maximum-level: 5
|
||||
|
||||
config:
|
||||
multiplier: 0.015 # bonus damage multiplier = multiplier * level * pieces
|
||||
@@ -16,7 +16,8 @@ general-config:
|
||||
targets:
|
||||
- sword
|
||||
grindstoneable: true
|
||||
conflicts: []
|
||||
conflicts:
|
||||
- plasmic
|
||||
maximum-level: 5
|
||||
|
||||
config:
|
||||
|
||||
Reference in New Issue
Block a user