Merge remote-tracking branch 'origin/master'

This commit is contained in:
Auxilor
2021-06-17 09:39:47 +01:00
14 changed files with 78 additions and 433 deletions

View File

@@ -4,13 +4,11 @@ import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.NamespacedKey;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Boss;
import org.bukkit.entity.ElderGuardian;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.persistence.PersistentDataType;
import org.jetbrains.annotations.NotNull;
@@ -21,36 +19,10 @@ public class BossTalisman extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof ElderGuardian) && !victim.getPersistentDataContainer().has(new NamespacedKey("ecobosses", "boss"), PersistentDataType.STRING)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof ElderGuardian) && !victim.getPersistentDataContainer().has(new NamespacedKey("ecobosses", "boss"), PersistentDataType.STRING)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (!(victim instanceof Boss || victim instanceof ElderGuardian) && !victim.getPersistentDataContainer().has(new NamespacedKey("ecobosses", "boss"), PersistentDataType.STRING)) {
return;
}

View File

@@ -3,12 +3,10 @@ package com.willfp.talismans.talismans.talismans;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Creeper;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class CreeperTalisman extends Talisman {
@@ -17,36 +15,10 @@ public class CreeperTalisman extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Creeper)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Creeper)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (!(victim instanceof Creeper)) {
return;
}

View File

@@ -4,11 +4,9 @@ import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.World;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class DayCrystal extends Talisman {
@@ -17,44 +15,10 @@ public class DayCrystal extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!attacker.getWorld().getEnvironment().equals(World.Environment.NORMAL)) {
return;
}
if (!(attacker.getWorld().getTime() < 12300 && attacker.getWorld().getTime() > 23850)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!attacker.getWorld().getEnvironment().equals(World.Environment.NORMAL)) {
return;
}
if (!(attacker.getWorld().getTime() < 12300 && attacker.getWorld().getTime() > 23850)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (!attacker.getWorld().getEnvironment().equals(World.Environment.NORMAL)) {
return;
}

View File

@@ -4,11 +4,9 @@ import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.World;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class EndTalisman extends Talisman {
@@ -17,36 +15,10 @@ public class EndTalisman extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (attacker.getWorld().getEnvironment() != World.Environment.THE_END) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (attacker.getWorld().getEnvironment() != World.Environment.THE_END) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (attacker.getWorld().getEnvironment() != World.Environment.THE_END) {
return;
}

View File

@@ -3,15 +3,12 @@ package com.willfp.talismans.talismans.talismans;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.World;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Entity;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Skeleton;
import org.bukkit.entity.Trident;
import org.bukkit.entity.Zombie;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class NecromanceRing extends Talisman {
@@ -20,64 +17,10 @@ public class NecromanceRing extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
int count = 0;
double distance = level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "distance");
for (Entity nearbyEntity : attacker.getNearbyEntities(distance, distance, distance)) {
if (!(nearbyEntity instanceof Zombie || nearbyEntity instanceof Skeleton)) {
continue;
}
count++;
}
if (count == 0) {
return;
}
double multiplier = level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "multiplier-per-mob");
multiplier *= count;
multiplier += 1;
event.setDamage(event.getDamage() * multiplier);
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
int count = 0;
double distance = level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "distance");
for (Entity nearbyEntity : attacker.getNearbyEntities(distance, distance, distance)) {
if (!(nearbyEntity instanceof Zombie || nearbyEntity instanceof Skeleton)) {
continue;
}
count++;
}
if (count == 0) {
return;
}
double multiplier = level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "multiplier-per-mob");
multiplier *= count;
multiplier += 1;
event.setDamage(event.getDamage() * multiplier);
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
int count = 0;
double distance = level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "distance");
for (Entity nearbyEntity : attacker.getNearbyEntities(distance, distance, distance)) {

View File

@@ -4,11 +4,9 @@ import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.World;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class NetherTalisman extends Talisman {
@@ -17,36 +15,10 @@ public class NetherTalisman extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (attacker.getWorld().getEnvironment() != World.Environment.NETHER) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (attacker.getWorld().getEnvironment() != World.Environment.NETHER) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (attacker.getWorld().getEnvironment() != World.Environment.NETHER) {
return;
}

View File

@@ -4,11 +4,9 @@ import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.World;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class NightCrystal extends Talisman {
@@ -17,44 +15,10 @@ public class NightCrystal extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!attacker.getWorld().getEnvironment().equals(World.Environment.NORMAL)) {
return;
}
if (!(attacker.getWorld().getTime() > 12300 && attacker.getWorld().getTime() < 23850)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!attacker.getWorld().getEnvironment().equals(World.Environment.NORMAL)) {
return;
}
if (!(attacker.getWorld().getTime() > 12300 && attacker.getWorld().getTime() < 23850)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (!attacker.getWorld().getEnvironment().equals(World.Environment.NORMAL)) {
return;
}

View File

@@ -3,12 +3,10 @@ package com.willfp.talismans.talismans.talismans;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Illager;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class RaidTalisman extends Talisman {
@@ -17,36 +15,10 @@ public class RaidTalisman extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Illager)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Illager)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (!(victim instanceof Illager)) {
return;
}

View File

@@ -3,12 +3,10 @@ package com.willfp.talismans.talismans.talismans;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Skeleton;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class SkeletonTalisman extends Talisman {
@@ -17,36 +15,10 @@ public class SkeletonTalisman extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Skeleton)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Skeleton)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (!(victim instanceof Skeleton)) {
return;
}

View File

@@ -3,12 +3,10 @@ package com.willfp.talismans.talismans.talismans;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Spider;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class SpiderTalisman extends Talisman {
@@ -17,36 +15,10 @@ public class SpiderTalisman extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Spider)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Spider)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (!(victim instanceof Spider)) {
return;
}

