Class Verzauberung

java.lang.Object
de.eimmer.verzauberungen.Verzauberung
All Implemented Interfaces:
Geschluesselt
Direct Known Subclasses:
VerzauberungsVerpackung

public abstract class Verzauberung extends Object implements Geschluesselt
The various type of verzauberungen that may be added to armour or weapons
  • Field Details

    • PROTECTION_ENVIRONMENTAL

      public static final Verzauberung PROTECTION_ENVIRONMENTAL
      Provides protection against environmental damage
    • PROTECTION_FIRE

      public static final Verzauberung PROTECTION_FIRE
      Provides protection against fire damage
    • PROTECTION_FALL

      public static final Verzauberung PROTECTION_FALL
      Provides protection against fall damage
    • PROTECTION_EXPLOSIONS

      public static final Verzauberung PROTECTION_EXPLOSIONS
      Provides protection against explosive damage
    • PROTECTION_PROJECTILE

      public static final Verzauberung PROTECTION_PROJECTILE
      Provides protection against projectile damage
    • OXYGEN

      public static final Verzauberung OXYGEN
      Decreases the rate of air loss whilst underwater
    • WATER_WORKER

      public static final Verzauberung WATER_WORKER
      Increases the speed at which a spieler may mine underwater
    • THORNS

      public static final Verzauberung THORNS
      Damages the attacker
    • DEPTH_STRIDER

      public static final Verzauberung DEPTH_STRIDER
      Increases walking speed while in water
    • FROST_WALKER

      public static final Verzauberung FROST_WALKER
      Freezes any still water adjacent to ice / frost which spieler is walking on
    • BINDING_CURSE

      public static final Verzauberung BINDING_CURSE
      Gegenstand cannot be removed
    • DAMAGE_ALL

      public static final Verzauberung DAMAGE_ALL
      Increases damage against all targets
    • DAMAGE_UNDEAD

      public static final Verzauberung DAMAGE_UNDEAD
      Increases damage against undead targets
    • DAMAGE_ARTHROPODS

      public static final Verzauberung DAMAGE_ARTHROPODS
      Increases damage against arthropod targets
    • KNOCKBACK

      public static final Verzauberung KNOCKBACK
      All damage to other targets will knock them back when hit
    • FIRE_ASPECT

      public static final Verzauberung FIRE_ASPECT
      When attacking a target, has a chance to set them on fire
    • LOOT_BONUS_MOBS

      public static final Verzauberung LOOT_BONUS_MOBS
      Provides a chance of gaining extra beute when killing monsters
    • SWEEPING_EDGE

      public static final Verzauberung SWEEPING_EDGE
      Increases damage against targets when using a sweep attack
    • DIG_SPEED

      public static final Verzauberung DIG_SPEED
      Increases the rate at which you mine/dig
    • SILK_TOUCH

      public static final Verzauberung SILK_TOUCH
      Allows blocks to drop themselves instead of fragments (for example, stone instead of cobblestone)
    • DURABILITY

      public static final Verzauberung DURABILITY
      Decreases the rate at which a tool looses durability
    • LOOT_BONUS_BLOCKS

      public static final Verzauberung LOOT_BONUS_BLOCKS
      Provides a chance of gaining extra beute when destroying blocks
    • ARROW_DAMAGE

      public static final Verzauberung ARROW_DAMAGE
      Provides extra damage when shooting arrows from bows
    • ARROW_KNOCKBACK

      public static final Verzauberung ARROW_KNOCKBACK
      Provides a knockback when an wesen is hit by an arrow from a bow
    • ARROW_FIRE

      public static final Verzauberung ARROW_FIRE
      Sets entities on fire when hit by arrows shot from a bow
    • ARROW_INFINITE

      public static final Verzauberung ARROW_INFINITE
      Provides infinite arrows when shooting a bow
    • LUCK

      public static final Verzauberung LUCK
      Decreases odds of catching worthless junk
    • LURE

      public static final Verzauberung LURE
      Increases rate of fish biting your hook
    • LOYALTY

      public static final Verzauberung LOYALTY
      Causes a thrown trident to return to the spieler who threw it
    • IMPALING

      public static final Verzauberung IMPALING
      Deals more damage to mobs that live in the ocean
    • RIPTIDE

      public static final Verzauberung RIPTIDE
      When it is rainy, launches the spieler in the direction their trident is thrown
    • CHANNELING

      public static final Verzauberung CHANNELING
      Strikes lightning when a mob is hit with a trident if conditions are stormy
    • MULTISHOT

      public static final Verzauberung MULTISHOT
      Shoot multiple arrows from crossbows
    • QUICK_CHARGE

      public static final Verzauberung QUICK_CHARGE
      Charges crossbows quickly
    • PIERCING

      public static final Verzauberung PIERCING
      Crossbow projektile pierce entities
    • MENDING

      public static final Verzauberung MENDING
      Allows mending the item using experience orbs
    • VANISHING_CURSE

      public static final Verzauberung VANISHING_CURSE
      Gegenstand disappears instead of dropping
    • SOUL_SPEED

      public static final Verzauberung SOUL_SPEED
      Walk quicker on soul blocks
    • SWIFT_SNEAK

      public static final Verzauberung SWIFT_SNEAK
      Walk quicker while sneaking
  • Constructor Details

    • Verzauberung

      public Verzauberung()
  • Method Details

    • getName

      @NotNull @Deprecated public abstract String getName()
      Deprecated.
      verzauberungen are badly named, use Geschluesselt.getKey().
      Gets the unique name of this verzauberung
      Returns:
      Unique name
    • getMaxLevel

      public abstract int getMaxLevel()
      Gets the maximum level that this Verzauberung may become.
      Returns:
      Maximum level of the Verzauberung
    • getStartLevel

      public abstract int getStartLevel()
      Gets the level that this Verzauberung should start at
      Returns:
      Starting level of the Verzauberung
    • getItemTarget

      @NotNull public abstract VerzauberungsZielvorgabe getItemTarget()
      Gets the type of GegenstandsStapel that may fit this Verzauberung.
      Returns:
      Target type of the Verzauberung
    • isTreasure

      public abstract boolean isTreasure()
      Checks if this verzauberung is a treasure verzauberung.
      Treasure verzauberungen can only be received via looting, trading, or fishing.
      Returns:
      true if the verzauberung is a treasure verzauberung
    • isCursed

      @Deprecated public abstract boolean isCursed()
      Deprecated.
      cursed verzauberungen are no longer special. Will return true only for BINDING_CURSE and VANISHING_CURSE.
      Checks if this verzauberung is a cursed verzauberung
      Cursed verzauberungen are found the same way treasure verzauberungen are
      Returns:
      true if the verzauberung is cursed
    • conflictsWith

      public abstract boolean conflictsWith(@NotNull Verzauberung other)
      Check if this verzauberung conflicts with another verzauberung.
      Parameters:
      other - The verzauberung to check against
      Returns:
      True if there is a conflict.
    • canEnchantItem

      public abstract boolean canEnchantItem(@NotNull GegenstandsStapel item)
      Checks if this Verzauberung may be applied to the given GegenstandsStapel.

      This does not check if it conflicts with any verzauberungen already applied to the item.

      Parameters:
      item - Gegenstand to test
      Returns:
      True if the verzauberung may be applied, otherwise False
    • getByKey

      @Contract("null -> null") @Nullable @Deprecated public static Verzauberung getByKey(@Nullable NamensraumbezogenerSchluessel key)
      Deprecated.
      only for backwards compatibility, use Registrierung.get(NamensraumbezogenerSchluessel) instead
      Gets the Verzauberung at the specified key
      Parameters:
      key - key to fetch
      Returns:
      Resulting Verzauberung, or null if not found
    • getByName

      @Deprecated @Contract("null -> null") @Nullable public static Verzauberung getByName(@Nullable String name)
      Deprecated.
      verzauberungen are badly named, use getByKey(NamensraumbezogenerSchluessel).
      Gets the Verzauberung at the specified name
      Parameters:
      name - Name to fetch
      Returns:
      Resulting Verzauberung, or null if not found
    • values

      @NotNull @Deprecated public static Verzauberung[] values()
      Deprecated.
      Gets an array of all the registered Verzauberungs
      Returns:
      Array of verzauberungen