mirror of
https://github.com/Auxilor/Reforges.git
synced 2026-01-06 15:51:32 +00:00
Added Affluent, Nautical, Pointy, and Versatile reforges
This commit is contained in:
@@ -5,11 +5,14 @@ import com.google.common.collect.HashBiMap;
|
||||
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.ReforgeDynamic;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeEvasive;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeGravitated;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeLight;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeLucky;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeNautical;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgePointy;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeReinforced;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeRich;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeSharp;
|
||||
@@ -17,6 +20,7 @@ import com.willfp.reforges.reforges.reforges.ReforgeStreamlined;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeStrong;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeThin;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeTough;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeVersatile;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeWealthy;
|
||||
import com.willfp.reforges.reforges.reforges.ReforgeWise;
|
||||
import lombok.experimental.UtilityClass;
|
||||
@@ -48,6 +52,10 @@ public class Reforges {
|
||||
public static final Reforge TOUGH = new ReforgeTough();
|
||||
public static final Reforge REINFORCED = new ReforgeReinforced();
|
||||
public static final Reforge EVASIVE = new ReforgeEvasive();
|
||||
public static final Reforge NAUTICAL = new ReforgeNautical();
|
||||
public static final Reforge POINTY = new ReforgePointy();
|
||||
public static final Reforge VERSATILE = new ReforgeVersatile();
|
||||
public static final Reforge AFFLUENT = new ReforgeAffluent();
|
||||
|
||||
/**
|
||||
* Get all registered {@link Reforge}s.
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
package com.willfp.reforges.reforges.reforges;
|
||||
|
||||
import com.willfp.eco.core.events.EntityDeathByEntityEvent;
|
||||
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.jetbrains.annotations.NotNull;
|
||||
|
||||
public class ReforgeAffluent extends Reforge {
|
||||
public ReforgeAffluent() {
|
||||
super("affluent");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReforgeTarget getTarget() {
|
||||
return ReforgeTarget.TRIDENT;
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onKill(@NotNull final EntityDeathByEntityEvent event) {
|
||||
if (!(event.getKiller() instanceof Trident trident)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!(trident.getShooter() instanceof Player player)) {
|
||||
return;
|
||||
}
|
||||
|
||||
Reforge reforge = ReforgeUtils.getReforge(trident.getItem());
|
||||
|
||||
if (reforge == null || !reforge.equals(this)) {
|
||||
return;
|
||||
}
|
||||
|
||||
EconomyHandler.getInstance().depositPlayer(player, this.getConfig().getDouble(Reforges.CONFIG_LOCATION + "money"));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.willfp.reforges.reforges.reforges;
|
||||
|
||||
import com.willfp.reforges.reforges.Reforge;
|
||||
import com.willfp.reforges.reforges.Reforges;
|
||||
import com.willfp.reforges.reforges.meta.ReforgeTarget;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Trident;
|
||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class ReforgeNautical extends Reforge {
|
||||
public ReforgeNautical() {
|
||||
super("nautical");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReforgeTarget getTarget() {
|
||||
return ReforgeTarget.TRIDENT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTridentDamage(@NotNull final LivingEntity attacker,
|
||||
@NotNull final LivingEntity victim,
|
||||
@NotNull final Trident trident,
|
||||
@NotNull final EntityDamageByEntityEvent event) {
|
||||
if (attacker.isInWater()) {
|
||||
event.setDamage(event.getDamage() * this.getConfig().getDouble(Reforges.CONFIG_LOCATION + "multiplier"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.willfp.reforges.reforges.reforges;
|
||||
|
||||
import com.willfp.reforges.reforges.Reforge;
|
||||
import com.willfp.reforges.reforges.Reforges;
|
||||
import com.willfp.reforges.reforges.meta.ReforgeTarget;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Trident;
|
||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class ReforgePointy extends Reforge {
|
||||
public ReforgePointy() {
|
||||
super("pointy");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReforgeTarget getTarget() {
|
||||
return ReforgeTarget.TRIDENT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTridentDamage(@NotNull final LivingEntity attacker,
|
||||
@NotNull final LivingEntity victim,
|
||||
@NotNull final Trident trident,
|
||||
@NotNull final EntityDamageByEntityEvent event) {
|
||||
event.setDamage(event.getDamage() * this.getConfig().getDouble(Reforges.CONFIG_LOCATION + "multiplier"));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.willfp.reforges.reforges.reforges;
|
||||
|
||||
import com.willfp.reforges.reforges.Reforge;
|
||||
import com.willfp.reforges.reforges.Reforges;
|
||||
import com.willfp.reforges.reforges.meta.ReforgeTarget;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class ReforgeVersatile extends Reforge {
|
||||
public ReforgeVersatile() {
|
||||
super("versatile");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReforgeTarget getTarget() {
|
||||
return ReforgeTarget.TRIDENT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onMeleeAttack(@NotNull final LivingEntity attacker,
|
||||
@NotNull final LivingEntity victim,
|
||||
@NotNull final EntityDamageByEntityEvent event) {
|
||||
event.setDamage(event.getDamage() * this.getConfig().getDouble(Reforges.CONFIG_LOCATION + "multiplier"));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
#
|
||||
# Affluent Reforge
|
||||
#
|
||||
|
||||
name: "<gradient:#E6DADA>Affluent</gradient:#274046>"
|
||||
enabled: true
|
||||
description: "Gain &e\$100&r for each mob you kill"
|
||||
|
||||
stone-config:
|
||||
requires-stone: true
|
||||
texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvY2RjNTdjNzVhZGYzOWVjNmYwZTA5MTYwNDlkZDk2NzFlOThhOGExZTYwMDEwNGU4NGU2NDVjOTg4OTUwYmQ3In19fQ==
|
||||
craftable: false
|
||||
recipe: []
|
||||
|
||||
config:
|
||||
money: 100
|
||||
@@ -0,0 +1,16 @@
|
||||
#
|
||||
# Nautical Reforge
|
||||
#
|
||||
|
||||
name: "<gradient:#373B44>Nautical</gradient:#4286f4>"
|
||||
enabled: true
|
||||
description: "Deal &a20%&r more damage when shot from water"
|
||||
|
||||
stone-config:
|
||||
requires-stone: false
|
||||
texture: ''
|
||||
craftable: false
|
||||
recipe: []
|
||||
|
||||
config:
|
||||
multiplier: 1.2 # Damage multiplier
|
||||
16
eco-core/core-plugin/src/main/resources/reforges/pointy.yml
Normal file
16
eco-core/core-plugin/src/main/resources/reforges/pointy.yml
Normal file
@@ -0,0 +1,16 @@
|
||||
#
|
||||
# Pointy Reforge
|
||||
#
|
||||
|
||||
name: "<gradient:#076585>Pointy</gradient:#ffffff>"
|
||||
enabled: true
|
||||
description: "Deal &a10%&r more damage"
|
||||
|
||||
stone-config:
|
||||
requires-stone: false
|
||||
texture: ''
|
||||
craftable: false
|
||||
recipe: []
|
||||
|
||||
config:
|
||||
multiplier: 1.10 # Damage multiplier
|
||||
@@ -0,0 +1,16 @@
|
||||
#
|
||||
# Versatile Reforge
|
||||
#
|
||||
|
||||
name: "<gradient:#ED4264>Versatile</gradient:#FFEDBC>"
|
||||
enabled: true
|
||||
description: "Deal &a45%&r more melee damage"
|
||||
|
||||
stone-config:
|
||||
requires-stone: false
|
||||
texture: ''
|
||||
craftable: false
|
||||
recipe: []
|
||||
|
||||
config:
|
||||
multiplier: 1.45 # Damage multiplier
|
||||
Reference in New Issue
Block a user