Added boss talisman/ring/relic and changed nether talisman crafting recipe

This commit is contained in:
Auxilor
2021-01-16 15:39:07 +00:00
parent 52d408b824
commit 934563bc43
8 changed files with 257 additions and 8 deletions

View File

@@ -7,6 +7,7 @@ import com.google.common.collect.ImmutableList;
import com.willfp.eco.util.config.updating.annotations.ConfigUpdater;
import com.willfp.talismans.talismans.talismans.relic.AlchemyRelic;
import com.willfp.talismans.talismans.talismans.relic.ArcheryRelic;
import com.willfp.talismans.talismans.talismans.relic.BossRelic;
import com.willfp.talismans.talismans.talismans.relic.EndRelic;
import com.willfp.talismans.talismans.talismans.relic.ExperienceRelic;
import com.willfp.talismans.talismans.talismans.relic.ExtractionRelic;
@@ -23,6 +24,7 @@ import com.willfp.talismans.talismans.talismans.relic.SpeedRelic;
import com.willfp.talismans.talismans.talismans.relic.StrengthRelic;
import com.willfp.talismans.talismans.talismans.ring.AlchemyRing;
import com.willfp.talismans.talismans.talismans.ring.ArcheryRing;
import com.willfp.talismans.talismans.talismans.ring.BossRing;
import com.willfp.talismans.talismans.talismans.ring.EndRing;
import com.willfp.talismans.talismans.talismans.ring.ExperienceRing;
import com.willfp.talismans.talismans.talismans.ring.ExtractionRing;
@@ -39,6 +41,7 @@ import com.willfp.talismans.talismans.talismans.ring.SpeedRing;
import com.willfp.talismans.talismans.talismans.ring.StrengthRing;
import com.willfp.talismans.talismans.talismans.talisman.AlchemyTalisman;
import com.willfp.talismans.talismans.talismans.talisman.ArcheryTalisman;
import com.willfp.talismans.talismans.talismans.talisman.BossTalisman;
import com.willfp.talismans.talismans.talismans.talisman.CreeperTalisman;
import com.willfp.talismans.talismans.talismans.talisman.EndTalisman;
import com.willfp.talismans.talismans.talismans.talisman.ExperienceTalisman;
@@ -133,6 +136,9 @@ public class Talismans {
public static final Talisman SPEED_TALISMAN = new SpeedTalisman();
public static final Talisman SPEED_RING = new SpeedRing();
public static final Talisman SPEED_RELIC = new SpeedRelic();
public static final Talisman BOSS_TALISMAN = new BossTalisman();
public static final Talisman BOSS_RING = new BossRing();
public static final Talisman BOSS_RELIC = new BossRelic();
/**
* Get all registered {@link Talisman}s.

View File

@@ -0,0 +1,54 @@
package com.willfp.talismans.talismans.talismans.relic;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.Talismans;
import com.willfp.talismans.talismans.meta.TalismanStrength;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Boss;
import org.bukkit.entity.Illusioner;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.jetbrains.annotations.NotNull;
public class BossRelic extends Talisman {
public BossRelic() {
super("boss_relic", TalismanStrength.RELIC);
}
@Override
public void onMeleeAttack(@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof Illusioner)) {
return;
}
event.setDamage(event.getDamage() * (1 + (this.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof Illusioner)) {
return;
}
event.setDamage(event.getDamage() * (1 + (this.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof Illusioner)) {
return;
}
event.setDamage(event.getDamage() * (1 + (this.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
}

View File

@@ -0,0 +1,54 @@
package com.willfp.talismans.talismans.talismans.ring;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.Talismans;
import com.willfp.talismans.talismans.meta.TalismanStrength;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Boss;
import org.bukkit.entity.Illusioner;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.jetbrains.annotations.NotNull;
public class BossRing extends Talisman {
public BossRing() {
super("boss_ring", TalismanStrength.RING);
}
@Override
public void onMeleeAttack(@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof Illusioner)) {
return;
}
event.setDamage(event.getDamage() * (1 + (this.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof Illusioner)) {
return;
}
event.setDamage(event.getDamage() * (1 + (this.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof Illusioner)) {
return;
}
event.setDamage(event.getDamage() * (1 + (this.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
}

View File

@@ -0,0 +1,54 @@
package com.willfp.talismans.talismans.talismans.talisman;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.Talismans;
import com.willfp.talismans.talismans.meta.TalismanStrength;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Boss;
import org.bukkit.entity.Illusioner;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Trident;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.jetbrains.annotations.NotNull;
public class BossTalisman extends Talisman {
public BossTalisman() {
super("boss_talisman", TalismanStrength.TALISMAN);
}
@Override
public void onMeleeAttack(@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof Illusioner)) {
return;
}
event.setDamage(event.getDamage() * (1 + (this.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onArrowDamage(@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Arrow arrow,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof Illusioner)) {
return;
}
event.setDamage(event.getDamage() * (1 + (this.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
@Override
public void onTridentDamage(@NotNull final Player attacker,
@NotNull final LivingEntity victim,
@NotNull final Trident trident,
@NotNull final EntityDamageByEntityEvent event) {
if (!(victim instanceof Boss || victim instanceof Illusioner)) {
return;
}
event.setDamage(event.getDamage() * (1 + (this.getConfig().getDouble(Talismans.CONFIG_LOCATION + "percent-more-damage")) / 100));
}
}

View File

@@ -0,0 +1,27 @@
name: "Boss Relic"
description: Deal 40% more damage to bosses.
enabled: true
obtaining:
# Recipes are left-right, top-bottom
# The first item is the top left, the second is top middle, and so on. The last is bottom right.
recipe:
- talismans:boss_ring
- talismans:boss_ring
- talismans:boss_ring
- talismans:boss_ring
- nether_star
- talismans:boss_ring
- talismans:boss_ring
- talismans:boss_ring
- talismans:boss_ring
general-config:
disabled-in-worlds: []
# Texture is base64, https://minecraft-heads.com has a list of skulls.
texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMmE0NjUxZDY2Nzc5MjA4ZGExMDdkNmUyZmZkOTZjNjJlMDY3YzJlNzc1MzA3OWFhYTgzYWNlOGZiNDk4OTUifX19
config:
percent-more-damage: 40

View File

@@ -0,0 +1,27 @@
name: "Boss Ring"
description: Deal 25% more damage to bosses.
enabled: true
obtaining:
# Recipes are left-right, top-bottom
# The first item is the top left, the second is top middle, and so on. The last is bottom right.
recipe:
- talismans:boss_talisman
- talismans:boss_talisman
- talismans:boss_talisman
- talismans:boss_talisman
- heart_of_the_sea
- talismans:boss_talisman
- talismans:boss_talisman
- talismans:boss_talisman
- talismans:boss_talisman
general-config:
disabled-in-worlds: []
# Texture is base64, https://minecraft-heads.com has a list of skulls.
texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNzgzYWI0MmYyMmFkZDkzNjZkODkzNjRiYTNhZTIwMTNmYTQ1YTQ1NWNkODdjYTZhYWQ4MmY0MDFhNzcifX19
config:
percent-more-damage: 25

View File

@@ -0,0 +1,27 @@
name: "Boss Talisman"
description: Deal 10% more damage to bosses.
enabled: true
obtaining:
# Recipes are left-right, top-bottom
# The first item is the top left, the second is top middle, and so on. The last is bottom right.
recipe:
- bell
- wither_skeleton_skull
- bell
- wither_skeleton_skull
- ender_eye
- wither_skeleton_skull
- bell
- wither_skeleton_skull
- bell
general-config:
disabled-in-worlds: []
# Texture is base64, https://minecraft-heads.com has a list of skulls.
texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYTFjZDZkMmQwM2YxMzVlN2M2YjVkNmNkYWUxYjNhNjg3NDNkYjRlYjc0OWZhZjczNDFlOWZiMzQ3YWEyODNiIn19fQ==
config:
percent-more-damage: 10

View File

@@ -6,17 +6,17 @@ obtaining:
# Recipes are left-right, top-bottom
# The first item is the top left, the second is top middle, and so on. The last is bottom right.
recipe:
- wither_skeleton_skull
- wither_skeleton_skull
- wither_skeleton_skull
- netherrack
- netherrack
- netherrack
- wither_skeleton_skull
- netherrack
- ender_eye
- wither_skeleton_skull
- netherrack
- wither_skeleton_skull
- wither_skeleton_skull
- wither_skeleton_skull
- netherrack
- netherrack
- netherrack
general-config:
disabled-in-worlds: []