Class AdvancedMeteorLaserBlock

java.lang.Object
net.minecraft.world.level.block.state.BlockBehaviour
net.minecraft.world.level.block.Block
net.minecraft.world.level.block.BaseEntityBlock
me.emafire003.dev.ohmymeteors.blocks.basic_laser.BasicMeteorLaserBlock
me.emafire003.dev.ohmymeteors.blocks.advanced_laser.AdvancedMeteorLaserBlock
All Implemented Interfaces:
net.fabricmc.fabric.api.block.v1.FabricBlock, net.minecraft.world.flag.FeatureElement, net.minecraft.world.level.block.EntityBlock, net.minecraft.world.level.ItemLike

public class AdvancedMeteorLaserBlock extends BasicMeteorLaserBlock
  • Nested Class Summary

    Nested classes/interfaces inherited from class net.minecraft.world.level.block.Block

    net.minecraft.world.level.block.Block.BlockStatePairKey

    Nested classes/interfaces inherited from class net.minecraft.world.level.block.state.BlockBehaviour

    net.minecraft.world.level.block.state.BlockBehaviour.BlockStateBase, net.minecraft.world.level.block.state.BlockBehaviour.OffsetFunction, net.minecraft.world.level.block.state.BlockBehaviour.OffsetType, net.minecraft.world.level.block.state.BlockBehaviour.Properties, net.minecraft.world.level.block.state.BlockBehaviour.StateArgumentPredicate<A>, net.minecraft.world.level.block.state.BlockBehaviour.StatePredicate
  • Field Summary

    Fields inherited from class me.emafire003.dev.ohmymeteors.blocks.basic_laser.BasicMeteorLaserBlock

    FIRING, IN_COOLDOWN, SHOW_AREA

    Fields inherited from class net.minecraft.world.level.block.Block

    BLOCK_STATE_REGISTRY, INDESTRUCTIBLE, INSTANT, stateDefinition, UPDATE_ALL, UPDATE_ALL_IMMEDIATE, UPDATE_CLIENTS, UPDATE_IMMEDIATE, UPDATE_INVISIBLE, UPDATE_KNOWN_SHAPE, UPDATE_LIMIT, UPDATE_MOVE_BY_PISTON, UPDATE_NEIGHBORS, UPDATE_NONE, UPDATE_SUPPRESS_DROPS

    Fields inherited from class net.minecraft.world.level.block.state.BlockBehaviour

    drops, dynamicShape, explosionResistance, friction, hasCollision, isRandomlyTicking, jumpFactor, properties, requiredFeatures, soundType, speedFactor, UPDATE_SHAPE_ORDER

    Fields inherited from interface net.minecraft.world.flag.FeatureElement

    FILTERED_REGISTRIES
  • Constructor Summary

    Constructors
    Constructor
    Description
    AdvancedMeteorLaserBlock(net.minecraft.world.level.block.state.BlockBehaviour.Properties settings)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static boolean
     
    static void
    Wakes up all the lasers to check for meteors above them.
    protected static int
     
    <T extends net.minecraft.world.level.block.entity.BlockEntity>
    @Nullable net.minecraft.world.level.block.entity.BlockEntityTicker<T>
    getTicker(net.minecraft.world.level.Level world, net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.entity.BlockEntityType<T> type)
     
    protected static int
     
    @Nullable net.minecraft.world.level.block.entity.BlockEntity
    newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
     
    static void
    putInCooldown(net.minecraft.world.level.block.entity.BlockEntity entity)
    Puts a laser block in cooldown for some time
    static void
    removeCooldown(net.minecraft.world.level.block.entity.BlockEntity entity, net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.Level world, net.minecraft.core.BlockPos pos)
     

    Methods inherited from class me.emafire003.dev.ohmymeteors.blocks.basic_laser.BasicMeteorLaserBlock

    createBlockStateDefinition, getRenderShape, getShape, makeShape, tick, use

    Methods inherited from class net.minecraft.world.level.block.BaseEntityBlock

    createTickerHelper, getMenuProvider, triggerEvent

    Methods inherited from class net.minecraft.world.level.block.Block

    animateTick, appendHoverText, asBlock, asItem, box, builtInRegistryHolder, byItem, canSupportCenter, canSupportRigidBlock, defaultBlockState, destroy, dropFromExplosion, dropResources, dropResources, dropResources, fallOn, getCloneItemStack, getDescriptionId, getDrops, getDrops, getExplosionResistance, getFriction, getId, getJumpFactor, getName, getShapeForEachState, getSoundType, getSpeedFactor, getStateDefinition, getStateForPlacement, handlePrecipitation, hasDynamicShape, isExceptionForConnection, isFaceFull, isPossibleToRespawnInThis, isRandomlyTicking, isShapeFullBlock, playerDestroy, playerWillDestroy, popExperience, popResource, popResourceFromFace, propagatesSkylightDown, pushEntitiesUp, registerDefaultState, setPlacedBy, shouldRenderFace, spawnDestroyParticles, stateById, stepOn, toString, tryDropExperience, updateEntityAfterFallOn, updateFromNeighbourShapes, updateOrDestroy, updateOrDestroy, wasExploded, withPropertiesOf

    Methods inherited from class net.minecraft.world.level.block.state.BlockBehaviour

    attack, canBeReplaced, canBeReplaced, canSurvive, defaultDestroyTime, defaultMapColor, entityInside, getAnalogOutputSignal, getBlockSupportShape, getCollisionShape, getDestroyProgress, getDirectSignal, getDrops, getFluidState, getInteractionShape, getLightBlock, getLootTable, getMaxHorizontalOffset, getMaxVerticalOffset, getOcclusionShape, getSeed, getShadeBrightness, getSignal, getVisualShape, hasAnalogOutputSignal, isCollisionShapeFullBlock, isOcclusionShapeFullBlock, isPathfindable, isSignalSource, mirror, neighborChanged, onPlace, onProjectileHit, onRemove, randomTick, requiredFeatures, rotate, skipRendering, spawnAfterBreak, tick, updateIndirectNeighbourShapes, updateShape, useShapeForLightOcclusion

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface net.minecraft.world.level.block.EntityBlock

    getListener

    Methods inherited from interface net.fabricmc.fabric.api.block.v1.FabricBlock

    getAppearance

    Methods inherited from interface net.minecraft.world.flag.FeatureElement

    isEnabled
  • Constructor Details

    • AdvancedMeteorLaserBlock

      public AdvancedMeteorLaserBlock(net.minecraft.world.level.block.state.BlockBehaviour.Properties settings)
  • Method Details

    • newBlockEntity

      @Nullable public @Nullable net.minecraft.world.level.block.entity.BlockEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
      Specified by:
      newBlockEntity in interface net.minecraft.world.level.block.EntityBlock
      Overrides:
      newBlockEntity in class BasicMeteorLaserBlock
    • getTicker

      @Nullable public <T extends net.minecraft.world.level.block.entity.BlockEntity> @Nullable net.minecraft.world.level.block.entity.BlockEntityTicker<T> getTicker(net.minecraft.world.level.Level world, net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.entity.BlockEntityType<T> type)
      Specified by:
      getTicker in interface net.minecraft.world.level.block.EntityBlock
      Overrides:
      getTicker in class BasicMeteorLaserBlock
    • awakeLasers

      public static void awakeLasers()
      Wakes up all the lasers to check for meteors above them. They automatically go back to sleep after AWAKE_TIME_LIMIT ticks
    • areLasersAwake

      public static boolean areLasersAwake()
    • getYLevelAreaCoverage

      protected static int getYLevelAreaCoverage()
    • getRadiusAreaCoverage

      protected static int getRadiusAreaCoverage()
    • putInCooldown

      public static void putInCooldown(net.minecraft.world.level.block.entity.BlockEntity entity)
      Puts a laser block in cooldown for some time
    • removeCooldown

      public static void removeCooldown(net.minecraft.world.level.block.entity.BlockEntity entity, net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.Level world, net.minecraft.core.BlockPos pos)