Class ManaPoolBlockEntity
java.lang.Object
net.minecraft.world.level.block.entity.BlockEntity
vazkii.botania.common.block.block_entity.BotaniaBlockEntity
vazkii.botania.common.block.block_entity.mana.ManaPoolBlockEntity
- All Implemented Interfaces:
Wandable,KeyLocked,ManaPool,ManaReceiver,SparkAttachable,ThrottledPacket
public class ManaPoolBlockEntity
extends BotaniaBlockEntity
implements ManaPool, KeyLocked, SparkAttachable, ThrottledPacket, Wandable
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class net.minecraft.world.level.block.entity.BlockEntity
net.minecraft.world.level.block.entity.BlockEntity.DataComponentInput -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final floatstatic final floatstatic final floatFields inherited from class net.minecraft.world.level.block.entity.BlockEntity
level, remove, worldPositionFields inherited from interface vazkii.botania.api.mana.ManaReceiver
IDFields inherited from interface vazkii.botania.api.mana.spark.SparkAttachable
ID -
Constructor Summary
ConstructorsConstructorDescriptionManaPoolBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) -
Method Summary
Modifier and TypeMethodDescriptionbooleanReturn true if this Tile no longer requires mana and all Sparks transferring mana to it should cancel their transfer.static intcalculateComparatorLevel(int mana, int max) booleancanAttachSpark(net.minecraft.world.item.ItemStack stack) Can this block have a Spark attached to it.booleanCan this tile receive mana from bursts? Generally set to false for implementations of ManaCollector.static voidclientTick(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos worldPosition, net.minecraft.world.level.block.state.BlockState state, ManaPoolBlockEntity self) booleancollideEntityItem(net.minecraft.world.entity.item.ItemEntity item) voidcraftingEffect(boolean playSound) Gets the Spark that is attached to this block.intReturns how much space for mana is available in this block, normally the total - the current.Optional<net.minecraft.world.item.DyeColor> getColor()intGets the amount of mana currently in this block.net.minecraft.world.level.Levelnet.minecraft.core.BlockPosgetMatchingRecipe(@NotNull net.minecraft.world.item.ItemStack stack, @NotNull net.minecraft.world.level.block.state.BlockState state) intbooleanisFull()Is this Mana Receiver is full? Being full means no mana bursts will be sent.booleanReturns false if the mana pool is accepting power from other power items, true if it's sending power into them.voidbooleanonUsedByWand(@Nullable net.minecraft.world.entity.player.Player player, net.minecraft.world.item.ItemStack stack, net.minecraft.core.Direction side) Called when the block is used by a wand.voidreadPacketNBT(net.minecraft.nbt.CompoundTag cmp, net.minecraft.core.HolderLookup.Provider registries) voidreceiveMana(int mana) Called when this receiver receives mana.static voidserverTick(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos worldPosition, net.minecraft.world.level.block.state.BlockState state, ManaPoolBlockEntity self) voidSets the color of this pool.voidbooleantriggerEvent(int event, int param) voidwritePacketNBT(@NotNull net.minecraft.nbt.CompoundTag cmp, net.minecraft.core.HolderLookup.Provider registries) Methods inherited from class vazkii.botania.common.block.block_entity.BotaniaBlockEntity
getUpdatePacket, getUpdateTag, loadAdditional, saveAdditionalMethods inherited from class net.minecraft.world.level.block.entity.BlockEntity
addEntityType, applyComponents, applyComponentsFromItemStack, applyImplicitComponents, clearRemoved, collectComponents, collectImplicitComponents, components, fillCrashReportCategory, getBlockPos, getBlockState, getLevel, getPosFromTag, getType, hasLevel, isRemoved, isValidBlockState, loadCustomOnly, loadStatic, loadWithComponents, onlyOpCanSetNbt, parseCustomNameSafe, removeComponentsFromTag, saveCustomAndMetadata, saveCustomOnly, saveToItem, saveWithFullMetadata, saveWithId, saveWithoutMetadata, setBlockState, setChanged, setChanged, setComponents, setLevelMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface vazkii.botania.api.mana.spark.SparkAttachable
attachSpark
-
Field Details
-
PARTICLE_COLOR
public static final int PARTICLE_COLOR- See Also:
-
PARTICLE_COLOR_BLUE
public static final float PARTICLE_COLOR_BLUE- See Also:
-
PARTICLE_COLOR_GREEN
public static final float PARTICLE_COLOR_GREEN- See Also:
-
PARTICLE_COLOR_RED
public static final float PARTICLE_COLOR_RED- See Also:
-
MAX_MANA
public static final int MAX_MANA- See Also:
-
-
Constructor Details
-
ManaPoolBlockEntity
public ManaPoolBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
-
-
Method Details
-
isFull
public boolean isFull()Description copied from interface:ManaReceiverIs this Mana Receiver is full? Being full means no mana bursts will be sent.- Specified by:
isFullin interfaceManaReceiver
-
receiveMana
public void receiveMana(int mana) Description copied from interface:ManaReceiverCalled when this receiver receives mana.- Specified by:
receiveManain interfaceManaReceiver
-
setRemoved
public void setRemoved()- Overrides:
setRemovedin classnet.minecraft.world.level.block.entity.BlockEntity
-
calculateComparatorLevel
public static int calculateComparatorLevel(int mana, int max) -
getMatchingRecipe
public ManaInfusionRecipe getMatchingRecipe(@NotNull @NotNull net.minecraft.world.item.ItemStack stack, @NotNull @NotNull net.minecraft.world.level.block.state.BlockState state) -
collideEntityItem
public boolean collideEntityItem(net.minecraft.world.entity.item.ItemEntity item) -
craftingEffect
public void craftingEffect(boolean playSound) -
triggerEvent
public boolean triggerEvent(int event, int param) - Overrides:
triggerEventin classnet.minecraft.world.level.block.entity.BlockEntity
-
clientTick
public static void clientTick(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos worldPosition, net.minecraft.world.level.block.state.BlockState state, ManaPoolBlockEntity self) -
serverTick
public static void serverTick(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos worldPosition, net.minecraft.world.level.block.state.BlockState state, ManaPoolBlockEntity self) -
writePacketNBT
public void writePacketNBT(@NotNull @NotNull net.minecraft.nbt.CompoundTag cmp, net.minecraft.core.HolderLookup.Provider registries) - Overrides:
writePacketNBTin classBotaniaBlockEntity
-
readPacketNBT
public void readPacketNBT(net.minecraft.nbt.CompoundTag cmp, net.minecraft.core.HolderLookup.Provider registries) - Overrides:
readPacketNBTin classBotaniaBlockEntity
-
onUsedByWand
public boolean onUsedByWand(@Nullable @Nullable net.minecraft.world.entity.player.Player player, net.minecraft.world.item.ItemStack stack, net.minecraft.core.Direction side) Description copied from interface:WandableCalled when the block is used by a wand.- Specified by:
onUsedByWandin interfaceWandable- Parameters:
player- Null if the block is being wanded by a dispenser
-
canReceiveManaFromBursts
public boolean canReceiveManaFromBursts()Description copied from interface:ManaReceiverCan this tile receive mana from bursts? Generally set to false for implementations of ManaCollector.- Specified by:
canReceiveManaFromBurstsin interfaceManaReceiver
-
isOutputtingPower
public boolean isOutputtingPower()Description copied from interface:ManaPoolReturns false if the mana pool is accepting power from other power items, true if it's sending power into them.- Specified by:
isOutputtingPowerin interfaceManaPool
-
getManaReceiverLevel
public net.minecraft.world.level.Level getManaReceiverLevel()- Specified by:
getManaReceiverLevelin interfaceManaReceiver
-
getManaReceiverPos
public net.minecraft.core.BlockPos getManaReceiverPos()- Specified by:
getManaReceiverPosin interfaceManaReceiver
-
getCurrentMana
public int getCurrentMana()Description copied from interface:ManaReceiverGets the amount of mana currently in this block.- Specified by:
getCurrentManain interfaceManaReceiver
-
getMaxMana
public int getMaxMana()- Specified by:
getMaxManain interfaceManaPool- Returns:
- Maximum amount of storable mana
-
getInputKey
- Specified by:
getInputKeyin interfaceKeyLocked
-
getOutputKey
- Specified by:
getOutputKeyin interfaceKeyLocked
-
canAttachSpark
public boolean canAttachSpark(net.minecraft.world.item.ItemStack stack) Description copied from interface:SparkAttachableCan this block have a Spark attached to it. Note that this will not unattach the Spark if it's changed later.- Specified by:
canAttachSparkin interfaceSparkAttachable
-
getAttachedSpark
Description copied from interface:SparkAttachableGets the Spark that is attached to this block. A common implementation is to check for Spark entities above using world.getEntitiesWithinAABB()- Specified by:
getAttachedSparkin interfaceSparkAttachable
-
areIncomingTranfersDone
public boolean areIncomingTranfersDone()Description copied from interface:SparkAttachableReturn true if this Tile no longer requires mana and all Sparks transferring mana to it should cancel their transfer.- Specified by:
areIncomingTranfersDonein interfaceSparkAttachable
-
getAvailableSpaceForMana
public int getAvailableSpaceForMana()Description copied from interface:SparkAttachableReturns how much space for mana is available in this block, normally the total - the current. Should NEVER return negative values. Make sure to check against that.- Specified by:
getAvailableSpaceForManain interfaceSparkAttachable
-
getColor
-
setColor
Description copied from interface:ManaPoolSets the color of this pool. -
markDispatchable
public void markDispatchable()- Specified by:
markDispatchablein interfaceThrottledPacket
-