forked from TrPlugins/TrMenu
-
Notifications
You must be signed in to change notification settings - Fork 39
Open
Description
🚀 是否已尝试最新的版本
- 我已更新 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
Labels
No labels