Class ProgWidgetArea

java.lang.Object
me.desht.pneumaticcraft.common.drone.progwidgets.ProgWidget
me.desht.pneumaticcraft.common.drone.progwidgets.ProgWidgetArea
All Implemented Interfaces:
IProgWidgetBase, IAreaProvider, IProgWidget, IVariableWidget

public class ProgWidgetArea extends ProgWidget implements IAreaProvider, IVariableWidget
The Area widget itself
  • Field Details

  • Constructor Details

    • ProgWidgetArea

      public ProgWidgetArea()
  • Method Details

    • getAllAreaTypes

      public static List<AreaType> getAllAreaTypes()
    • fromPosition

      public static ProgWidgetArea fromPosition(net.minecraft.core.BlockPos p1)
    • fromPosition

      public static ProgWidgetArea fromPosition(net.minecraft.core.BlockPos p1, int expand)
    • fromPosition

      public static ProgWidgetArea fromPosition(net.minecraft.core.BlockPos p1, int expandX, int expandY, int expandZ)
    • fromPositions

      public static ProgWidgetArea fromPositions(net.minecraft.core.BlockPos p1, net.minecraft.core.BlockPos p2)
    • getExtraStringInfo

      public List<net.minecraft.network.chat.Component> getExtraStringInfo()
      Specified by:
      getExtraStringInfo in interface IProgWidget
      Overrides:
      getExtraStringInfo in class ProgWidget
    • getTooltip

      public void getTooltip(List<net.minecraft.network.chat.Component> curTooltip)
      Specified by:
      getTooltip in interface IProgWidget
      Overrides:
      getTooltip in class ProgWidget
    • addAreaTypeTooltip

      public void addAreaTypeTooltip(List<net.minecraft.network.chat.Component> curTooltip)
    • addErrors

      public void addErrors(List<net.minecraft.network.chat.Component> curInfo, List<IProgWidget> widgets)
      Specified by:
      addErrors in interface IProgWidget
      Overrides:
      addErrors in class ProgWidget
    • hasStepInput

      public boolean hasStepInput()
      Description copied from interface: IProgWidget
      Can this widget connect to a widget above?
      Specified by:
      hasStepInput in interface IProgWidget
      Returns:
      true if it can, false otherwise
    • returnType

      public ProgWidgetType<?> returnType()
      Description copied from interface: IProgWidget
      For parameter widgets that are added onto the left or right of another widget, get the type of the widget being connected to.
      Specified by:
      returnType in interface IProgWidget
      Returns:
      the widget being connected to, or null if this widget isn't a parameter widget.
    • getParameters

      public List<ProgWidgetType<?>> getParameters()
      Description copied from interface: IProgWidget
      Get the types of the widgets which connect to this widget on the right, in order (top to bottom). Note that the length of the widget array returned by IProgWidget.getConnectedParameters() will be double the length of this list, since these widgets can be added on both the right (whitelist) and left (blacklist) sides.
      Specified by:
      getParameters in interface IProgWidget
      Returns:
      a list of widget types, or an empty list if no widgets can be added to the side of this widget
    • getTexture

      public net.minecraft.resources.ResourceLocation getTexture()
      Specified by:
      getTexture in interface IProgWidget
    • getArea

      public void getArea(Set<net.minecraft.core.BlockPos> area)
      Specified by:
      getArea in interface IAreaProvider
    • getArea

      public void getArea(Set<net.minecraft.core.BlockPos> area, AreaType areaType)
    • writeToPacket

      public void writeToPacket(net.minecraft.network.FriendlyByteBuf buf)
      Specified by:
      writeToPacket in interface IProgWidget
      Overrides:
      writeToPacket in class ProgWidget
    • readFromPacket

      public void readFromPacket(net.minecraft.network.FriendlyByteBuf buf)
      Specified by:
      readFromPacket in interface IProgWidget
      Overrides:
      readFromPacket in class ProgWidget
    • writeToNBT

      public void writeToNBT(net.minecraft.nbt.CompoundTag tag)
      Description copied from interface: IProgWidget
      At least do tag.putString("name", getTypeID().toString());

      Note that the base implementation ProgWidget does this.

      Specified by:
      writeToNBT in interface IProgWidget
      Overrides:
      writeToNBT in class ProgWidget
      Parameters:
      tag - NBT tag to write to
    • readFromNBT

      public void readFromNBT(net.minecraft.nbt.CompoundTag tag)
      Specified by:
      readFromNBT in interface IProgWidget
      Overrides:
      readFromNBT in class ProgWidget
    • createType

      public static AreaType createType(String id)
    • createType

      public static AreaType createType(int id)
    • getDifficulty

      public IProgWidget.WidgetDifficulty getDifficulty()
      Specified by:
      getDifficulty in interface IProgWidget
    • getColor

      public net.minecraft.world.item.DyeColor getColor()
      Specified by:
      getColor in interface IProgWidget
    • setPos

      public void setPos(int index, net.minecraft.core.BlockPos newPos)
    • getPos

      public Optional<net.minecraft.core.BlockPos> getPos(int index)
    • getVarName

      public String getVarName(int index)
    • setVarName

      public void setVarName(int index, String varName)
    • setAIManager

      public void setAIManager(DroneAIManager aiManager)
      Specified by:
      setAIManager in interface IVariableWidget
    • addVariables

      public void addVariables(Set<String> variables)
      Specified by:
      addVariables in interface IVariableWidget
    • setVariableProvider

      public void setVariableProvider(IVariableProvider provider, UUID playerID)