mirror of
https://github.com/Auxilor/Reforges.git
synced 2025-12-29 03:49:11 +00:00
Added durable reforge
This commit is contained in:
@@ -6,6 +6,7 @@ import com.google.common.collect.ImmutableSet;
|
||||
import com.willfp.eco.core.config.updating.ConfigUpdater;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeAerobic;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeAffluent;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeDurable;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeDynamic;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeEvasive;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeGravitated;
|
||||
@@ -56,6 +57,7 @@ public class Reforges {
|
||||
public static final Reforge POINTY = new ReforgePointy();
|
||||
public static final Reforge VERSATILE = new ReforgeVersatile();
|
||||
public static final Reforge AFFLUENT = new ReforgeAffluent();
|
||||
public static final Reforge DURABLE = new ReforgeDurable();
|
||||
|
||||
/**
|
||||
* Get all registered {@link Reforge}s.
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.willfp.reforges.reforges.reforges;
|
||||
|
||||
import com.willfp.eco.core.events.EntityDeathByEntityEvent;
|
||||
import com.willfp.eco.util.NumberUtils;
|
||||
import com.willfp.reforges.reforges.Reforge;
|
||||
import com.willfp.reforges.reforges.Reforges;
|
||||
import com.willfp.reforges.reforges.meta.ReforgeTarget;
|
||||
import com.willfp.reforges.reforges.util.ReforgeUtils;
|
||||
import com.willfp.reforges.vault.EconomyHandler;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.entity.Trident;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.player.PlayerItemDamageEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class ReforgeDurable extends Reforge {
|
||||
public ReforgeDurable() {
|
||||
super("durable");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReforgeTarget[] getTarget() {
|
||||
return new ReforgeTarget[]{
|
||||
ReforgeTarget.TRIDENT,
|
||||
ReforgeTarget.ARMOR,
|
||||
ReforgeTarget.BOW,
|
||||
ReforgeTarget.MELEE,
|
||||
ReforgeTarget.PICKAXE
|
||||
};
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void handle(@NotNull final PlayerItemDamageEvent event) {
|
||||
Reforge reforge = ReforgeUtils.getReforge(event.getItem());
|
||||
|
||||
if (reforge == null || !reforge.equals(this)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (NumberUtils.randFloat(0, 100) < this.getConfig().getDouble("percent-less-damage")) {
|
||||
event.setCancelled(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
16
eco-core/core-plugin/src/main/resources/reforges/durable.yml
Normal file
16
eco-core/core-plugin/src/main/resources/reforges/durable.yml
Normal file
@@ -0,0 +1,16 @@
|
||||
#
|
||||
# Durable Reforge
|
||||
#
|
||||
|
||||
name: "<gradient:#FC354C>Durable</gradient:#0ABFBC>"
|
||||
enabled: true
|
||||
description: "Take &a15%&r less durability damage"
|
||||
|
||||
stone-config:
|
||||
requires-stone: false
|
||||
texture: ''
|
||||
craftable: false
|
||||
recipe: []
|
||||
|
||||
config:
|
||||
percent-less-damage: 15
|
||||
Reference in New Issue
Block a user