Skip to content

[问题]: ItemsAdder 材質做為菜單參數導入時無法解析 #212

@Snowball0409

Description

@Snowball0409

🚀 是否已尝试最新的版本

  • 我已更新 TrMenu 至最新的版本, 并且同样复现该问题.

📚 是否已查阅 Wiki

  • 我已查阅 Wiki 对于该问题的相关内容, 并确定该问题是存在的.

🔗 是否存在重复 issue

  • 我已翻阅现有的 issue 没有发现内容重复, 亦或是对现有 issue 的更详细的描述.

📰 服务端详细信息

TrMenu Dump Information (Date: xxxx-xx-xx xx:xx:xx)

  | Server OS: Ubuntu 22.04, Linux 6.8.0
  | Server software: paper-1.21.8-60
  | Java version: 21.0.8

  | TrMenu: 3.8.5 (有自行修復ItemActive的問題)
- Installed Plugins:
- BetonQuest.jar 
- EssentialsXSpawn-2.22.0-dev+28-0aa25c8.jar
- LuckPerms-Bukkit-5.5.11.jar 
- QuickShop-Hikari-6.2.0.10.jar 
- Citizens-2.0.39-b3931.jar
- ExcellentCrates-6.3.3.jar 
- nightcore-2.7.16.jar 
- SCore-5.25.9.7.jar 
- VaultUnlocked-2.15.1.jar 
- EssentialsX-2.22.0-dev+28-0aa25c8.jar 
- floodgate-spigot.jar 
- PAPIProxyBridge-Bukkit-1.8.4.jar 
- SignedVelocity-Paper-1.4.0.jar 
- VentureChat-3.8.0.jar 
- EssentialsXDiscord-2.22.0-dev+28-0aa25c8.jar 
- HuskSync-Bukkit-3.8.7-96f3409+mc.1.21.8.jar 
- PlaceholderAPI-2.11.6.jar 
- TAB-Bridge v6.1.5.jar 
- EssentialsXDiscordLink-2.22.0-dev+28-0aa25c8.jar 
- ItemsAdder_4.0.13.jar 
- ProtocolLib.jar 
- TNE-Paper-0.1.4.1-SNAPSHOT-1.jar

🔍 详细的描述

1. 將source:IA:<item_name>作為動作"open: "的參數導入, e.g. "open: Example source:IA:<item_name>"
2. 對應菜單解讀對應的材質:
   "t":
        display: 
            material: "{0}"
3. 遊戲內點開對應菜單, 未顯示icon, log報錯

🗄 服务端日志

[13:57:55] [TConfigWatcherService-1/WARN]: java.lang.IllegalArgumentException: SOUL_FIRE isn't an item
[13:57:55] [TConfigWatcherService-1/WARN]: 	at com.google.common.base.Preconditions.checkArgument(Preconditions.java:218)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at org.bukkit.inventory.ItemStack.of(ItemStack.java:63)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at org.bukkit.inventory.ItemStack.<init>(ItemStack.java:159)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at org.bukkit.inventory.ItemStack.<init>(ItemStack.java:138)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at org.bukkit.inventory.ItemStack.<init>(ItemStack.java:125)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at org.bukkit.inventory.ItemStack.<init>(ItemStack.java:108)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.taboolib.library.xseries.XMaterial.parseItem(XMaterial.java:2330)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.texture.Texture$Companion.parseMaterial(Texture.kt:163)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.texture.Texture$Companion.access$parseMaterial(Texture.kt:74)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.texture.Texture.generate(Texture.kt:40)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.item.Item.generate(Item.kt:77)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.item.Item.build(Item.kt:109)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.item.Item.build$default(Item.kt:104)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.item.Item.get(Item.kt:67)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.icon.Icon.settingItem(Icon.kt:77)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.icon.Icon.filter(Icon.kt:153)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.icon.Icon.onRefresh(Icon.kt:82)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.Menu.loadIcon(Menu.kt:222)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.Menu.open(Menu.kt:112)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.Menu.open$default(Menu.kt:66)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.conf.Loader.listen$lambda$25$lambda$23(Loader.kt:161)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.Menu.forSessions$lambda$27(Menu.kt:283)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.Menu.forViewers(Menu.kt:327)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.display.Menu.forSessions(Menu.kt:283)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.module.conf.Loader.listen$lambda$25(Loader.kt:160)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.util.file.FileListener.listener$lambda$0(FileListener.kt:23)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.taboolib.common5.FileWatcher$FileListener.handleEvent(FileWatcher.java:170)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.taboolib.common5.FileWatcher.lambda$new$1(FileWatcher.java:63)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at java.base/java.util.concurrent.ConcurrentHashMap.forEach(ConcurrentHashMap.java:1603)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.taboolib.common5.FileWatcher.lambda$new$2(FileWatcher.java:61)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at TrMenu-3.8.4.jar//me.arasple.mc.trmenu.taboolib.common5.FileWatcher.lambda$new$3(FileWatcher.java:58)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:358)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
[13:57:55] [TConfigWatcherService-1/WARN]: 	at java.base/java.lang.Thread.run(Thread.java:1583)
[13:57:55] [TConfigWatcherService-1/INFO]: ICON: X

