Skip to content
iPlugin

制作标题与按钮动画

让标题每四十 tick 轮换、染料按钮每二十 tick 变色,点击后关闭菜单。

完成后的菜单只有一行:中央染料按钮在黄绿色、绿色间轮换,标题轮换两段文字。标题与按钮各自循环,点击按钮关闭整个菜单。

animation-demo.yml配置效果示意 · 非游戏截图
图示状态标题 1 · 图标 1
窗口槽位 4窗口坐标 4x0面板局部坐标 4x0字符 A

标题与图标分别循环;切换状态可查看各帧外观。

1. 保存菜单文件

创建 plugins/Invero/workspace/animation-demo.yml,写入下面的完整配置,或下载 animation-demo.yml。

plugins/Invero/workspace/animation-demo.yml
menu:
  rows: 1
  title:
    period: 40
    type: LOOP
    values:
      - '&8功能菜单'
      - '&8点击按钮关闭'
panels:
  - layout:
      - '    A    '
    icons:
      A:
        material: GREEN_DYE
        name: '&a关闭菜单'
        frames-prop:
          period: 20
          mode: LOOP
        frames:
          - material: LIME_DYE
          - material: GREEN_DYE
        action: 'menu close'

2. 设置标题节奏

标题配置位于 menu.title:

  • values 中两行是实际显示的“功能菜单”和“点击按钮关闭”。
  • period: 40 让每段标题显示四十 tick,20 TPS 时约两秒。
  • type: LOOP 按列表顺序循环,不在最后一段停止。

本例没有动态变量,不需要添加 pre-generate: false。要让变量在每轮显示时重新计算,再设置该字段。

3. 设置按钮节奏与动作

按钮在 panels[0].icons.A,布局 ' A ' 将它放在局部及窗口槽位 4。

  • material: GREEN_DYE 是默认物品,名称为“关闭菜单”。
  • frames 第一帧 LIME_DYE、第二帧 GREEN_DYE,启动多帧播放后从第一帧开始。
  • frames-prop.period: 20 使每个颜色显示二十 tick,20 TPS 时约一秒。
  • 名称没有写进每个帧,所以沿用默认名称;action: menu close 位于图标层,不在帧内。

标题和物品的节奏不一样,但关闭动作始终相同,不需要为两帧分别添加点击动作。

4. 打开并观察

/invero menu reload
/invero menu open animation-demo

观察两次按钮变色后,标题完成一次切换;点击任一颜色的按钮,菜单关闭。图示为配置效果示意,不是游戏截图或运行中的菜单。

如果某一帧需要停留更久,在那一帧内写 delay;要做位置移动则为每个位置帧明确填写 slot。所有字段、模式及图标播放限制见动画配置,不要把标题与图标的 ONE_WAY 当成完全相同的效果。

Last updated on