All Classes and Interfaces
Class
Description
An artifact item that is also an accessory for the Accessories mod.
An item that helps you to upgrade wands to new spell tiers.
Where Part of the magic happens.
Client-side GUI screen for the Arcane Workbench, where all rendering, button logic, tooltips, and animations are
handled.
Base class for spells that affect entities within a specified area of effect (AoE).
Represents a spell that launches a
MagicArrowEntity-based projectile.Base data provider for generating a Markdown table with all the artifacts registered in the mod, including item sprite,
artifact name and description.
Base class for artifact items.
This is used for filtering only
Various utility methods for use by artifacts.
Basic version of
AttackSpellGoal that can be used by most spell-casting mobs without checking movement or look
controls, leaving those to other goals.A goal which allows a spell-casting mob to attack its target with spells.
BlankRenderer<T extends net.minecraft.world.entity.Entity>
This class is used to render entities that don't have a texture,
A
SurfaceCriteria object is used to define a 'surface', a boundary between two blocks which differ in
some way, for use in BlockUtil.getNearestSurface(Level, BlockPos, Direction, int, boolean, SurfaceCriteria).Renderer for the Bookshelf block entity.
Spell that applies mob effects to the caster.
CastContext - Base Context for Spell Casting
This class avoids big classes just to handle NBT data for getting/saving values.
A utility class for handling various aspects of spell casting, including event firing, cooldown application,
spell tracking, and network packet sending.
Handles messages received on the client side, we may only call client-side methods from here because we don't want to
accidentally reference client-only code on the server side.
Handles messages received on the client side, we may only call client-side methods from here because we don't want to
accidentally reference client-only code on the server side.
Handles messages received on the client side, we may only call client-side methods from here because we don't want to
accidentally reference client-only code on the server side.
Check
EBCommandsA class representing a single configuration option.
This is the interface that we will use later to interact with the conjure item data!! Loading this as an interface and
later implemented by the loaders from "scratch" is basically because we need a similar way to load-change data for
Fabric and forge, with this we're trying to create a mask that we will trust that the loaders won't have any problem
saving and handling the data.
Loading the conjure data with Forge, nothing too crazy over here, just using the capabilities to load-change the data
Base class for spells that conjure items.
We need to modify the way that the items load the durability bar, with this we check for the ConjureData
if the item isn't a conjure item it just continues with the normal behavior, if the item is a conjure item and is
summoned the mod will load the remaining lifetime based on gameTime and expireTime.
Extension of
ConstructSpell that spawns constructs at a distance from the caster using ray casting.Base class for spells that spawn magical construct entities (
MagicConstructEntity).Represents containment data for living entities affected by the containment effect.
This class is used to save all the custom data events used in Electroblob's Wizardry, normally just including player
tick and spell cast events.
Handles the registration of block entity renderers.
This applies to loaders with the Mixin
MinecraftMixin#EBWIZARDRY$clientTickElectroblob's Wizardry Internal Use Only
This is the main class that handles the basic data gen features for the mod we use this to register all the just-one-file or small models with a generic behaviour.
This is the main class that handles the basic data gen features for the mod we use this to register all the just-one-file or small models with a generic behaviour.
Simple class to save all the event helper methods
This is internal use, you're not supposed to use this for any reason
Electroblob's Wizardry Internal Use Only
Event fired when a player attempts to place an item in a container (Inside the slot class's
mayPlace method)
Can be cancelled to prevent the item from being placed.The registration of all wizardry items, sorted by category for helping with creative tabs
Sorted by: General Items Flasks Spectral Dust Wands Crystals Wand Upgrades Wizard Armor Artifacts Conjured (Spectral) Spell Cast Items Bombs
Sorted by: General Items Flasks Spectral Dust Wands Crystals Wand Upgrades Wizard Armor Artifacts Conjured (Spectral) Spell Cast Items Bombs
Event fired when a player tosses an item from their inventory.
This applies to loaders with the Mixin
LivingEntityMixin#EBWIZARDRY$livingEntityHurtThis applies to loaders with the Mixin
LivingEntityMixin#EBWIZARDRY$tickEBLogger is a simple wrapper around the SLF4J Logger, providing convenience methods for logging messages at different
levels.
Handles the registration of menus.
Handles the registration of menu screens.
EBMenuScreens.ScreenFactory<T extends net.minecraft.world.inventory.AbstractContainerMenu,U extends net.minecraft.client.gui.screens.Screen & net.minecraft.client.gui.screens.inventory.MenuAccess<T>>
This applies to:
Fabric:
Forge:
Fabric:
ServerPlayConnectionEvents#JOIN Forge:
EntityJoinLevelEventImplementation of the spell documentation provider for Electroblob's Wizardry Redux.
Custom argument type for Element objects in commands.
EntityCastContext - Casting Context for Entities
Internal use for Electroblob's Wizardry
Dummy interface to use events
You don't need to use or access to this interface, this could help you if you want to make events for you mod
Dummy interface to use events
You don't need to use or access to this interface, this could help you if you want to make events for you mod
Internal use for Electroblob's Wizardry
Base interface for
You don't need to use or access to this interface, this could help you if you want to make events for you mod
Base interface for
WizardryEventBus, used to work
as a blueprint for register-handle events
You don't need to use or access to this interface, this could help you if you want to make events for you mod
Abstract base class for all spell forfeits.
Hey! I'm just a client handler for the glyph data
Why this is called GST...?
Helps a mob to look directly at its target with hard rotations, ignoring any smoothing that would normally be applied.
Interface representing the effects of artifacts in the mod.
Offers a template for spell casting items to handle the base spell casting logic, cooldown, spell selection, cast
verification and spell casting.
Interface to mirror allow items to add/remove entity attributes dynamically based on the item stack
Exposing helper methods to define how to obtain/set the damage/max-damage for an item, especially used to avoid item
destruction in normal cases.
Deprecated.
Interface for items that have an associated element value.
Interface for tracking temporary enchantments on items, such as those applied by imbuement spells.
Interface defining methods for serializing and deserializing spell properties to and from JSON and NBT formats.
Interface for spell variables that can be stored and synchronized between client and server.
Default implementation of
ISpellVar that provides basic functionality.Extension of
ISpellVar that adds NBT serialization capabilities for persistent storage.Default implementation of
IStoredSpellVar with NBT serialization support.Interface for items that have an associated tier value.
Internal use for Electroblob's Wizardry
Base interface to create
You don't need to use or access to this interface, this could help you if you want to make events for you mod
Base interface to create
WizardryCancelableEvent
and WizardryEvent
You don't need to use or access to this interface, this could help you if you want to make events for you mod
LocationCastContext - Casting Context from Fixed Location
This class uses the base code from
AbstractArrow and adds some methods to make it easier to use with the mod.This class, MagicArrowRenderer, extends the ProjectileEntityRenderer class.
This class is for all inanimate magical constructs that are not projectiles.
Damage source factory for the mod's magic damage types.
Goal that helps to copy the owner's target for the minion.
Represents the data associated with a minion entity in the game.
MinionSpell<T extends net.minecraft.world.entity.Mob>
Base class for spells that summon minions.
MovingSoundEntity<T extends net.minecraft.world.entity.Entity>
This is an empty spell used for whenever a non-null empty spell is needed; it's great for
using as a template when making your own spell.
Particle Buff is the only particle in Electroblob's Wizardry (at least on Alpha release) that's using the linking
mechanism from ParticleWizardry to follow an entity.
Data class for particle properties to be sent over the network and spawned client-side.
Based on the vanilla
ParticleParticle, but with modified rendering to allow for a pulsing scale and a fade out.Deprecated.
Client-only class that handles actual particle spawning.
Abstract superclass for all of wizardry's particles.
PlayerCastContext - Casting Context for Players
Base class for spells that shoot magical projectile entities (
MagicProjectileEntity).This class loads spell properties from JSON files located in the "data/modid/spells" directory of data packs.
Generic implementation of the
IPropertyType interface using functional interfaces for serialization and
deserialization.Registry class for different property types used in spell properties.
Utility class used for quickly add artifacts effect to simple items without having to create a whole new class.
Intelligent kiting goal for ranged attack entities that maintains a safe distance.
Base class for spells that cast a ray from the caster's position or a location, affecting entities and blocks along
the ray's path.
Utility class for performing ray trace operations in the world, including both block and entity detection.
Functional interface used by Electroblob's Wizardry Redux registration helpers to perform actual registrations
into the different loaders' registries (Forge, Fabric).
General utility methods used for Spell related functionality, normally being used for item creation, retrieval, etc.
RobeArmorModel<T extends net.minecraft.world.entity.LivingEntity>
Scroll Item!! Fast and easy way to use spells
Arcane Workbench Slot that only allows items whose class matches one of the specified allowed item classes.
Arcane Workbench Slot that only allows specific items and has a configurable stack limit and icon.
Arcane Workbench slot that only accepts items implementing
IWorkbenchItem.Handle all the active sound loops with the
This class only works as a blueprint for situations that you need to play a sound loop, for example:
SoundLoop.onClientTick(EBClientTickEvent)
Saves all the info for the three basic sounds (start, loop, end) and handle all the logic in the event
This class only works as a blueprint for situations that you need to play a sound loop, for example:
SpellSoundManager, all the logic here is just for simplify
the process of doing a sound loopEncapsulate all the work and info needed to cast spells in the mod, this contains 3 subclasses
that are used depending on how you're casting a spell
Sound loop from a spell cast by a dispenser
Sound loop from a spell cast by an entity
Sound loop from a spell cast just by the location, normally a /cast command
Abstract blueprint for every spell in the mod.
Custom argument type for Spell objects in commands.
Event fired when a player presses the apply button in the Arcane Workbench GUI (not confuse, this is only called on
the server side).
Represents a set of conditions that can be tested against a
Spell.A single condition predicate consisting of a type and a value.
An argument type for parsing
SpellCondition instances from command input.Enum representing different contexts in which a spell can be used.
Base class for data providers that generate spell properties files.
Base data provider for generating spell documentation in Markdown format.
This class is responsible for storing and managing the random names and descriptions assigned to spell glyphs, this
is when the player don't know what a spell does and they have to identify it first, all the scrolls/books showing
that spell will then have the same random name/description.
Glorified map for storing and saving spell modifier values such as potency, cost, chargeup and many others.
A class representing a property of a spell, such as its cost or cooldown.
Class mostly used in minecraft gametesting framework for checking spell values in different contexts.
A column represents the scenario that will return a desired result to be compared
A row represents a context where you're going to cast a spell
Custom argument type for spell tier objects in commands.
Used just for testing the network api
Used internally for the
text (Check
items (Check
and custom textures and lists (Check
ArcaneWorkbechScreen,
this is just the template that display information about the selected item in the menu,
with this you could render: text (Check
TooltipElementText) items (Check
TooltipElementUpgrades) and custom textures and lists (Check
TooltipElementSpellEntry and TooltipElementSpellList)Where the magic (normally) happens!! Most of the functions and logic for this item are handled on various utils
classes (e.g.
This class manages the registration and retrieval of wand upgrade items along with their unique identifiers.
This Wizard class is only concerned with trading behavior.
Base class for all wizard armor items in Electroblob's Wizardry Redux.
WizardArmorModel<T extends net.minecraft.world.entity.LivingEntity>
Enum defining the different classes of wizard armor.
Makes the wizard look at the player it is trading with.
General version of a
SimpleCriterionTrigger for the mod, we use this to simple call "advancement events"
inside the mod code, no need to get/save data for itExtension of the base Attribute Modifiers to add
SpellCondition for being used with the /magic_attribute
command.Base event class to use if you want to create custom events
Just make a new subclass with this and fire the event when you need it
Keep in mind if one event before you cancel the used event your listener will be used anyway, if you don't want this, use
Keep in mind if one event before you cancel the used event your listener will be used anyway, if you don't want this, use
WizardryCancelableEvent.isCanceled() before doing anythingBase event class to use if you want to create custom events
Just make a new subclass with this and fire the event when you need it
Internal use for Electroblob's Wizardry
Help to register and fire all the events used in the mod.
Help to register and fire all the events used in the mod.
This class contains
-
WizardryForgeEvents.ForgeBusEvents : Events that are fired by Forge
- WizardryForgeEvents.ModBusEvents : Events that are fired by the mod
- WizardryForgeEvents.ModBusEventsClient : Events that are fired by the mod on the clientStops the wizard from moving when trading.
Utility class for workbench-related operations, such as recharging mana and applying spell books to wands.