⚙ 配置文件

Shop-Handler-Purchase.yml:

Title:
  - "Purchasing"

Layout:
  - "########<"
  - "|       |"
  - "| - X + |"
  - "|       |"
  - "####*####"

# {0}         {1}         {2}           {3}         {4}        {5}
# {fromMenu} {itemName} {singlePrice} {amount} {currency_bal} {currency_id}
Events:
  Open:
    - "reset"
  Close:
    - "menu: {0}"
    - "del-args"

Icons:
  "#":
    display:
      material: gray stained glass pane
      name: "&7"
  "|":
    display:
      material: cyan stained glass pane
      name: "&7"
  "<":
    display:
      material: red stained glass pane
      name: "&6Return"
    actions:
      all: "menu: {0} &&& sound: UI_BUTTON_CLICK-1-2"

  "-":
    display:
      material: red stained glass pane
      name: "&cAmount -"
      lore:
        - "&8Current Amount: {3}"
        - ""
        - "&8▪ &7Left &f-1"
        - "&8▪ &7Shift Left &f-16"
        - ""
    actions:
      left: "set-args: {0} {1} {2} `${js: Math.max(funInt(3) - 1, 1).toFixed(0)}` {4} {5}"
      shift_left: "set-args: {0} {1} {2} `${js: Math.max(funInt(3) - 16, 1).toFixed(0)}` {4} {5}"
      all: "update: +;-;X &&& sound: UI_BUTTON_CLICK-1-2"

  "+":
    display:
      material: lime stained glass pane
      name: "&aAmount +"
      lore:
        - "&8Current Amount: {3}"
        - ""
        - "&8▪ &7Left &f+1"
        - "&8▪ &7Shift Left &f+16"
        - ""
    actions:
      left: "set-args: {0} {1} {2} `${js: Math.min(funInt(3) + 1, 64).toFixed(0)}` {4} {5}"
      shift_left: "set-args: {0} {1} {2} `${js: Math.min(funInt(3) + 16, 64).toFixed(0)}` {4} {5}"
      all: "update: +;-;X &&& sound: UI_BUTTON_CLICK-1-2"

  "*":
    display:
      material: sunflower
      name: "&e&lCustomizer"
      lore:
        - ""
        - "&7Balance: &e${4}"
        - ""
        - "&a➥ &2Click to set a custom amount quickly"
    actions:
      all:
        - catcher:
            amount:
              type: SIGN
              start: "actionbar: &b&lPlease input a valid number"
              cancel: "tell: &8Cancelled"
              end:
                - 'set-args: {0} {1} {2} `${js: Math.min(Math.max(funInt("meta:input"), 1), 64).toFixed(0)}` {4} {5}'
                - "menu: Shop-Handler-Purchase"

  "X":
    display:
      material: "{1}"
      amount: "${js: funInt(3)}"
      lore:
        - ""
        - "&7Price: &6${2}"
        - "&7Amount: &a{3}"
        - ""
        - "&7Total Price: &e${js: funInt(3) * funDouble(2)}"
        - ""
        - '${js: funDouble(4) >= funInt(3) * funDouble(2) ? "&b➥ &3Click to purchase" : "&c➥ &8You do not have enough money"}'
    actions:
      all:
        - condition: "js: funDouble(4) >= funInt(3) * funDouble(2)"
          actions:
            - "command: {5} pay Bank ${js: funInt(3) * funDouble(2)}"
            - "give-item: material:{1},amt:{3}"
            - "title: &3&lPurchased `&a&lGoods has been delivered`"
            - "sound: BLOCK_NOTE_BLOCK_PLING-1-2"
            - "force-close &&& del-args"
          deny:
            - "sound: BLOCK_ANVIL_DESTROY-1-2"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions