Added skeleton resistance talisman
This commit is contained in:
@@ -29,6 +29,7 @@ import com.willfp.talismans.talismans.talismans.PoseidonTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.RaidTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.ResistanceTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.SharpnessTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.SkeletonResistanceTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.SkeletonTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.SpeedTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.SpiderResistanceTalisman;
|
||||
@@ -90,6 +91,7 @@ public class Talismans {
|
||||
public static final Talisman VIBRANCE_TALISMAN = new VibranceTalisman();
|
||||
public static final Talisman NECROSIS_TALISMAN = new NecrosisTalisman();
|
||||
public static final Talisman BLAST_TALISMAN = new BlastTalisman();
|
||||
public static final Talisman SKELETON_RESISTANCE_TALISMAN = new SkeletonResistanceTalisman();
|
||||
|
||||
/**
|
||||
* Get all registered {@link Talisman}s.
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
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 lombok.val;
|
||||
import org.bukkit.entity.AbstractArrow;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.entity.Skeleton;
|
||||
import org.bukkit.entity.Zombie;
|
||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class SkeletonResistanceTalisman extends Talisman {
|
||||
public SkeletonResistanceTalisman() {
|
||||
super("skeleton_resistance");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDamageByEntity(@NotNull final TalismanLevel level,
|
||||
@NotNull final Player victim,
|
||||
@NotNull final Entity attacker,
|
||||
@NotNull final EntityDamageByEntityEvent event) {
|
||||
if (!(attacker instanceof AbstractArrow arrow)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!(arrow.getShooter() instanceof Skeleton)) {
|
||||
return;
|
||||
}
|
||||
|
||||
event.setDamage(event.getDamage() * (1 - (level.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-less-damage")) / 100));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
enabled: true
|
||||
disabled-in-worlds: [ ]
|
||||
|
||||
levels:
|
||||
1:
|
||||
name: "&aSkeleton Resistance Talisman"
|
||||
description: Take 25% less damage from skeletons.
|
||||
|
||||
obtaining:
|
||||
craftable: true
|
||||
recipe:
|
||||
- bone
|
||||
- shield
|
||||
- bow
|
||||
|
||||
- shield
|
||||
- ecoitems:talisman_core_1 ? ender_eye
|
||||
- shield
|
||||
|
||||
- bow
|
||||
- shield
|
||||
- bone
|
||||
|
||||
general-config:
|
||||
material: player_head
|
||||
texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZTcyMGIwN2I0YTMwZGJmMDU2MzBhNmM2YWMxOGM4YjQwYzQ2NTJjYWVmMjBmODY3NmEwOTdiYjg0MDE1YTQ3NyJ9fX0=
|
||||
custom-model-data: -1
|
||||
|
||||
config:
|
||||
percent-less-damage: 25
|
||||
Reference in New Issue
Block a user