Added extraction talisman
This commit is contained in:
@@ -9,6 +9,7 @@ import com.willfp.talismans.talismans.talismans.ArcheryTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.CreeperTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.EndTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.ExperienceTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.ExtractionTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.FeatherTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.FlameTalisman;
|
||||
import com.willfp.talismans.talismans.talismans.NetherTalisman;
|
||||
@@ -47,6 +48,7 @@ public class Talismans {
|
||||
public static final Talisman ARCHERY_TALISMAN = new ArcheryTalisman();
|
||||
public static final Talisman POSEIDON_TALISMAN = new PoseidonTalisman();
|
||||
public static final Talisman EXPERIENCE_TALISMAN = new ExperienceTalisman();
|
||||
public static final Talisman EXTRACTION_TALISMAN = new ExtractionTalisman();
|
||||
|
||||
/**
|
||||
* Get all registered {@link Talisman}s.
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.willfp.talismans.talismans.talismans;
|
||||
|
||||
import com.willfp.eco.util.drops.DropQueue;
|
||||
import com.willfp.talismans.talismans.Talisman;
|
||||
import com.willfp.talismans.talismans.Talismans;
|
||||
import com.willfp.talismans.talismans.util.TalismanUtils;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.block.BlockBreakEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class ExtractionTalisman extends Talisman {
|
||||
public ExtractionTalisman() {
|
||||
super("extraction_talisman");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBlockBreak(@NotNull final Player player,
|
||||
@NotNull final Block block,
|
||||
@NotNull final BlockBreakEvent event) {
|
||||
if (!TalismanUtils.passedChance(this)) {
|
||||
return;
|
||||
}
|
||||
|
||||
new DropQueue(player)
|
||||
.addXP(this.getConfig().getInt(Talismans.CONFIG_LOCATION + "xp-amount"))
|
||||
.setLocation(block.getLocation())
|
||||
.push();
|
||||
}
|
||||
}
|
||||
@@ -19,7 +19,7 @@ public class TalismanUtils {
|
||||
* @return If the talisman should then be executed.
|
||||
*/
|
||||
public static boolean passedChance(@NotNull final Talisman talisman) {
|
||||
return NumberUtils.randFloat(0, 1) < (talisman.getConfig().getDouble(Talismans.CONFIG_LOCATION + "chance-per-level") / 100);
|
||||
return NumberUtils.randFloat(0, 1) < (talisman.getConfig().getDouble(Talismans.CONFIG_LOCATION + "chance") / 100);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
name: "Extraction Talisman"
|
||||
description: Chance to get xp while mining.
|
||||
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:
|
||||
- cobblestone
|
||||
- stone
|
||||
- cobblestone
|
||||
|
||||
- stone
|
||||
- gold_block
|
||||
- stone
|
||||
|
||||
- cobblestone
|
||||
- stone
|
||||
- cooblestone
|
||||
|
||||
general-config:
|
||||
disabled-in-worlds: []
|
||||
# Texture is base64, https://minecraft-heads.com has a list of skulls.
|
||||
texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNjU2NjM0YjU1NmNhZjUzODJkZTY1MDM4YTEwZTRkNzljN2MxODY5NTA0ODU5OWRmNzRmOWM2N2MxZTFlODczNiJ9fX0=
|
||||
|
||||
config:
|
||||
chance: 5
|
||||
xp-amount: 10
|
||||
Reference in New Issue
Block a user