Class ImmersiveClientLogicHelpersImpl

java.lang.Object
com.hammy275.immersivemc.common.api_impl.ImmersiveLogicHelpersImpl
com.hammy275.immersivemc.client.api_impl.ImmersiveClientLogicHelpersImpl
All Implemented Interfaces:
ImmersiveClientLogicHelpers, ImmersiveLogicHelpers

public class ImmersiveClientLogicHelpersImpl extends ImmersiveLogicHelpersImpl implements ImmersiveClientLogicHelpers
  • Field Details

  • Constructor Details

    • ImmersiveClientLogicHelpersImpl

      public ImmersiveClientLogicHelpersImpl()
  • Method Details

    • setCooldown

      public void setCooldown(int cooldown)
      Description copied from interface: ImmersiveClientLogicHelpers
      Sets both the vanilla, right-click cooldown and ImmersiveMC's VR cooldown for interacting with Immersives (if the player is in VR) to some number of ticks. You likely don't need this, as the value returned from Immersive.handleHitboxInteract(ImmersiveInfo, LocalPlayer, int, InteractionHand) is set as the cooldown where appropriate. This is mainly useful if you're working outside of ImmersiveMC's hitbox system.
      Specified by:
      setCooldown in interface ImmersiveClientLogicHelpers
      Parameters:
      cooldown - The cooldown to set in ticks.
    • sendSwapPacket

      public void sendSwapPacket(net.minecraft.core.BlockPos pos, int slot, net.minecraft.world.InteractionHand hand)
      Description copied from interface: ImmersiveClientLogicHelpers
      Sends the packet to the server telling it to run ImmersiveHandler.swap(int, InteractionHand, BlockPos, ServerPlayer, com.hammy275.immersivemc.api.server.ItemSwapAmount) for the provided block at the given position. You usually should call this when a hitbox is right-clicked in your Immersive.
      Specified by:
      sendSwapPacket in interface ImmersiveClientLogicHelpers
      Parameters:
      pos - The position of the block that a swap is being performed at.
      slot - The slot number that the right-click is taking place.
      hand - The hand which is performing the swap.
    • getLight

      public int getLight(net.minecraft.core.BlockPos pos)
      Description copied from interface: ImmersiveClientLogicHelpers
      Get the intended light level to render with at the given position as packed sky light and block light. This may not necessarily return the actual light level at the given block, though it should be treated as such.
      Specified by:
      getLight in interface ImmersiveClientLogicHelpers
      Parameters:
      pos - The position to get the intended light level for rendering at.
      Returns:
      The intended light level for rendering.
    • getLight

      public int getLight(Iterable<net.minecraft.core.BlockPos> positions)
      Description copied from interface: ImmersiveClientLogicHelpers
      Get the intended light level to render with given several positions. The value returned is a packed sky light and block light, and intentionally may not necessarily return data consistent with all the positions, though should be treated as such.
      Specified by:
      getLight in interface ImmersiveClientLogicHelpers
      Parameters:
      positions - The positions to get the intended light rendering for.
      Returns:
      The intended light level for rendering.