Class BuildToolPlacementMessage

java.lang.Object
com.ldtteam.structurize.network.messages.BuildToolPlacementMessage
All Implemented Interfaces:
IMessage

public class BuildToolPlacementMessage extends Object implements IMessage
Send build tool data to the server. Verify the data on the server side and then place the blueprint. This also buffers the incoming messages, places one per tick and loads the file off-thread.
  • Field Details

    • type

      Identify the Client side handler.
    • handlerId

      public final String handlerId
    • structurePackId

      public final String structurePackId
      Structure placement info.
    • blueprintPath

      public final String blueprintPath
    • pos

      public final net.minecraft.core.BlockPos pos
    • rotation

      public final net.minecraft.world.level.block.Rotation rotation
    • mirror

      public final net.minecraft.world.level.block.Mirror mirror
    • world

      public net.minecraft.world.level.Level world
      Cached placement info.
    • player

      public net.minecraft.server.level.ServerPlayer player
    • clientPack

      public boolean clientPack
  • Constructor Details

    • BuildToolPlacementMessage

      public BuildToolPlacementMessage(net.minecraft.network.FriendlyByteBuf buf)
      Buffer reading message constructor.
    • BuildToolPlacementMessage

      public BuildToolPlacementMessage(BuildToolPlacementMessage.HandlerType type, String handlerId, String structurePackId, String blueprintPath, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.Rotation rotation, net.minecraft.world.level.block.Mirror mirror)
      Send placement data to the server.
      Parameters:
      type - the type of placement.
      handlerId - additional handler meta data.
      structurePackId - the id of the pack.
      blueprintPath - the path of the structure in the pack.
      pos - the position of the blueprint.
      rotation - the rotation of the blueprint.
      mirror - the mirror of the blueprint.
    • BuildToolPlacementMessage

      public BuildToolPlacementMessage(BlueprintSyncMessage msg, net.minecraft.server.level.ServerPlayer player, net.minecraft.world.level.Level world)
      Create a placement message from the sync message.
      Parameters:
      msg - the sync message.
  • Method Details

    • toBytes

      public void toBytes(net.minecraft.network.FriendlyByteBuf buf)
      Writes this packet to a ByteBuf.
      Specified by:
      toBytes in interface IMessage
      Parameters:
      buf - The buffer being written to.
    • getExecutionSide

      @Nullable public @Nullable net.minecraftforge.fml.LogicalSide getExecutionSide()
      Description copied from interface: IMessage
      Which sides is message able to be executed at.
      Specified by:
      getExecutionSide in interface IMessage
      Returns:
      CLIENT or SERVER or null (for both)
    • onExecute

      public void onExecute(net.minecraftforge.network.NetworkEvent.Context ctxIn, boolean isLogicalServer)
      Description copied from interface: IMessage
      Executes message action.
      Specified by:
      onExecute in interface IMessage
      Parameters:
      ctxIn - network context of incoming message
      isLogicalServer - whether message arrived at logical server side