mirror of
https://github.com/alexcrea/CustomAnvil.git
synced 2026-06-23 08:14:00 +02:00
add enchantment data
This commit is contained in:
parent
63f2f16b9f
commit
20509faed4
1 changed files with 32 additions and 6 deletions
|
|
@ -22,12 +22,12 @@ import org.bukkit.inventory.ItemStack
|
||||||
import org.bukkit.inventory.meta.Damageable
|
import org.bukkit.inventory.meta.Damageable
|
||||||
import org.bukkit.inventory.meta.EnchantmentStorageMeta
|
import org.bukkit.inventory.meta.EnchantmentStorageMeta
|
||||||
import org.bukkit.plugin.Plugin
|
import org.bukkit.plugin.Plugin
|
||||||
import org.bukkit.plugin.PluginManager
|
|
||||||
import org.bukkit.plugin.RegisteredListener
|
import org.bukkit.plugin.RegisteredListener
|
||||||
import xyz.alexcrea.cuanvil.dependency.DependencyManager
|
import xyz.alexcrea.cuanvil.dependency.DependencyManager
|
||||||
import xyz.alexcrea.cuanvil.dependency.packet.NoPacketManager
|
import xyz.alexcrea.cuanvil.dependency.packet.NoPacketManager
|
||||||
import xyz.alexcrea.cuanvil.dependency.packet.ProtocoLibWrapper
|
import xyz.alexcrea.cuanvil.dependency.packet.ProtocoLibWrapper
|
||||||
import xyz.alexcrea.cuanvil.dependency.packet.versions.PaperPacketManager
|
import xyz.alexcrea.cuanvil.dependency.packet.versions.PaperPacketManager
|
||||||
|
import xyz.alexcrea.cuanvil.enchant.CAEnchantmentRegistry
|
||||||
import xyz.alexcrea.cuanvil.listener.PrepareAnvilListener
|
import xyz.alexcrea.cuanvil.listener.PrepareAnvilListener
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import java.util.stream.Collectors
|
import java.util.stream.Collectors
|
||||||
|
|
@ -42,8 +42,8 @@ class DiagnosticExecutor: CASubCommand() {
|
||||||
enum class DiagParams(val value: String) {
|
enum class DiagParams(val value: String) {
|
||||||
OS_PRIVACY("os_privacy"),
|
OS_PRIVACY("os_privacy"),
|
||||||
PLUGIN_PRIVACY("plugin_privacy"),
|
PLUGIN_PRIVACY("plugin_privacy"),
|
||||||
NO_MERGE_TEST("no_merge_test");
|
NO_MERGE_TEST("no_merge_test"),
|
||||||
// TODO enchant list
|
FULL_ENCHANTMENT_DATA("full_enchantment_data"),
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun fetchParameters(args: Array<out String>): EnumSet<DiagParams> {
|
private fun fetchParameters(args: Array<out String>): EnumSet<DiagParams> {
|
||||||
|
|
@ -142,9 +142,13 @@ class DiagnosticExecutor: CASubCommand() {
|
||||||
prepareAnvilListeners(stb)
|
prepareAnvilListeners(stb)
|
||||||
|
|
||||||
if(!params.contains(DiagParams.NO_MERGE_TEST)){
|
if(!params.contains(DiagParams.NO_MERGE_TEST)){
|
||||||
if(sender is Player) {
|
if(sender is Player) testMerge(sender, stb)
|
||||||
testMerge(sender, stb)
|
}
|
||||||
}
|
|
||||||
|
stb.append("\n\nEnchantments data:")
|
||||||
|
partialEnchantmentData(stb)
|
||||||
|
if(params.contains(DiagParams.FULL_ENCHANTMENT_DATA)){
|
||||||
|
fullEnchantmentData(stb)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -291,4 +295,26 @@ class DiagnosticExecutor: CASubCommand() {
|
||||||
player.closeInventory()
|
player.closeInventory()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun fullEnchantmentData(stb: StringBuilder) {
|
||||||
|
for (enchantment in CAEnchantmentRegistry.getInstance().values()) {
|
||||||
|
stb.append("\n- ").append(enchantment.key.toString())
|
||||||
|
.append(" ").append(enchantment.name)
|
||||||
|
.append(" ").append(enchantment.defaultMaxLevel())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun partialEnchantmentData(stb: StringBuilder) {
|
||||||
|
val map = HashMap<String, Int>()
|
||||||
|
for (enchant in CAEnchantmentRegistry.getInstance().values()) {
|
||||||
|
map[enchant.key.namespace] = map.getOrDefault(enchant.key.namespace, 0) + 1
|
||||||
|
}
|
||||||
|
|
||||||
|
stb.append("\nNamespaces: ${
|
||||||
|
map.entries.stream()
|
||||||
|
.map { (key, value) -> "$key ($value)" }
|
||||||
|
.reduce { a, b -> "$a, $b" }.get()
|
||||||
|
}")
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue