Revert "Added "undyable" arg parser"

This reverts commit a9c32000d8.
This commit is contained in:
Auxilor
2022-11-07 15:00:47 +00:00
parent f15ec5eec0
commit ee2911b57c
3 changed files with 9 additions and 76 deletions

View File

@@ -1,51 +0,0 @@
package com.willfp.eco.internal.items
import com.willfp.eco.core.Eco
import com.willfp.eco.core.items.args.LookupArgParser
import com.willfp.eco.util.NamespacedKeyUtils
import org.bukkit.NamespacedKey
import org.bukkit.inventory.ItemStack
import org.bukkit.inventory.meta.ItemMeta
import org.bukkit.persistence.PersistentDataType
import java.util.function.Predicate
object ArgParserUndyeable : LookupArgParser {
override fun parseArguments(args: Array<out String>, meta: ItemMeta): Predicate<ItemStack>? {
var undyeable = false
for (arg in args) {
if (arg.equals("undyeable", true)) {
undyeable = true
}
}
if (!undyeable) {
return null
}
meta.isUndyeable = true
return Predicate {
val testMeta = it.itemMeta ?: return@Predicate false
testMeta.isUndyeable
}
}
override fun serializeBack(meta: ItemMeta): String? {
if (!meta.isUndyeable) {
return null
}
return "undyeable"
}
val key: NamespacedKey
get() = NamespacedKeyUtils.fromString("eco:undyeable")
var ItemMeta.isUndyeable: Boolean
get() = this.persistentDataContainer.get(key, PersistentDataType.INTEGER) == 1
set(value) {
this.persistentDataContainer.set(key, PersistentDataType.INTEGER, if (value) 1 else 0)
}
}

View File

@@ -38,7 +38,13 @@ import com.willfp.eco.internal.entities.EntityArgParserSilent
import com.willfp.eco.internal.entities.EntityArgParserSize
import com.willfp.eco.internal.entities.EntityArgParserSpawnReinforcements
import com.willfp.eco.internal.entities.EntityArgParserSpeed
import com.willfp.eco.internal.items.*
import com.willfp.eco.internal.items.ArgParserColor
import com.willfp.eco.internal.items.ArgParserCustomModelData
import com.willfp.eco.internal.items.ArgParserEnchantment
import com.willfp.eco.internal.items.ArgParserFlag
import com.willfp.eco.internal.items.ArgParserName
import com.willfp.eco.internal.items.ArgParserTexture
import com.willfp.eco.internal.items.ArgParserUnbreakable
import com.willfp.eco.internal.lookup.SegmentParserGroup
import com.willfp.eco.internal.lookup.SegmentParserUseIfPresent
import com.willfp.eco.internal.particle.ParticleFactoryRGB
@@ -81,6 +87,7 @@ import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefCombatLogX
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefCombatLogXV11
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefCrashClaim
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefDeluxeCombat
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefFabledSkyBlock
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefFactionsUUID
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefGriefPrevention
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefIridiumSkyblock
@@ -116,7 +123,6 @@ import com.willfp.eco.internal.spigot.recipes.CraftingRecipeListener
import com.willfp.eco.internal.spigot.recipes.StackedRecipeListener
import com.willfp.eco.internal.spigot.recipes.listeners.ComplexInComplex
import com.willfp.eco.internal.spigot.recipes.listeners.ComplexInVanilla
import com.willfp.eco.internal.spigot.recipes.listeners.Undyeable
import com.willfp.eco.internal.spigot.recipes.stackhandlers.ShapedCraftingRecipeStackHandler
import com.willfp.eco.internal.spigot.recipes.stackhandlers.ShapelessCraftingRecipeStackHandler
import net.kyori.adventure.platform.bukkit.BukkitAudiences
@@ -139,7 +145,6 @@ abstract class EcoSpigotPlugin : EcoPlugin() {
Items.registerArgParser(ArgParserFlag)
Items.registerArgParser(ArgParserUnbreakable)
Items.registerArgParser(ArgParserName)
Items.registerArgParser(ArgParserUndyeable)
Entities.registerArgParser(EntityArgParserName)
Entities.registerArgParser(EntityArgParserNoAI)
@@ -169,7 +174,6 @@ abstract class EcoSpigotPlugin : EcoPlugin() {
CraftingRecipeListener.registerListener(ComplexInComplex)
CraftingRecipeListener.registerListener(ComplexInVanilla)
CraftingRecipeListener.registerListener(Undyeable)
StackedRecipeListener.registerHandler(ShapedCraftingRecipeStackHandler)
StackedRecipeListener.registerHandler(ShapelessCraftingRecipeStackHandler)
@@ -258,7 +262,7 @@ abstract class EcoSpigotPlugin : EcoPlugin() {
IntegrationLoader("IridiumSkyblock") { AntigriefManager.register(AntigriefIridiumSkyblock()) },
IntegrationLoader("DeluxeCombat") { AntigriefManager.register(AntigriefDeluxeCombat()) },
IntegrationLoader("SuperiorSkyblock2") { AntigriefManager.register(AntigriefSuperiorSkyblock2()) },
// IntegrationLoader("FabledSkyBlock") { AntigriefManager.register(AntigriefFabledSkyBlock()) },
IntegrationLoader("FabledSkyBlock") { AntigriefManager.register(AntigriefFabledSkyBlock()) },
IntegrationLoader("BentoBox") { AntigriefManager.register(AntigriefBentoBox()) },
IntegrationLoader("WorldGuard") { AntigriefManager.register(AntigriefWorldGuard()) },
IntegrationLoader("GriefPrevention") { AntigriefManager.register(AntigriefGriefPrevention()) },

View File

@@ -1,20 +0,0 @@
package com.willfp.eco.internal.spigot.recipes.listeners
import com.willfp.eco.internal.items.ArgParserUndyeable.isUndyeable
import com.willfp.eco.internal.spigot.recipes.GenericCraftEvent
import com.willfp.eco.internal.spigot.recipes.RecipeListener
import org.bukkit.inventory.meta.LeatherArmorMeta
object Undyeable : RecipeListener {
override fun handle(event: GenericCraftEvent) {
val item = event.inventory.matrix.firstOrNull { it != null && it.itemMeta is LeatherArmorMeta
&& it.itemMeta?.isUndyeable == true }?: return
val result = event.inventory.result?: return
if (result.type != item.type || result.itemMeta !is LeatherArmorMeta) return
if ((item.itemMeta as LeatherArmorMeta).color != (result.itemMeta as LeatherArmorMeta).color) {
event.deny()
}
}
}