Class Divination
java.lang.Object
net.pottercraft.ollivanders2.spell.O2Spell
net.pottercraft.ollivanders2.spell.Divination
- Direct Known Subclasses:
ASTROLOGIA,BAO_ZHONG_CHA,CARTOMANCIE,CHARTIA,INTUEOR,MANTEIA_KENTAVROS,OVOGNOSIS
Super class for all divination spells.
-
Field Summary
FieldsFields inherited from class net.pottercraft.ollivanders2.spell.O2Spell
branch, cooldownMessage, defaultRadius, flavorText, isAllowedFailureMessage, location, maxProjectileDistance, maxSpellLifetime, noProjectile, player, rightWand, spellMasteryLevel, spellType, text, usesModifier, vector -
Constructor Summary
ConstructorsConstructorDescriptionDivination(@NotNull Ollivanders2 plugin, @NotNull org.bukkit.entity.Player player, @NotNull Double rightWand) Constructor.Divination(Ollivanders2 plugin) Default constructor for use in generating spell text. -
Method Summary
Modifier and TypeMethodDescriptionvoidMain game tick update called every server tick while the spell is active.protected voidSpell-specific effects and behavior executed each game tick.voidsetTarget(@NotNull org.bukkit.entity.Player t) Set the target for this divination.protected voidOverride setUsesModifier because this spell does not require holding a wand.Methods inherited from class net.pottercraft.ollivanders2.spell.O2Spell
getCloseEntities, getCoolDown, getFailureMessage, getFlavorText, getLevel, getLifeTicks, getMagicBranch, getName, getNearbyDamageableEntities, getNearbyItems, getNearbyLivingEntities, getNearbyPlayers, getSuccessMessage, getTargetBlock, getText, getWorldGuardFlags, hasHitTarget, isAtMaxDistance, isKilled, isSpellAllowed, kill, move, revert, sendFailureMessage, sendSuccessMessage
-
Field Details
-
divinationSpells
All divination spell types
-
-
Constructor Details
-
Divination
Default constructor for use in generating spell text. Do not use to cast the spell.- Parameters:
plugin- the Ollivanders2 plugin
-
Divination
public Divination(@NotNull @NotNull Ollivanders2 plugin, @NotNull @NotNull org.bukkit.entity.Player player, @NotNull @NotNull Double rightWand) Constructor.- Parameters:
plugin- a callback to the MC pluginplayer- the player who cast this spellrightWand- which wand the player was using
-
-
Method Details
-
setUsesModifier
protected void setUsesModifier()Override setUsesModifier because this spell does not require holding a wand.- Overrides:
setUsesModifierin classO2Spell
-
setTarget
public void setTarget(@NotNull @NotNull org.bukkit.entity.Player t) Set the target for this divination. This must be done when the spell is created.- Parameters:
t- the target player
-
checkEffect
public void checkEffect()Description copied from class:O2SpellMain game tick update called every server tick while the spell is active.Handles core spell lifecycle logic:
- Validates spell is allowed at current location; kills if not
- Increments spell lifetime and kills if exceeding max lifetime
- Moves projectile via
O2Spell.move()if projectile hasn't hit a target - Executes spell-specific effects via
O2Spell.doCheckEffect()
Subclasses typically override
O2Spell.doCheckEffect()instead of this method. Only override this method if you need to customize the spell's entire tick behavior.- Overrides:
checkEffectin classO2Spell
-
doCheckEffect
protected void doCheckEffect()Description copied from class:O2SpellSpell-specific effects and behavior executed each game tick.Called each tick from
O2Spell.checkEffect()after validation and movement logic. Subclasses must override this method to implement the spell's unique effects such as damage, block changes, particle effects, or other gameplay mechanics.- Specified by:
doCheckEffectin classO2Spell
-