View File

@@ -3,11 +3,9 @@ package com.willfp.talismans.talismans.talismans;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class StrengthTalisman extends Talisman {
@@ -16,28 +14,10 @@ public class StrengthTalisman extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
}

View File

@@ -3,12 +3,10 @@ package com.willfp.talismans.talismans.talismans;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.TalismanLevel;
import com.willfp.talismans.talismans.Talismans;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.entity.Zombie;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.jetbrains.annotations.NotNull;
public class ZombieTalisman extends Talisman {
@@ -17,36 +15,10 @@ public class ZombieTalisman extends Talisman {
}
@Override
public void onMeleeAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Zombie)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Zombie)) {
return;
}
event.setDamage(event.getDamage() * (1 + (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
public void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
if (!(victim instanceof Zombie)) {
return;
}

View File

@@ -65,6 +65,21 @@ public interface Watcher {
// Empty default as talismans only override required watchers.
}
/**
* Called when a player another entity with any attack.
*
* @param level The level.
* @param attacker The attacker.
* @param victim The victim.
* @param event The event that called this watcher.
*/
default void onAnyAttack(@NotNull final TalismanLevel level,
@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageEvent event) {
// Empty default as talismans only override required watchers.
}
/**
* Called when a player another entity with a melee attack.
*

View File

@@ -107,6 +107,7 @@ public class WatcherTriggers extends PluginDependent implements Listener {
}
talismanLevel.getTalisman().onArrowDamage(talismanLevel, attacker, victim, arrow, event);
talismanLevel.getTalisman().onAnyAttack(talismanLevel, attacker, victim, event);
});
}
@@ -168,6 +169,7 @@ public class WatcherTriggers extends PluginDependent implements Listener {
}
talismanLevel.getTalisman().onTridentDamage(talismanLevel, attacker, victim, trident, event);
talismanLevel.getTalisman().onAnyAttack(talismanLevel, attacker, victim, event);
});
}
@@ -265,6 +267,7 @@ public class WatcherTriggers extends PluginDependent implements Listener {
}
talismanLevel.getTalisman().onMeleeAttack(talismanLevel, attacker, victim, event);
talismanLevel.getTalisman().onAnyAttack(talismanLevel, attacker, victim, event);
});
}