@@ -10,11 +10,15 @@ import me.arasple.mc.trchat.module.display.function.standard.ItemShow
10
10
import me.arasple.mc.trchat.module.internal.TrChatBukkit
11
11
import me.arasple.mc.trchat.module.internal.proxy.redis.RedisManager
12
12
import me.arasple.mc.trchat.module.internal.proxy.redis.TrRedisMessage
13
- import me.arasple.mc.trchat.util.*
13
+ import me.arasple.mc.trchat.util.buildMessage
14
+ import me.arasple.mc.trchat.util.print
14
15
import me.arasple.mc.trchat.util.proxy.common.MessageReader
16
+ import me.arasple.mc.trchat.util.sendComponent
17
+ import me.arasple.mc.trchat.util.toUUID
15
18
import org.bukkit.Bukkit
16
19
import org.bukkit.configuration.file.YamlConfiguration
17
20
import org.bukkit.entity.Player
21
+ import org.bukkit.event.inventory.InventoryType
18
22
import org.bukkit.plugin.messaging.PluginMessageListener
19
23
import org.bukkit.plugin.messaging.PluginMessageRecipient
20
24
import taboolib.common.platform.function.console
@@ -55,6 +59,9 @@ sealed interface BukkitProxyProcessor : PluginMessageListener {
55
59
56
60
fun execute (data : Array <String >) {
57
61
when (data[0 ]) {
62
+ " ForwardMessage" -> {
63
+ execute(data.drop(1 ).toTypedArray())
64
+ }
58
65
" SendLang" -> {
59
66
val to = data[1 ]
60
67
val node = data[2 ]
@@ -116,33 +123,36 @@ sealed interface BukkitProxyProcessor : PluginMessageListener {
116
123
BukkitProxyManager .sendMessage(onlinePlayers.firstOrNull(), arrayOf(" LoadedProxyChannel" , id))
117
124
}
118
125
" ItemShow" -> {
119
- if (data[1 ] == MinecraftVersion .minecraftVersion) {
120
- val name = data[2 ]
121
- val sha1 = data[3 ]
122
- if (ItemShow .cacheHopper.getIfPresent(sha1) == null ) {
123
- val inventory = data[4 ].decodeBase64().deserializeToInventory(createNoClickHopper(console().asLangText(" Function-Item-Show-Title" , name)))
124
- ItemShow .cacheHopper.put(sha1, inventory)
125
- }
126
+ if (data[1 ] > MinecraftVersion .minecraftVersion) return
127
+ val name = data[2 ]
128
+ val sha1 = data[3 ]
129
+ if (ItemShow .cacheInventory.getIfPresent(sha1) == null ) {
130
+ val inventory = data[4 ].decodeBase64().deserializeToInventory(
131
+ Bukkit .createInventory(null , InventoryType .HOPPER , console().asLangText(" Function-Item-Show-Title" , name))
132
+ )
133
+ ItemShow .cacheInventory.put(sha1, inventory)
126
134
}
127
135
}
128
136
" InventoryShow" -> {
129
- if (data[1 ] == MinecraftVersion .minecraftVersion) {
130
- val name = data[2 ]
131
- val sha1 = data[3 ]
132
- if (InventoryShow .cache.getIfPresent(sha1) == null ) {
133
- val inventory = data[4 ].decodeBase64().deserializeToInventory(createNoClickChest(6 , console().asLangText(" Function-Inventory-Show-Title" , name)))
134
- InventoryShow .cache.put(sha1, inventory)
135
- }
137
+ if (data[1 ] > MinecraftVersion .minecraftVersion) return
138
+ val name = data[2 ]
139
+ val sha1 = data[3 ]
140
+ if (InventoryShow .cache.getIfPresent(sha1) == null ) {
141
+ val inventory = data[4 ].decodeBase64().deserializeToInventory(
142
+ Bukkit .createInventory(null , 6 , console().asLangText(" Function-Inventory-Show-Title" , name))
143
+ )
144
+ InventoryShow .cache.put(sha1, inventory)
136
145
}
137
146
}
138
147
" EnderChestShow" -> {
139
- if (data[1 ] == MinecraftVersion .minecraftVersion) {
140
- val name = data[2 ]
141
- val sha1 = data[3 ]
142
- if (EnderChestShow .cache.getIfPresent(sha1) == null ) {
143
- val inventory = data[4 ].decodeBase64().deserializeToInventory(createNoClickChest(3 , console().asLangText(" Function-EnderChest-Show-Title" , name)))
144
- EnderChestShow .cache.put(sha1, inventory)
145
- }
148
+ if (data[1 ] > MinecraftVersion .minecraftVersion) return
149
+ val name = data[2 ]
150
+ val sha1 = data[3 ]
151
+ if (EnderChestShow .cache.getIfPresent(sha1) == null ) {
152
+ val inventory = data[4 ].decodeBase64().deserializeToInventory(
153
+ Bukkit .createInventory(null , 3 , console().asLangText(" Function-EnderChest-Show-Title" , name))
154
+ )
155
+ EnderChestShow .cache.put(sha1, inventory)
146
156
}
147
157
}
148
158
}
0 commit comments