java.lang.Object
net.minecraft.client.gui.components.AbstractWidget
org.hiedacamellia.immersiveui.client.gui.component.widget.tree.TreeEntryWidget<ActionData>
org.hiedacamellia.immersiveui.client.gui.component.widget.tree.wheel.WheelTreeEntryWidget
所有已实现的接口:
net.minecraft.client.gui.components.events.GuiEventListener, net.minecraft.client.gui.components.Renderable, net.minecraft.client.gui.components.TabOrderedElement, net.minecraft.client.gui.layouts.LayoutElement, net.minecraft.client.gui.narration.NarratableEntry, net.minecraft.client.gui.narration.NarrationSupplier, net.neoforged.neoforge.client.extensions.IAbstractWidgetExtension

public class WheelTreeEntryWidget extends TreeEntryWidget<ActionData>
WheelTreeEntryWidget 是一个用于表示轮盘树条目的小部件类。 它继承自 TreeEntryWidget,并提供了与轮盘相关的渲染和交互功能。
  • 嵌套类概要

    从接口继承的嵌套类/接口 net.minecraft.client.gui.narration.NarratableEntry

    net.minecraft.client.gui.narration.NarratableEntry.NarrationPriority
  • 字段概要

    字段
    修饰符和类型
    字段
    说明
    protected int
    轮盘条目的中心 X 坐标。
    protected int
    轮盘条目的中心 Y 坐标。
    protected float
    结束角度,用于定义轮盘条目的结束位置。
    protected float
    内半径,用于定义轮盘条目的内边界。
    protected int
    当前条目的层级,用于区分嵌套的轮盘条目。
    protected float
    外半径,用于定义轮盘条目的外边界。
    protected float
    起始角度,用于定义轮盘条目的起始位置。

    从类继承的字段 org.hiedacamellia.immersiveui.client.gui.component.widget.tree.TreeEntryWidget

    children, data, fold, foldComponent, foldWidth, font, isRoot, parent, selfHeight, selfWidth, tree, unfoldComponent

    从类继承的字段 net.minecraft.client.gui.components.AbstractWidget

    active, alpha, height, isHovered, packedFGColor, UNSET_FG_COLOR, visible, width

    从接口继承的字段 net.minecraft.client.gui.components.events.GuiEventListener

    DOUBLE_CLICK_THRESHOLD_MS
  • 构造器概要

    构造器
    构造器
    说明
    WheelTreeEntryWidget(net.minecraft.network.chat.Component message, net.minecraft.client.gui.Font font)
    构造函数,初始化条目并设置消息和字体。
  • 方法概要

    修饰符和类型
    方法
    说明
    create(ActionData data, net.minecraft.network.chat.Component component, net.minecraft.client.gui.Font font)
    创建一个新的 WheelTreeEntryWidget 实例。
    boolean
    isHovered(double mouseX, double mouseY)
    判断鼠标是否悬停在条目上。
    boolean
    mouseClicked(double mouseX, double mouseY, int button)
    处理鼠标点击事件。
    protected void
    renderWidget(net.minecraft.client.gui.GuiGraphics guiGraphics, int mouseX, int mouseY, float v)
    渲染条目小部件。
    void
    调整条目的大小,设置中心点为屏幕中心。
    void
    setAngle(float startAngle, float endAngle)
    设置条目的起始角度和结束角度。
    void
    setLayer(int layer)
    设置条目的层级。
    void
    setRadius(float innerRadius, float outerRadius)
    设置条目的内半径和外半径。
    boolean
    shouldAccept(double mouseX, double mouseY)
    不允许接受子节点
    void
    更新条目小部件的状态。

    从类继承的方法 org.hiedacamellia.immersiveui.client.gui.component.widget.tree.TreeEntryWidget

    accept, addChild, addChild, fold, getAt, getData, getTree, getWidgetAt, hasChild, insert, isRoot, moveChild, of, removeChild, renderChildren, setData, shouldChangeFold, tree, unfold, updateWidgetNarration

    从类继承的方法 net.minecraft.client.gui.components.AbstractWidget

    clearFGColor, clicked, createNarrationMessage, defaultButtonNarrationText, getBottom, getFGColor, getHeight, getMessage, getRectangle, getRight, getTabOrderGroup, getTooltip, getWidth, getX, getY, isActive, isFocused, isHovered, isHoveredOrFocused, isMouseOver, isValidClickButton, mouseDragged, mouseReleased, narrationPriority, nextFocusPath, onClick, onDrag, onRelease, playDownSound, render, renderScrollingString, renderScrollingString, renderScrollingString, setAlpha, setFGColor, setFocused, setHeight, setMessage, setRectangle, setSize, setTabOrderGroup, setTooltip, setTooltipDelay, setWidth, setX, setY, updateNarration, visitWidgets, wrapDefaultNarrationMessage

    从类继承的方法 java.lang.Object

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

    从接口继承的方法 net.minecraft.client.gui.components.events.GuiEventListener

    charTyped, getCurrentFocusPath, keyPressed, keyReleased, mouseMoved, mouseScrolled

    从接口继承的方法 net.neoforged.neoforge.client.extensions.IAbstractWidgetExtension

    onClick

    从接口继承的方法 net.minecraft.client.gui.layouts.LayoutElement

    setPosition
  • 字段详细资料

    • startAngle

      protected float startAngle
      起始角度,用于定义轮盘条目的起始位置。
    • endAngle

      protected float endAngle
      结束角度,用于定义轮盘条目的结束位置。
    • innerRadius

      protected float innerRadius
      内半径,用于定义轮盘条目的内边界。
    • outerRadius

      protected float outerRadius
      外半径,用于定义轮盘条目的外边界。
    • centerX

      protected int centerX
      轮盘条目的中心 X 坐标。
    • centerY

      protected int centerY
      轮盘条目的中心 Y 坐标。
    • layer

      protected int layer
      当前条目的层级,用于区分嵌套的轮盘条目。
  • 构造器详细资料

    • WheelTreeEntryWidget

      public WheelTreeEntryWidget(net.minecraft.network.chat.Component message, net.minecraft.client.gui.Font font)
      构造函数,初始化条目并设置消息和字体。
      参数:
      message - 条目的显示消息
      font - 用于渲染的字体
  • 方法详细资料

    • resize

      public void resize()
      调整条目的大小,设置中心点为屏幕中心。
    • setLayer

      public void setLayer(int layer)
      设置条目的层级。
      参数:
      layer - 层级值
    • setAngle

      public void setAngle(float startAngle, float endAngle)
      设置条目的起始角度和结束角度。
      参数:
      startAngle - 起始角度
      endAngle - 结束角度
    • setRadius

      public void setRadius(float innerRadius, float outerRadius)
      设置条目的内半径和外半径。
      参数:
      innerRadius - 内半径
      outerRadius - 外半径
    • create

      public static WheelTreeEntryWidget create(ActionData data, net.minecraft.network.chat.Component component, net.minecraft.client.gui.Font font)
      创建一个新的 WheelTreeEntryWidget 实例。
      参数:
      data - 条目的动作数据
      component - 条目的显示消息
      font - 用于渲染的字体
      返回:
      创建的 WheelTreeEntryWidget 实例
    • renderWidget

      protected void renderWidget(net.minecraft.client.gui.GuiGraphics guiGraphics, int mouseX, int mouseY, float v)
      渲染条目小部件。
      覆盖:
      renderWidget 在类中 TreeEntryWidget<ActionData>
      参数:
      guiGraphics - 渲染上下文
      mouseX - 鼠标的 X 坐标
      mouseY - 鼠标的 Y 坐标
      v - 渲染的附加参数
    • shouldAccept

      public boolean shouldAccept(double mouseX, double mouseY)
      不允许接受子节点
      覆盖:
      shouldAccept 在类中 TreeEntryWidget<ActionData>
      参数:
      mouseX - 鼠标的 X 坐标
      mouseY - 鼠标的 Y 坐标
      返回:
      如果可以接受返回 true,否则返回 false
    • updateWidget

      public void updateWidget()
      更新条目小部件的状态。 计算子条目的角度、半径和层级,并递归更新子条目。
      覆盖:
      updateWidget 在类中 TreeEntryWidget<ActionData>
    • isHovered

      public boolean isHovered(double mouseX, double mouseY)
      判断鼠标是否悬停在条目上。
      覆盖:
      isHovered 在类中 TreeEntryWidget<ActionData>
      参数:
      mouseX - 鼠标的 X 坐标
      mouseY - 鼠标的 Y 坐标
      返回:
      如果鼠标悬停在条目上则返回 true,否则返回 false
    • mouseClicked

      public boolean mouseClicked(double mouseX, double mouseY, int button)
      处理鼠标点击事件。
      指定者:
      mouseClicked 在接口中 net.minecraft.client.gui.components.events.GuiEventListener
      覆盖:
      mouseClicked 在类中 TreeEntryWidget<ActionData>
      参数:
      mouseX - 鼠标的 X 坐标
      mouseY - 鼠标的 Y 坐标
      button - 鼠标按键
      返回:
      如果事件被处理则返回 true,否则返回 false