自定义熔炉GUI界面


第一步,在服务端中新建GermPlugin/gui/furnace_xx.yml,并填入对应基础配置

furnace_标题:
  #该配置可以替换所有原版熔炉界面,改变槽位位置、大小等 让你的插件不用改变一个代码 还给你一个全新的UI系统
  #根据furnace_界面名称的一部分 来替换为对应的文件
  #例如有个熔炉界面的标题为 强化系统
  #那么配置的名字为 furnace_强化,furnace_化系,furnace_系统 都会匹配成功
  #
  #当颠覆的furnace界面打开时会生成变量 %opened_furnace_title% = 熔炉的标题
  #颠覆的furnace界面会生成变量 %furnace_burn_progress% = 熔炉的燃料消耗进度 1到0 的小数
  #颠覆的furnace界面会生成变量 %furnace_cook_progress% = 熔炉的生成进度 0到1 的小数
  #
  #与熔炉内指定格子的物品hook 这样可以把原熔炉内的物品放到滚动框内 并控制显示
  # identity germmod_furnace_slot_0
  # identity germmod_furnace_slot_1
  # identity germmod_furnace_slot_2
  private:
    #注意啦注意啦 以下dos仅在熔炉颠覆界面可以用
    # placeholderItem<->FurnaceSlot@0 将熔炉内第一个槽位的所有属性变量化 变量 %furnace_slot_0_tip0% 代表名字 %furnace_slot_0_tip1-100% 分别代表物品描述的1-100行
    # placeholderItem<->PlayerSlot@0 将背包内第一个槽位的所有属性变量化 变量 %player_slot_0_tip0% 代表名字 %player_slot_0_tip1-100% 分别代表物品描述的1-100行
    # 在变量化物品时要注意,应该在变量化物品前加一个100毫秒的delay(不设置可能会获取的变量不准确)
    # 因为在熔炉界面,物品的描述是由插件设置而来,需要一个数据包传输的过程
    # clickSlot<->FurnaceSlot@0 相当于左键点击熔炉内第一个槽位
    # clickSlot<->PlayerSlot@0 相当于左键点击玩家背包第一个槽位
    # rightSlot<->PlayerSlot@0 ........
    # scrollSlot<->PlayerSlot@0 ........
    # shiftClickSlot<->PlayerSlot@0 ........
    # shiftRightSlot<->PlayerSlot@0 ........
    background:
      #图片的材质路径地址可以使用 local<->地址 或者直接输入 地址
      #同时支持网络连接地址 前面必须加上标记 url<-> 例如:url<->https://s1.ax1x.com/2020/06/19/NnqzVK.png
      #背包纹理地址 这个默认的是内置的 填gif是gif
      path: 'textures/gui/player_inventory.png'
      #图片的显示起始坐标(图片的左上角为起始点)
      locationX: "100"
      locationY: "100"
      #宽度width和高度height也同样支持运算符和 w h 变量 w代表整个MC的宽度
      width: "177"
      height: "206"
      #这个图片的动画(可删除此项)
      animations:
        - "default_scale"
    #其他设置
    other:
      #当熔炉开始燃烧时执行的Dos 可以做一些开始燃烧的特效之类的
      startBurningDos:
        - "熔炉开始燃烧了~"
      #是否关闭默认的背景(一个半黑色的透明背景) 默认为false
      disableDefaultBackground: true
      #点击到哪些组件会将鼠标上的物品丢出 (默认为点击没有组件的地方为丢出物品,但是用到全屏GUI时就需要此方法了)
      #填组件名字
      clickPartsDropCursorItem:
        - "background"
        - "drop_item_on_cursor"
    #关于熔炉槽位的魔改设置
    FurnaceSlotSettings:
      #槽位的ID 格式为 slot_ID 每个槽位的ID请对应下图
      #槽位如果有的位置不想调的话就不写就可以了
      Slot_0:
        #槽位是否开启 默认为开启 可删除
        show: false
        size: "32"
        #槽位的背景路径 填GIF是GIF 每个槽位都有这两个选项
        #当然 你也可以直接删除这两个选项 把槽位的背景直接画在background上
        emptyPath: "textures/misc/logo.png"
        fillPath: "textures/misc/warn.png"
        #槽位的位置
        locationX: '10'
        locationY: '30'
        #当物品槽位为空的时候悬浮在槽位上提示这个
        tooltip:
          - "我是悬浮的呢个"
      Slot_1:
        show: false
        #槽位的大小 可删除 默认为 16
        size: "16"
        locationX: '10'
        locationY: '30'
      Slot_2:
        show: false
        #槽位的大小 可删除 默认为 16
        size: "16"
        locationX: '10'
        locationY: '30'
    #关于玩家背包的魔改设置
    PlayerSlotSettings:
      #槽位的ID 格式为 slot_ID 每个槽位的ID请对应下图
      #槽位如果有的位置不想调的话就不写就可以了
      Slot_0:
        #槽位是否开启 默认为开启 可删除
        show: false
        size: "32"
        #槽位的位置
        locationX: '10'
        locationY: '30'
      Slot_1:
        show: false
        #槽位的大小 可删除 默认为 16
        size: "16"
        locationX: '10'
        locationY: '30'
      Slot_2:
        show: true
        locationX: 'w*0.208'
        locationY: 'h*0.016'
      Slot_3:
        show: true
        locationX: 'w*0.23'
        locationY: 'h*0.016'
      Slot_4:
        show: true
        locationX: 'w*0.166'
        locationY: 'h*0.058'
      Slot_5:
        show: true
        locationX: 'w*0.1875'
        locationY: 'h*0.058'
      Slot_6:
        show: true
        locationX: 'w*0.208'
        locationY: 'h*0.058'
      Slot_7:
        show: true
        locationX: 'w*0.23'
        locationY: 'h*0.058'
      Slot_8:
        show: true
        locationX: 'w*0.166'
        locationY: 'h*0.1'
      Slot_9:
        show: true
        locationX: 'w*0.1875'
        locationY: 'h*0.1'
      Slot_10:
        show: true
        locationX: 'w*0.208'
        locationY: 'h*0.1'
      Slot_11:
        show: true
        locationX: 'w*0.23'
        locationY: 'h*0.1'
      Slot_12:
        show: true
        locationX: 'w*0.166'
        locationY: 'h*0.142'
      Slot_13:
        show: true
        locationX: 'w*0.1875'
        locationY: 'h*0.142'
      Slot_14:
        show: true
        locationX: 'w*0.208'
        locationY: 'h*0.142'
      Slot_15:
        show: true
        locationX: 'w*0.23'
        locationY: 'h*0.142'
      Slot_16:
        show: true
        locationX: 'w*0.166'
        locationY: 'h*0.182'
      Slot_17:
        show: true
        locationX: 'w*0.1875'
        locationY: 'h*0.182'
      Slot_18:
        show: true
        locationX: 'w*0.208'
        locationY: 'h*0.182'
      Slot_19:
        show: true
        locationX: 'w*0.23'
        locationY: 'h*0.182'
      Slot_20:
        show: true
        locationX: 'w*0.166'
        locationY: 'h*0.226'
      Slot_21:
        show: true
        locationX: 'w*0.1875'
        locationY: 'h*0.226'
      Slot_22:
        show: true
        locationX: 'w*0.208'
        locationY: 'h*0.226'
      Slot_23:
        show: true
        locationX: 'w*0.23'
        locationY: 'h*0.226'
      Slot_24:
        show: true
        locationX: 'w*0.166'
        locationY: 'h*0.266'
      Slot_25:
        show: true
        locationX: 'w*0.1875'
        locationY: 'h*0.266'
      Slot_26:
        show: true
        locationX: 'w*0.208'
        locationY: 'h*0.266'
      Slot_27:
        show: false
        locationX: '33'
        locationY: 'h*0.44'
      Slot_28:
        show: true
        locationX: 'w*0.055'
        locationY: 'h*0.44'
      Slot_29:
        show: true
        locationX: 'w*0.077'
        locationY: 'h*0.44'
      Slot_30:
        show: true
        locationX: 'w*0.098'
        locationY: 'h*0.44'
      Slot_31:
        show: true
        locationX: 'w*0.1198'
        locationY: 'h*0.44'
      Slot_32:
        show: true
        locationX: 'w*0.1416'
        locationY: 'h*0.44'
      Slot_33:
        show: true
        locationX: 'w*0.1635'
        locationY: 'h*0.44'
      Slot_34:
        show: true
        locationX: 'w*0.1854'
        locationY: 'h*0.44'
      Slot_35:
        show: true
        locationX: 'w*0.206'
        locationY: 'h*0.44'

红色ID为FurnaceSlotSettings对应ID,蓝色ID为PlayerSlotSettings对应ID


第二步,按照第二节的教程来调整背景大小并添加你的需要的组件吧 😝

results matching ""

    No results matching ""