public interface IForgeBlock
Modifier and Type | Method and Description |
---|---|
default boolean |
addDestroyEffects(IBlockState state,
World world,
BlockPos pos,
ParticleManager manager)
Spawn particles for when the block is destroyed.
|
default boolean |
addHitEffects(IBlockState state,
World worldObj,
RayTraceResult target,
ParticleManager manager)
Spawn a digging particle effect in the world, this is a wrapper
around EffectRenderer.addBlockHitEffects to allow the block more
control over the particles.
|
default boolean |
addLandingEffects(IBlockState state1,
WorldServer worldserver,
BlockPos pos,
IBlockState state2,
EntityLivingBase entity,
int numberOfParticles)
Allows a block to override the standard EntityLivingBase.updateFallState
particles, this is a server side method that spawns particles with
WorldServer.spawnParticle.
|
default boolean |
addRunningEffects(IBlockState state,
World world,
BlockPos pos,
Entity entity)
Allows a block to override the standard vanilla running particles.
|
default void |
beginLeaveDecay(IBlockState state,
IWorldReader world,
BlockPos pos)
Called when a leaf should start its decay process.
|
default boolean |
canBeConnectedTo(IBlockState state,
IBlockReader world,
BlockPos pos,
EnumFacing facing)
Determines if another block can connect to this block
|
default boolean |
canBeReplacedByLeaves(IBlockState state,
IWorldReaderBase world,
BlockPos pos)
Used during tree growth to determine if newly generated leaves can replace this block.
|
default boolean |
canConnectRedstone(IBlockState state,
IBlockReader world,
BlockPos pos,
EnumFacing side)
Determine if this block can make a redstone connection on the side provided,
Useful to control which sides are inputs and outputs for redstone wires.
|
default boolean |
canCreatureSpawn(IBlockState state,
IWorldReaderBase world,
BlockPos pos,
EntitySpawnPlacementRegistry.SpawnPlacementType type,
EntityType<? extends EntityLiving> entityType)
Determines if a specified mob type can spawn on this block, returning false will
prevent any mob from spawning on the block.
|
default boolean |
canEntityDestroy(IBlockState state,
IBlockReader world,
BlockPos pos,
Entity entity)
Determines if this block is can be destroyed by the specified entities normal behavior.
|
default boolean |
canHarvestBlock(IBlockState state,
IBlockReader world,
BlockPos pos,
EntityPlayer player)
Determines if the player can harvest this block, obtaining it's drops when the block is destroyed.
|
default boolean |
canPlaceTorchOnTop(IBlockState state,
IWorldReaderBase world,
BlockPos pos)
Determines if a torch can be placed on the top surface of this block.
|
default boolean |
canRenderInLayer(IBlockState state,
BlockRenderLayer layer)
Queries if this block should render in a given layer.
|
boolean |
canSilkHarvest(IBlockState state,
IWorldReader world,
BlockPos pos,
EntityPlayer player)
Return true from this function if the player with silk touch can harvest this block directly, and not it's normal drops.
|
boolean |
canSustainPlant(IBlockState state,
IBlockReader world,
BlockPos pos,
EnumFacing facing,
IPlantable plantable)
Determines if this block can support the passed in plant, allowing it to be planted and grow.
|
default TileEntity |
createTileEntity(IBlockState state,
IBlockReader world)
Called throughout the code as a replacement for ITileEntityProvider.createNewTileEntity
Return the same thing you would from that function.
|
default boolean |
doesSideBlockChestOpening(IBlockState blockState,
IBlockReader world,
BlockPos pos,
EnumFacing side) |
default boolean |
doesSideBlockRendering(IBlockState state,
IWorldReader world,
BlockPos pos,
EnumFacing face)
Check if the face of a block should block rendering.
|
default PathNodeType |
getAiPathNodeType(IBlockState state,
IBlockReader world,
BlockPos pos,
EntityLiving entity)
Get the
PathNodeType for this block. |
default float[] |
getBeaconColorMultiplier(IBlockState state,
IWorldReader world,
BlockPos pos,
BlockPos beaconPos) |
default EnumFacing |
getBedDirection(IBlockState state,
IWorldReader world,
BlockPos pos)
Returns the direction of the block.
|
default BlockPos |
getBedSpawnPosition(IBlockState state,
IBlockReader world,
BlockPos pos,
EntityPlayer player)
Returns the position that the player is moved to upon
waking up, or respawning at the bed.
|
default Block |
getBlock() |
default void |
getDrops(IBlockState state,
NonNullList<ItemStack> drops,
World world,
BlockPos pos,
int fortune)
This gets a complete list of items dropped from this block.
|
default float |
getEnchantPowerBonus(IBlockState state,
IWorldReader world,
BlockPos pos)
Determines the amount of enchanting power this block can provide to an enchanting table.
|
default int |
getExpDrop(IBlockState state,
IWorldReader world,
BlockPos pos,
int fortune)
Gathers how much experience this block drops when broken.
|
default float |
getExplosionResistance(IBlockState state,
IWorldReader world,
BlockPos pos,
Entity exploder,
Explosion explosion)
Location sensitive version of getExplosionResistance
|
default IBlockState |
getExtendedState(IBlockState state,
IBlockReader world,
BlockPos pos)
Can return IExtendedBlockState
|
default int |
getFireSpreadSpeed(IBlockState state,
IBlockReader world,
BlockPos pos,
EnumFacing face)
Called when fire is updating on a neighbor block.
|
default int |
getFlammability(IBlockState state,
IBlockReader world,
BlockPos pos,
EnumFacing face)
Chance that fire will spread and consume this block.
|
default Vec3d |
getFogColor(IBlockState state,
IWorldReader world,
BlockPos pos,
Entity entity,
Vec3d originalColor,
float partialTicks)
Use this to change the fog color used when the entity is "inside" a material.
|
int |
getHarvestLevel(IBlockState state)
Queries the harvest level of this item stack for the specified tool class,
Returns -1 if this tool is not of the specified type
|
ToolType |
getHarvestTool(IBlockState state)
Queries the class of tool required to harvest this block, if null is returned
we assume that anything can harvest this block.
|
default int |
getLightValue(IBlockState state,
IWorldReader world,
BlockPos pos)
Get a light value for this block, taking into account the given state and coordinates, normal ranges are between 0 and 15
|
default ItemStack |
getPickBlock(IBlockState state,
RayTraceResult target,
IBlockReader world,
BlockPos pos,
EntityPlayer player)
Called when A user uses the creative pick block button on this block
|
default RayTraceResult |
getRayTraceResult(IBlockState state,
World world,
BlockPos pos,
Vec3d start,
Vec3d end,
RayTraceResult original)
Ray traces through the blocks collision from start vector to end vector returning a ray trace hit.
|
float |
getSlipperiness(IBlockState state,
IWorldReader world,
BlockPos pos,
Entity entity)
Gets the slipperiness at the given location at the given state.
|
default SoundType |
getSoundType(IBlockState state,
IWorldReader world,
BlockPos pos,
Entity entity)
Sensitive version of getSoundType
|
default IBlockState |
getStateAtViewpoint(IBlockState state,
IBlockReader world,
BlockPos pos,
Vec3d viewpoint)
Used to determine the state 'viewed' by an entity (see
ActiveRenderInfo#getBlockStateAtEntityViewpoint(World, Entity, float) ). |
default IBlockState |
getStateForPlacement(IBlockState state,
EnumFacing facing,
IBlockState state2,
IWorld world,
BlockPos pos1,
BlockPos pos2,
EnumHand hand)
//TODO: Re-Evaluate
Gets the
IBlockState to place |
default EnumFacing[] |
getValidRotations(IBlockState state,
IBlockReader world,
BlockPos pos)
Get the rotations that can apply to the block at the specified coordinates.
|
default boolean |
getWeakChanges(IBlockState state,
IWorldReader world,
BlockPos pos)
If this block should be notified of weak changes.
|
default boolean |
hasTileEntity(IBlockState state)
Called throughout the code as a replacement for block instanceof BlockContainer
Moving this to the Block base class allows for mods that wish to extend vanilla
blocks, and also want to have a tile entity on that block, may.
|
default boolean |
isAir(IBlockState state,
IBlockReader world,
BlockPos pos)
Determines this block should be treated as an air block
by the rest of the code.
|
default boolean |
isBeaconBase(IBlockState state,
IWorldReader world,
BlockPos pos,
BlockPos beacon)
Determines if this block can be used as the base of a beacon.
|
default boolean |
isBed(IBlockState state,
IBlockReader world,
BlockPos pos,
Entity player)
Determines if this block is classified as a Bed, Allowing
players to sleep in it, though the block has to specifically
perform the sleeping functionality in it's activated event.
|
default boolean |
isBedFoot(IBlockState state,
IWorldReader world,
BlockPos pos)
Determines if the current block is the foot half of the bed.
|
default boolean |
isBurning(IBlockState state,
IBlockReader world,
BlockPos pos)
Determines if this block should set fire and deal fire damage
to entities coming into contact with it.
|
default boolean |
isFertile(IBlockState state,
IBlockReader world,
BlockPos pos)
Checks if this soil is fertile, typically this means that growth rates
of plants on this soil will be slightly sped up.
|
default boolean |
isFireSource(IBlockState state,
IBlockReader world,
BlockPos pos,
EnumFacing side)
Currently only called by fire when it is on top of this block.
|
default boolean |
isFlammable(IBlockState state,
IBlockReader world,
BlockPos pos,
EnumFacing face)
Called when fire is updating, checks if a block face can catch fire.
|
default boolean |
isFoliage(IBlockState state,
IWorldReader world,
BlockPos pos)
Used by getTopSoilidOrLiquidBlock while placing biome decorations, villages, etc
Also used to determine if the player can spawn in this block.
|
default boolean |
isLadder(IBlockState state,
IWorldReader world,
BlockPos pos,
EntityLivingBase entity)
Checks if a player or entity can use this block to 'climb' like a ladder.
|
default boolean |
isNormalCube(IBlockState state,
IBlockReader world,
BlockPos pos)
Return true if the block is a normal, solid cube.
|
default boolean |
isReplaceableOreGen(IBlockState state,
IWorldReader world,
BlockPos pos,
java.util.function.Predicate<IBlockState> target)
Determines if the current block is replaceable by Ore veins during world generation.
|
default boolean |
isStickyBlock(IBlockState state) |
default boolean |
isToolEffective(IBlockState state,
ToolType tool)
Checks if the specified tool type is efficient on this block,
meaning that it digs at full speed.
|
default boolean |
isTopSolid(IBlockState state,
IWorldReader world,
BlockPos pos)
Determines if the top is consider 'solid'.
|
default void |
observedNeighborChange(IBlockState observerState,
World world,
BlockPos observerPos,
Block changedBlock,
BlockPos changedBlockPos)
Called on an Observer block whenever an update for an Observer is received.
|
default void |
onBlockExploded(IBlockState state,
World world,
BlockPos pos,
Explosion explosion)
Called when the block is destroyed by an explosion.
|
default void |
onNeighborChange(IBlockState state,
IWorldReader world,
BlockPos pos,
BlockPos neighbor)
Called when a tile entity on a side of this block changes is created or is destroyed.
|
default void |
onPlantGrow(IBlockState state,
IWorld world,
BlockPos pos,
BlockPos source)
Called when a plant grows on this block, only implemented for saplings using the WorldGen*Trees classes right now.
|
default boolean |
recolorBlock(IBlockState state,
IWorld world,
BlockPos pos,
EnumFacing facing,
EnumDyeColor color)
//TODO: Re-Evaluate
Gathers how much experience this block drops when broken.
|
default boolean |
removedByPlayer(IBlockState state,
World world,
BlockPos pos,
EntityPlayer player,
boolean willHarvest,
IFluidState fluid)
Called when a player removes a block.
|
default IBlockState |
rotate(IBlockState state,
IWorld world,
BlockPos pos,
Rotation direction) |
default void |
setBedOccupied(IBlockState state,
IWorldReader world,
BlockPos pos,
EntityPlayer player,
boolean occupied)
Called when a user either starts or stops sleeping in the bed.
|
default boolean |
shouldCheckWeakPower(IBlockState state,
IWorldReader world,
BlockPos pos,
EnumFacing side)
Called to determine whether to allow the a block to handle its own indirect power rather than using the default rules.
|
default Block getBlock()
float getSlipperiness(IBlockState state, IWorldReader world, BlockPos pos, @Nullable Entity entity)
Note that entities may reduce slipperiness by a certain factor of their own;
for EntityLivingBase
, this is .91
.
EntityItem
uses .98
, and
EntityFishHook
uses .92
.
state
- state of the blockworld
- the worldpos
- the position in the worldentity
- the entity in questiondefault int getLightValue(IBlockState state, IWorldReader world, BlockPos pos)
state
- world
- pos
- default boolean isLadder(IBlockState state, IWorldReader world, BlockPos pos, EntityLivingBase entity)
state
- The current stateworld
- The current worldpos
- Block position in worldentity
- The entity trying to use the ladder, CAN be null.default boolean isNormalCube(IBlockState state, IBlockReader world, BlockPos pos)
state
- The current stateworld
- The current worldpos
- Block position in worlddefault boolean doesSideBlockRendering(IBlockState state, IWorldReader world, BlockPos pos, EnumFacing face)
state
- The current block stateworld
- The current worldpos
- Block position in worldface
- The side to checkdefault boolean isBurning(IBlockState state, IBlockReader world, BlockPos pos)
world
- The current worldpos
- Block position in worlddefault boolean hasTileEntity(IBlockState state)
state
- State of the current block@Nullable default TileEntity createTileEntity(IBlockState state, IBlockReader world)
state
- The state of the current blockworld
- The world to create the TE inboolean canSilkHarvest(IBlockState state, IWorldReader world, BlockPos pos, EntityPlayer player)
state
- current block stateworld
- The worldpos
- Block position in worldplayer
- The player doing the harvestingdefault boolean canHarvestBlock(IBlockState state, IBlockReader world, BlockPos pos, EntityPlayer player)
world
- The current worldpos
- The block's current positionplayer
- The player damaging the blockdefault boolean removedByPlayer(IBlockState state, World world, BlockPos pos, EntityPlayer player, boolean willHarvest, IFluidState fluid)
state
- The current state.world
- The current worldplayer
- The player damaging the block, may be nullpos
- Block position in worldwillHarvest
- True if Block.harvestBlock will be called after this, if the return in true.
Can be useful to delay the destruction of tile entities till after harvestBlockfluid
- The current fluid state at current positiondefault boolean isBed(IBlockState state, IBlockReader world, BlockPos pos, @Nullable Entity player)
state
- The current stateworld
- The current worldpos
- Block position in worldplayer
- The player or camera entity, null in some cases.default boolean canCreatureSpawn(IBlockState state, IWorldReaderBase world, BlockPos pos, EntitySpawnPlacementRegistry.SpawnPlacementType type, @Nullable EntityType<? extends EntityLiving> entityType)
state
- The current stateworld
- The current worldpos
- Block position in worldtype
- The Mob Category Type@Nullable default BlockPos getBedSpawnPosition(IBlockState state, IBlockReader world, BlockPos pos, @Nullable EntityPlayer player)
state
- The current stateworld
- The current worldpos
- Block position in worldplayer
- The player or camera entity, null in some cases.default void setBedOccupied(IBlockState state, IWorldReader world, BlockPos pos, EntityPlayer player, boolean occupied)
state
- world
- The current worldpos
- Block position in worldplayer
- The player or camera entity, null in some cases.occupied
- True if we are occupying the bed, or false if they are stopping use of the beddefault EnumFacing getBedDirection(IBlockState state, IWorldReader world, BlockPos pos)
state
- The current stateworld
- The current worldpos
- Block position in worlddefault boolean isBedFoot(IBlockState state, IWorldReader world, BlockPos pos)
world
- The current worldpos
- Block position in worlddefault void beginLeaveDecay(IBlockState state, IWorldReader world, BlockPos pos)
state
- The current stateworld
- The current worldpos
- Block position in worlddefault boolean isAir(IBlockState state, IBlockReader world, BlockPos pos)
state
- The current stateworld
- The current worldpos
- Block position in worlddefault boolean canBeReplacedByLeaves(IBlockState state, IWorldReaderBase world, BlockPos pos)
state
- The current stateworld
- The current worldpos
- Block position in worlddefault boolean isReplaceableOreGen(IBlockState state, IWorldReader world, BlockPos pos, java.util.function.Predicate<IBlockState> target)
state
- The current stateworld
- The current worldpos
- Block position in worldtarget
- The generic target block the gen is looking for, Standards define stone
for overworld generation, and neatherack for the nether.default float getExplosionResistance(IBlockState state, IWorldReader world, BlockPos pos, @Nullable Entity exploder, Explosion explosion)
world
- The current worldpos
- Block position in worldexploder
- The entity that caused the explosion, can be nullexplosion
- The explosiondefault void onBlockExploded(IBlockState state, World world, BlockPos pos, Explosion explosion)
world
- The current worldpos
- Block position in worldexplosion
- The explosion instance affecting the blockdefault boolean canConnectRedstone(IBlockState state, IBlockReader world, BlockPos pos, @Nullable EnumFacing side)
state
- The current stateworld
- The current worldpos
- Block position in worldside
- The side that is trying to make the connection, CAN BE NULLdefault boolean canPlaceTorchOnTop(IBlockState state, IWorldReaderBase world, BlockPos pos)
state
- The current stateworld
- The current worldpos
- Block position in worlddefault ItemStack getPickBlock(IBlockState state, RayTraceResult target, IBlockReader world, BlockPos pos, EntityPlayer player)
target
- The full target the player is looking atdefault boolean isFoliage(IBlockState state, IWorldReader world, BlockPos pos)
default boolean addLandingEffects(IBlockState state1, WorldServer worldserver, BlockPos pos, IBlockState state2, EntityLivingBase entity, int numberOfParticles)
worldserver
- The current Server Worldpos
- The position of the block.state2
- The state at the specific world/posentity
- The entity that hit landed on the blocknumberOfParticles
- That vanilla world have spawneddefault boolean addRunningEffects(IBlockState state, World world, BlockPos pos, Entity entity)
Entity.spawnRunningParticles()
and is called both,
Client and server side, it's up to the implementor to client check / server check.
By default vanilla spawns particles only on the client and the server methods no-op.state
- The BlockState the entity is running on.world
- The world.pos
- The position at the entities feet.entity
- The entity running on the block.default boolean addHitEffects(IBlockState state, World worldObj, RayTraceResult target, ParticleManager manager)
state
- The current stateworld
- The current worldtarget
- The target the player is looking at {x/y/z/side/sub}manager
- A reference to the current particle manager.default boolean addDestroyEffects(IBlockState state, World world, BlockPos pos, ParticleManager manager)
world
- The current worldpos
- Position to spawn the particlemanager
- A reference to the current particle manager.boolean canSustainPlant(IBlockState state, IBlockReader world, BlockPos pos, EnumFacing facing, IPlantable plantable)
state
- The Current stateworld
- The current worldfacing
- The direction relative to the given position the plant wants to be, typically its UPplantable
- The plant that wants to checkdefault void onPlantGrow(IBlockState state, IWorld world, BlockPos pos, BlockPos source)
state
- The current stateworld
- Current worldpos
- Block position in worldsource
- Source plant's position in worlddefault boolean isFertile(IBlockState state, IBlockReader world, BlockPos pos)
world
- The current worldpos
- Block position in worlddefault boolean isBeaconBase(IBlockState state, IWorldReader world, BlockPos pos, BlockPos beacon)
world
- The current worldpos
- Block position in worldbeacon
- Beacon position in worlddefault int getExpDrop(IBlockState state, IWorldReader world, BlockPos pos, int fortune)
state
- The current stateworld
- The worldpos
- Block positionfortune
- default IBlockState rotate(IBlockState state, IWorld world, BlockPos pos, Rotation direction)
@Nullable default EnumFacing[] getValidRotations(IBlockState state, IBlockReader world, BlockPos pos)
state
- The current stateworld
- The worldpos
- Block position in worlddefault float getEnchantPowerBonus(IBlockState state, IWorldReader world, BlockPos pos)
world
- The Worldpos
- Block position in worlddefault boolean recolorBlock(IBlockState state, IWorld world, BlockPos pos, EnumFacing facing, EnumDyeColor color)
state
- The current stateworld
- The worldpos
- Block positionfortune
- default void onNeighborChange(IBlockState state, IWorldReader world, BlockPos pos, BlockPos neighbor)
world
- The worldpos
- Block position in worldneighbor
- Block position of neighbordefault void observedNeighborChange(IBlockState observerState, World world, BlockPos observerPos, Block changedBlock, BlockPos changedBlockPos)
observerState
- The Observer block's state.world
- The current world.observerPos
- The Observer block's position.changedBlock
- The updated block.changedBlockPos
- The updated block's position.default boolean shouldCheckWeakPower(IBlockState state, IWorldReader world, BlockPos pos, EnumFacing side)
world
- The worldpos
- Block position in worldside
- The INPUT side of the block to be powered - ie the opposite of this block's output sidedefault boolean getWeakChanges(IBlockState state, IWorldReader world, BlockPos pos)
world
- The current worldpos
- Block position in worldToolType getHarvestTool(IBlockState state)
int getHarvestLevel(IBlockState state)
default boolean isToolEffective(IBlockState state, ToolType tool)
default IBlockState getExtendedState(IBlockState state, IBlockReader world, BlockPos pos)
default boolean canRenderInLayer(IBlockState state, BlockRenderLayer layer)
IBakedModel
can use MinecraftForgeClient.getRenderLayer()
to alter the model based on layer.default SoundType getSoundType(IBlockState state, IWorldReader world, BlockPos pos, @Nullable Entity entity)
state
- The stateworld
- The worldpos
- The position. Note that the world may not necessarily have state
here!entity
- The entity that is breaking/stepping on/placing/hitting/falling on this block, or null if no entity is in this context@Nullable default float[] getBeaconColorMultiplier(IBlockState state, IWorldReader world, BlockPos pos, BlockPos beaconPos)
state
- The stateworld
- The worldpos
- The position of this statebeaconPos
- The position of the beacondefault Vec3d getFogColor(IBlockState state, IWorldReader world, BlockPos pos, Entity entity, Vec3d originalColor, float partialTicks)
world
- The world.pos
- The position at the entity viewport.state
- The state at the entity viewport.entity
- the entityoriginalColor
- The current fog color, You are not expected to use this, Return as the default if applicable.default IBlockState getStateAtViewpoint(IBlockState state, IBlockReader world, BlockPos pos, Vec3d viewpoint)
ActiveRenderInfo#getBlockStateAtEntityViewpoint(World, Entity, float)
).
Can be used by fluid blocks to determine if the viewpoint is within the fluid or not.state
- the stateworld
- the worldpos
- the positionviewpoint
- the viewpointdefault IBlockState getStateForPlacement(IBlockState state, EnumFacing facing, IBlockState state2, IWorld world, BlockPos pos1, BlockPos pos2, EnumHand hand)
IBlockState
to placeworld
- The world the block is being placed inpos
- The position the block is being placed atfacing
- The side the block is being placed onhitX
- The X coordinate of the hit vectorhitY
- The Y coordinate of the hit vectorhitZ
- The Z coordinate of the hit vectormeta
- The metadata of ItemStack
as processed by Item#getMetadata(int)
placer
- The entity placing the blockhand
- The player hand used to place this blockdefault boolean canBeConnectedTo(IBlockState state, IBlockReader world, BlockPos pos, EnumFacing facing)
world
- The current worldpos
- The position of this blockfacing
- The side the connecting block is on@Nullable default PathNodeType getAiPathNodeType(IBlockState state, IBlockReader world, BlockPos pos, @Nullable EntityLiving entity)
PathNodeType
for this block. Return null
for vanilla behavior.default boolean doesSideBlockChestOpening(IBlockState blockState, IBlockReader world, BlockPos pos, EnumFacing side)
blockState
- The state for this blockworld
- The world this block is inpos
- The position of this blockside
- The side of this block that the chest lid is trying to open intodefault boolean isStickyBlock(IBlockState state)
state
- The statedefault void getDrops(IBlockState state, NonNullList<ItemStack> drops, World world, BlockPos pos, int fortune)
state
- Current statedrops
- add all items this block drops to this drops listworld
- The current world, Currently hard 'World' and not 'IBlockReder' because vanilla needs it.pos
- Block position in worldfortune
- Breakers fortune leveldefault int getFlammability(IBlockState state, IBlockReader world, BlockPos pos, EnumFacing face)
state
- The current stateworld
- The current worldpos
- Block position in worldface
- The face that the fire is coming fromdefault boolean isFlammable(IBlockState state, IBlockReader world, BlockPos pos, EnumFacing face)
state
- The current stateworld
- The current worldpos
- Block position in worldface
- The face that the fire is coming fromdefault int getFireSpreadSpeed(IBlockState state, IBlockReader world, BlockPos pos, EnumFacing face)
state
- The current stateworld
- The current worldpos
- Block position in worldface
- The face that the fire is coming fromdefault boolean isFireSource(IBlockState state, IBlockReader world, BlockPos pos, EnumFacing side)
state
- The current stateworld
- The current worldpos
- Block position in worldside
- The face that the fire is coming fromdefault boolean canEntityDestroy(IBlockState state, IBlockReader world, BlockPos pos, Entity entity)
state
- The current stateworld
- The current worldpos
- Block position in worlddefault boolean isTopSolid(IBlockState state, IWorldReader world, BlockPos pos)
world
- The worldpos
- Block position in world@Nullable default RayTraceResult getRayTraceResult(IBlockState state, World world, BlockPos pos, Vec3d start, Vec3d end, RayTraceResult original)
state
- The current stateworld
- The current worldpos
- Block position in worldstart
- The start vectorend
- The end vectororiginal
- The original result from Block.collisionRayTrace(IBlockState, World, BlockPos, Vec3d, Vec3d)