Compare commits

...

9 Commits

Author SHA1 Message Date
Will FP
bde705dbf5 Updated to 6.75.2 2025-02-01 16:10:24 +00:00
Will FP
48ca42211d Merge remote-tracking branch 'origin/master'
# Conflicts:
#	eco-core/core-plugin/src/main/kotlin/com/willfp/eco/internal/spigot/integrations/antigrief/AntigriefHuskClaims.kt
2025-02-01 16:10:17 +00:00
Will FP
af5a325527 Fixed Entity lookup throwing errors when passing in 'unknown' 2025-02-01 16:10:07 +00:00
Will FP
eb0d6b2d27 Optimised imports 2025-02-01 16:09:54 +00:00
Will FP
69d21550b3 Merge pull request #386 from Exanthiax/husktowns
Updated HuskClaims/HuskTowns Integration
2025-01-31 11:40:38 +00:00
Will FP
1e3053c0a6 Updated to 6.75.1 2025-01-31 11:13:20 +00:00
Will FP
2d46a6c392 Fixed enchantment registry issues 2025-01-31 11:13:16 +00:00
Exanthiax
0bcd688345 fix oopsie 2025-01-26 18:43:51 +00:00
Exanthiax
25de30142b Updated HuskClaims/HuskTowns Integration
Updated API versions and classes to newest versions.
2025-01-25 21:12:29 +00:00
39 changed files with 61 additions and 163 deletions

View File

@@ -37,8 +37,6 @@ import org.jetbrains.annotations.Nullable;
import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Objects;

View File

@@ -6,7 +6,6 @@ import com.willfp.eco.core.tuples.Pair;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.UUID;

View File

@@ -111,6 +111,11 @@ public final class Entities {
} catch (IllegalArgumentException e) {
return new EmptyTestableEntity();
}
if (type.getEntityClass() == null) {
return new EmptyTestableEntity();
}
entity = new SimpleTestableEntity(type);
} else {
String namespace = split[0];

View File

@@ -11,7 +11,6 @@ import org.bukkit.entity.Raider;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
import java.util.Set;
import java.util.function.Predicate;
import java.util.stream.Collectors;

View File

@@ -7,9 +7,6 @@ import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.jetbrains.annotations.NotNull;
import java.util.HashSet;
import java.util.Set;
/**
* Class to handle antigrief integrations.
*/

View File

@@ -3,9 +3,6 @@ package com.willfp.eco.core.integrations.customitems;
import com.willfp.eco.core.integrations.IntegrationRegistry;
import org.jetbrains.annotations.NotNull;
import java.util.HashSet;
import java.util.Set;
/**
* Class to handle custom item integrations.
*/

View File

@@ -5,9 +5,6 @@ import org.bukkit.block.Block;
import org.bukkit.event.Event;
import org.jetbrains.annotations.NotNull;
import java.util.HashSet;
import java.util.Set;
/**
* Class to handle mcmmo integrations.
*/

View File

@@ -3,10 +3,7 @@
package com.willfp.eco.core.entities
import com.willfp.eco.core.entities.ai.EntityController
import com.willfp.eco.core.items.Items
import com.willfp.eco.core.items.TestableItem
import org.bukkit.entity.Mob
import org.bukkit.inventory.ItemStack
/** @see EntityController.getFor */
val <T : Mob> T.controller: EntityController<T>

View File

@@ -4,8 +4,6 @@ import com.willfp.eco.core.entities.args.EntityArgParseResult
import com.willfp.eco.core.entities.args.EntityArgParser
import org.bukkit.attribute.Attribute
import org.bukkit.entity.LivingEntity
import org.bukkit.entity.Phantom
import org.bukkit.entity.Slime
object EntityArgParserScale : EntityArgParser {
override fun parseArguments(args: Array<out String>): EntityArgParseResult? {

View File

@@ -9,7 +9,6 @@ import com.willfp.eco.core.packet.PacketPriority
import org.bukkit.Bukkit
import org.bukkit.event.HandlerList
import org.bukkit.event.Listener
import java.lang.Exception
private class RegisteredPacketListener(

View File

@@ -2,9 +2,7 @@ package com.willfp.eco.internal.items
import com.willfp.eco.internal.items.templates.ValueArgParser
import com.willfp.eco.util.StringUtils
import org.bukkit.inventory.ItemStack
import org.bukkit.inventory.meta.ItemMeta
import java.util.function.Predicate
object ArgParserName : ValueArgParser<String>("name") {
override fun parse(arg: String): String {

View File

@@ -1,7 +1,6 @@
package com.willfp.eco.internal.items.templates
import com.willfp.eco.core.items.args.LookupArgParser
import com.willfp.eco.util.StringUtils
import org.bukkit.inventory.ItemStack
import org.bukkit.inventory.meta.ItemMeta
import java.util.function.Predicate

View File

@@ -1,7 +1,6 @@
package com.willfp.eco.internal.spigot.proxy.common.ai.target
import com.willfp.eco.core.entities.ai.target.TargetGoalNearestAttackable
import com.willfp.eco.core.lookup.matches
import com.willfp.eco.internal.spigot.proxy.common.ai.TargetGoalFactory
import com.willfp.eco.internal.spigot.proxy.common.toBukkitEntity
import net.minecraft.world.entity.LivingEntity

View File

@@ -14,8 +14,6 @@ import com.willfp.eco.util.StringUtils
import com.willfp.eco.util.toComponent
import com.willfp.eco.util.toLegacy
import net.kyori.adventure.text.Component
import net.kyori.adventure.text.format.Style
import net.kyori.adventure.text.format.TextColor
import net.kyori.adventure.text.format.TextDecoration
import net.minecraft.core.component.DataComponentType
import net.minecraft.core.component.DataComponents
@@ -23,19 +21,15 @@ import net.minecraft.core.registries.Registries
import net.minecraft.nbt.CompoundTag
import net.minecraft.util.Unit
import net.minecraft.world.item.component.CustomData
import net.minecraft.world.item.component.CustomModelData
import net.minecraft.world.item.component.ItemLore
import net.minecraft.world.item.enchantment.ItemEnchantments
import org.bukkit.Bukkit
import org.bukkit.craftbukkit.CraftRegistry
import org.bukkit.craftbukkit.CraftServer
import org.bukkit.craftbukkit.enchantments.CraftEnchantment
import org.bukkit.enchantments.Enchantment
import org.bukkit.inventory.ItemFlag
import org.bukkit.inventory.ItemStack
import org.bukkit.persistence.PersistentDataContainer
import kotlin.math.max
import kotlin.math.min
private val unstyledComponent = Component.empty().style {
it.color(null).decoration(TextDecoration.ITALIC, false)
@@ -47,7 +41,6 @@ private fun Component.unstyled(): Component {
open class NewEcoFastItemStack(
private val bukkit: ItemStack,
private val registryAccessor: RegistryAccessor
) : ImplementedFIS {
// Cast is there because, try as I might, I can't get IntellIJ to recognise half the classes in the dev bundle
@Suppress("USELESS_CAST")
@@ -83,20 +76,17 @@ open class NewEcoFastItemStack(
enchantment: Enchantment,
checkStored: Boolean
): Int {
val minecraft =
CraftRegistry.bukkitToMinecraft<Enchantment, net.minecraft.world.item.enchantment.Enchantment>(
enchantment
)
val registry = registryAccessor.getRegistry(Registries.ENCHANTMENT)
val holder = registry.wrapAsHolder(minecraft)
val minecraft = CraftRegistry.bukkitToMinecraftHolder(
enchantment,
Registries.ENCHANTMENT
)
val enchantments = handle.get(DataComponents.ENCHANTMENTS) ?: return 0
var level = enchantments.getLevel(holder)
var level = enchantments.getLevel(minecraft)
if (checkStored) {
val storedEnchantments = handle.get(DataComponents.STORED_ENCHANTMENTS) ?: return 0
level = max(level, storedEnchantments.getLevel(holder))
level = max(level, storedEnchantments.getLevel(minecraft))
}
return level

View File

@@ -1,14 +0,0 @@
package com.willfp.eco.internal.spigot.proxy.common.modern
import net.minecraft.core.Registry
import net.minecraft.resources.ResourceKey
/**
* Cross-version compat method for accessing registries.
*/
interface RegistryAccessor {
/**
* Get registry by [key] or throw.
*/
fun <T> getRegistry(key: ResourceKey<Registry<T>>): Registry<T>
}

View File

@@ -2,7 +2,6 @@ package com.willfp.eco.internal.spigot.proxy.v1_17_R1
import com.willfp.eco.core.data.ExtendedPersistentDataContainer
import com.willfp.eco.internal.spigot.proxy.ExtendedPersistentDataContainerFactoryProxy
import com.willfp.eco.internal.spigot.proxy.common.item.ContinuallyAppliedPersistentDataContainer
import net.minecraft.nbt.Tag
import org.bukkit.Material
import org.bukkit.craftbukkit.v1_17_R1.inventory.CraftItemStack

View File

@@ -2,7 +2,6 @@ package com.willfp.eco.internal.spigot.proxy.v1_18_R1
import com.willfp.eco.core.data.ExtendedPersistentDataContainer
import com.willfp.eco.internal.spigot.proxy.ExtendedPersistentDataContainerFactoryProxy
import com.willfp.eco.internal.spigot.proxy.common.item.ContinuallyAppliedPersistentDataContainer
import net.minecraft.nbt.Tag
import org.bukkit.Material
import org.bukkit.craftbukkit.v1_18_R1.inventory.CraftItemStack

View File

@@ -2,7 +2,6 @@ package com.willfp.eco.internal.spigot.proxy.v1_18_R2
import com.willfp.eco.core.data.ExtendedPersistentDataContainer
import com.willfp.eco.internal.spigot.proxy.ExtendedPersistentDataContainerFactoryProxy
import com.willfp.eco.internal.spigot.proxy.common.item.ContinuallyAppliedPersistentDataContainer
import net.minecraft.nbt.Tag
import org.bukkit.Material
import org.bukkit.craftbukkit.v1_18_R2.inventory.CraftItemStack

View File

@@ -3,7 +3,6 @@ package com.willfp.eco.internal.spigot.proxy.v1_19_R1
import com.willfp.eco.core.items.TestableItem
import com.willfp.eco.core.recipe.parts.EmptyTestableItem
import com.willfp.eco.internal.spigot.proxy.SNBTConverterProxy
import com.willfp.eco.internal.spigot.proxy.common.toMaterial
import net.minecraft.nbt.CompoundTag
import net.minecraft.nbt.SnbtPrinterTagVisitor
import net.minecraft.nbt.TagParser

View File

@@ -5,7 +5,6 @@ import com.willfp.eco.internal.spigot.proxy.CommonsInitializerProxy
import com.willfp.eco.internal.spigot.proxy.common.CommonsProvider
import com.willfp.eco.internal.spigot.proxy.common.packet.PacketInjectorListener
import com.willfp.eco.internal.spigot.proxy.common.toResourceLocation
import io.netty.channel.Channel
import net.kyori.adventure.text.Component
import net.kyori.adventure.text.serializer.gson.GsonComponentSerializer
import net.minecraft.core.registries.BuiltInRegistries
@@ -13,7 +12,6 @@ import net.minecraft.nbt.CompoundTag
import net.minecraft.nbt.Tag
import net.minecraft.resources.ResourceLocation
import net.minecraft.server.level.ServerPlayer
import net.minecraft.server.network.ServerGamePacketListenerImpl
import net.minecraft.world.entity.PathfinderMob
import net.minecraft.world.item.Item
import org.bukkit.Bukkit

View File

@@ -2,7 +2,6 @@ package com.willfp.eco.internal.spigot.proxy.v1_19_R2
import com.willfp.eco.core.data.ExtendedPersistentDataContainer
import com.willfp.eco.internal.spigot.proxy.ExtendedPersistentDataContainerFactoryProxy
import com.willfp.eco.internal.spigot.proxy.common.item.ContinuallyAppliedPersistentDataContainer
import net.minecraft.nbt.Tag
import org.bukkit.Material
import org.bukkit.craftbukkit.v1_19_R2.inventory.CraftItemStack

View File

@@ -4,7 +4,6 @@ import com.willfp.eco.core.packet.Packet
import com.willfp.eco.core.packet.sendPacket
import com.willfp.eco.internal.spigot.proxy.DisplayNameProxy
import com.willfp.eco.internal.spigot.proxy.common.toNMS
import io.papermc.paper.adventure.PaperAdventure
import net.kyori.adventure.text.Component
import net.minecraft.network.protocol.game.ClientboundSetEntityDataPacket
import net.minecraft.network.syncher.EntityDataAccessor

View File

@@ -4,16 +4,13 @@ import com.willfp.eco.core.packet.Packet
import com.willfp.eco.core.packet.sendPacket
import com.willfp.eco.internal.spigot.proxy.DisplayNameProxy
import com.willfp.eco.internal.spigot.proxy.common.toNMS
import io.papermc.paper.adventure.PaperAdventure
import net.kyori.adventure.text.Component
import net.minecraft.network.protocol.game.ClientboundSetEntityDataPacket
import net.minecraft.network.syncher.EntityDataAccessor
import net.minecraft.network.syncher.SynchedEntityData
import net.minecraft.world.entity.Entity
import org.bukkit.craftbukkit.v1_20_R2.entity.CraftLivingEntity
import org.bukkit.craftbukkit.v1_20_R2.entity.CraftMob
import org.bukkit.entity.LivingEntity
import org.bukkit.entity.Mob
import org.bukkit.entity.Player
import java.util.Optional

View File

@@ -4,16 +4,13 @@ import com.willfp.eco.core.packet.Packet
import com.willfp.eco.core.packet.sendPacket
import com.willfp.eco.internal.spigot.proxy.DisplayNameProxy
import com.willfp.eco.internal.spigot.proxy.common.toNMS
import io.papermc.paper.adventure.PaperAdventure
import net.kyori.adventure.text.Component
import net.minecraft.network.protocol.game.ClientboundSetEntityDataPacket
import net.minecraft.network.syncher.EntityDataAccessor
import net.minecraft.network.syncher.SynchedEntityData
import net.minecraft.world.entity.Entity
import org.bukkit.craftbukkit.v1_20_R3.entity.CraftLivingEntity
import org.bukkit.craftbukkit.v1_20_R3.entity.CraftMob
import org.bukkit.entity.LivingEntity
import org.bukkit.entity.Mob
import org.bukkit.entity.Player
import java.util.Optional

View File

@@ -5,7 +5,6 @@ import com.willfp.eco.internal.spigot.proxy.DummyEntityFactoryProxy
import org.bukkit.Location
import org.bukkit.craftbukkit.v1_20_R3.CraftWorld
import org.bukkit.entity.Entity
import org.bukkit.entity.EntityType
import org.bukkit.entity.Zombie
class DummyEntityFactory : DummyEntityFactoryProxy {

View File

@@ -2,7 +2,6 @@ package com.willfp.eco.internal.spigot.proxy.v1_20_R3
import com.willfp.eco.core.data.ExtendedPersistentDataContainer
import com.willfp.eco.internal.spigot.proxy.ExtendedPersistentDataContainerFactoryProxy
import com.willfp.eco.internal.spigot.proxy.common.item.ContinuallyAppliedPersistentDataContainer
import net.minecraft.nbt.Tag
import org.bukkit.Material
import org.bukkit.craftbukkit.v1_20_R3.inventory.CraftItemStack

View File

@@ -3,14 +3,8 @@ package com.willfp.eco.internal.spigot.proxy.v1_21
import com.willfp.eco.core.fast.FastItemStack
import com.willfp.eco.internal.spigot.proxy.FastItemStackFactoryProxy
import com.willfp.eco.internal.spigot.proxy.common.modern.NewEcoFastItemStack
import com.willfp.eco.internal.spigot.proxy.common.modern.RegistryAccessor
import net.minecraft.core.Registry
import net.minecraft.core.component.DataComponents
import net.minecraft.core.registries.Registries
import net.minecraft.resources.ResourceKey
import net.minecraft.world.item.component.CustomModelData
import org.bukkit.Bukkit
import org.bukkit.craftbukkit.CraftServer
import org.bukkit.inventory.ItemStack
class FastItemStackFactory : FastItemStackFactoryProxy {
@@ -19,7 +13,7 @@ class FastItemStackFactory : FastItemStackFactoryProxy {
}
private class LegacyNewEcoFastItemStack(itemStack: ItemStack) :
NewEcoFastItemStack(itemStack, LegacyRegistryAccessor) {
NewEcoFastItemStack(itemStack) {
override fun getCustomModelData(): Int? =
handle.get(DataComponents.CUSTOM_MODEL_DATA)?.value
@@ -34,12 +28,4 @@ class FastItemStackFactory : FastItemStackFactoryProxy {
apply()
}
}
private object LegacyRegistryAccessor : RegistryAccessor {
override fun <T> getRegistry(key: ResourceKey<Registry<T>>): Registry<T> {
val server = Bukkit.getServer() as CraftServer
val access = server.server.registryAccess()
return access.registryOrThrow(key)
}
}
}

View File

@@ -3,23 +3,10 @@ package com.willfp.eco.internal.spigot.proxy.v1_21_3
import com.willfp.eco.core.fast.FastItemStack
import com.willfp.eco.internal.spigot.proxy.FastItemStackFactoryProxy
import com.willfp.eco.internal.spigot.proxy.common.modern.NewEcoFastItemStack
import com.willfp.eco.internal.spigot.proxy.common.modern.RegistryAccessor
import net.minecraft.core.Registry
import net.minecraft.resources.ResourceKey
import org.bukkit.Bukkit
import org.bukkit.craftbukkit.CraftServer
import org.bukkit.inventory.ItemStack
class FastItemStackFactory : FastItemStackFactoryProxy {
override fun create(itemStack: ItemStack): FastItemStack {
return NewEcoFastItemStack(itemStack, ModernRegistryAccessor)
}
private object ModernRegistryAccessor : RegistryAccessor {
override fun <T> getRegistry(key: ResourceKey<Registry<T>>): Registry<T> {
val server = Bukkit.getServer() as CraftServer
val access = server.server.registryAccess()
return access.get(key).get().value()
}
return NewEcoFastItemStack(itemStack)
}
}

View File

@@ -3,7 +3,6 @@ package com.willfp.eco.internal.spigot.proxy.v1_21_3
import com.willfp.eco.core.EcoPlugin
import com.willfp.eco.core.packet.PacketListener
import com.willfp.eco.internal.spigot.proxy.PacketHandlerProxy
import com.willfp.eco.internal.spigot.proxy.common.packet.display.PacketAutoRecipe
import com.willfp.eco.internal.spigot.proxy.common.packet.display.PacketHeldItemSlot
import com.willfp.eco.internal.spigot.proxy.common.packet.display.PacketSetSlot
import com.willfp.eco.internal.spigot.proxy.common.packet.display.PacketWindowItems

View File

@@ -3,23 +3,10 @@ package com.willfp.eco.internal.spigot.proxy.v1_21_4
import com.willfp.eco.core.fast.FastItemStack
import com.willfp.eco.internal.spigot.proxy.FastItemStackFactoryProxy
import com.willfp.eco.internal.spigot.proxy.common.modern.NewEcoFastItemStack
import com.willfp.eco.internal.spigot.proxy.common.modern.RegistryAccessor
import net.minecraft.core.Registry
import net.minecraft.resources.ResourceKey
import org.bukkit.Bukkit
import org.bukkit.craftbukkit.CraftServer
import org.bukkit.inventory.ItemStack
class FastItemStackFactory : FastItemStackFactoryProxy {
override fun create(itemStack: ItemStack): FastItemStack {
return NewEcoFastItemStack(itemStack, ModernRegistryAccessor)
}
private object ModernRegistryAccessor : RegistryAccessor {
override fun <T> getRegistry(key: ResourceKey<Registry<T>>): Registry<T> {
val server = Bukkit.getServer() as CraftServer
val access = server.server.registryAccess()
return access.get(key).get().value()
}
return NewEcoFastItemStack(itemStack)
}
}

View File

@@ -3,7 +3,6 @@ package com.willfp.eco.internal.spigot.proxy.v1_21_4
import com.willfp.eco.core.EcoPlugin
import com.willfp.eco.core.packet.PacketListener
import com.willfp.eco.internal.spigot.proxy.PacketHandlerProxy
import com.willfp.eco.internal.spigot.proxy.common.packet.display.PacketAutoRecipe
import com.willfp.eco.internal.spigot.proxy.common.packet.display.PacketHeldItemSlot
import com.willfp.eco.internal.spigot.proxy.common.packet.display.PacketSetSlot
import com.willfp.eco.internal.spigot.proxy.common.packet.display.PacketWindowItems

View File

@@ -57,8 +57,8 @@ dependencies {
exclude(group = "*", module = "*")
}
compileOnly("com.iridium:IridiumSkyblock:4.0.8")
compileOnly("net.william278.huskclaims:huskclaims-bukkit:1.0.1")
compileOnly("net.william278:husktowns:2.6.1")
compileOnly("net.william278.huskclaims:huskclaims-bukkit:1.5")
compileOnly("net.william278.husktowns:husktowns-bukkit:3.0.8")
compileOnly("com.github.jojodmo:ItemBridge:b0054538c1")
compileOnly("de.oliver:FancyHolograms:2.4.0")

View File

@@ -18,9 +18,12 @@ import com.willfp.eco.core.placeholder.context.PlaceholderContext
import com.willfp.eco.internal.EcoPropsParser
import com.willfp.eco.internal.command.EcoPluginCommand
import com.willfp.eco.internal.command.EcoSubcommand
import com.willfp.eco.internal.config.*
import com.willfp.eco.internal.config.EcoConfigSection
import com.willfp.eco.internal.config.EcoLoadableConfig
import com.willfp.eco.internal.config.EcoUpdatableConfig
import com.willfp.eco.internal.config.handler.ReflectiveConfigHandler
import com.willfp.eco.internal.config.handler.SimpleConfigHandler
import com.willfp.eco.internal.config.toMap
import com.willfp.eco.internal.drops.EcoDropQueue
import com.willfp.eco.internal.drops.EcoFastCollatedDropQueue
import com.willfp.eco.internal.events.EcoEventManager

View File

@@ -1,39 +1,34 @@
package com.willfp.eco.internal.spigot.integrations.antigrief
import com.willfp.eco.core.integrations.antigrief.AntigriefIntegration
import net.crashcraft.crashclaim.CrashClaim
import net.crashcraft.crashclaim.permissions.PermissionRoute
import net.william278.huskclaims.api.HuskClaimsAPI
import net.william278.huskclaims.api.BukkitHuskClaimsAPI
import net.william278.huskclaims.libraries.cloplib.operation.Operation
import net.william278.huskclaims.libraries.cloplib.operation.OperationPosition
import net.william278.huskclaims.libraries.cloplib.operation.OperationType
import net.william278.huskclaims.position.Position
import net.william278.huskclaims.position.World
import org.bukkit.Location
import org.bukkit.block.Block
import org.bukkit.entity.LivingEntity
import org.bukkit.entity.Monster
import org.bukkit.entity.Player
import kotlin.jvm.optionals.getOrElse
class AntigriefHuskClaims : AntigriefIntegration {
override fun canBreakBlock(
player: Player,
block: Block
): Boolean {
val api = HuskClaimsAPI.getInstance() ?: return true
val api = BukkitHuskClaimsAPI.getInstance() ?: return true
val user = api.getOnlineUser(player.uniqueId) ?: return true
val user = api.getOnlineUser(player) ?: return true
return api.isOperationAllowed(
Operation.of(
user,
OperationType.BLOCK_BREAK,
Position.at(
block.x.toDouble(),
block.y.toDouble(),
block.z.toDouble(),
api.getWorld(block.location.world.name)
block.location.x,
block.location.y,
block.location.z,
api.getWorld(block.world)
),
true
)
@@ -44,9 +39,9 @@ class AntigriefHuskClaims : AntigriefIntegration {
player: Player,
location: Location
): Boolean {
val api = HuskClaimsAPI.getInstance() ?: return true
val api = BukkitHuskClaimsAPI.getInstance() ?: return true
val user = api.getOnlineUser(player.uniqueId) ?: return true
val user = api.getOnlineUser(player) ?: return true
return api.isOperationAllowed(
Operation.of(
@@ -56,7 +51,7 @@ class AntigriefHuskClaims : AntigriefIntegration {
location.x,
location.y,
location.z,
api.getWorld(location.world.name)
api.getWorld(location.world)
),
true
)
@@ -67,19 +62,19 @@ class AntigriefHuskClaims : AntigriefIntegration {
player: Player,
block: Block
): Boolean {
val api = HuskClaimsAPI.getInstance() ?: return true
val api = BukkitHuskClaimsAPI.getInstance() ?: return true
val user = api.getOnlineUser(player.uniqueId) ?: return true
val user = api.getOnlineUser(player) ?: return true
return api.isOperationAllowed(
Operation.of(
user,
OperationType.BLOCK_PLACE,
Position.at(
block.x.toDouble(),
block.y.toDouble(),
block.z.toDouble(),
api.getWorld(block.location.world.name)
block.location.x,
block.location.y,
block.location.z,
api.getWorld(block.world)
),
true
)
@@ -90,23 +85,23 @@ class AntigriefHuskClaims : AntigriefIntegration {
player: Player,
victim: LivingEntity
): Boolean {
val api = HuskClaimsAPI.getInstance() ?: return true
val api = BukkitHuskClaimsAPI.getInstance() ?: return true
val user = api.getOnlineUser(player.uniqueId) ?: return true
val user = api.getOnlineUser(player) ?: return true
return api.isOperationAllowed(
Operation.of(
user,
when (victim) {
when(victim) {
is Monster -> OperationType.PLAYER_DAMAGE_MONSTER
is Player -> OperationType.PLAYER_DAMAGE_PLAYER
else -> OperationType.PLAYER_DAMAGE_ENTITY
},
Position.at(
victim.x,
victim.y,
victim.z,
api.getWorld(victim.location.world.name)
player.location.x,
player.location.y,
player.location.z,
api.getWorld(player.world)
),
true
)

View File

@@ -1,9 +1,10 @@
package com.willfp.eco.internal.spigot.integrations.antigrief
import com.willfp.eco.core.integrations.antigrief.AntigriefIntegration
import net.william278.husktowns.api.HuskTownsAPI
import net.william278.husktowns.api.BukkitHuskTownsAPI
import net.william278.husktowns.claim.Position
import net.william278.husktowns.listener.Operation
import net.william278.husktowns.libraries.cloplib.operation.Operation
import net.william278.husktowns.libraries.cloplib.operation.OperationType
import org.bukkit.Location
import org.bukkit.block.Block
import org.bukkit.entity.LivingEntity
@@ -15,14 +16,14 @@ class AntigriefHuskTowns : AntigriefIntegration {
player: Player,
block: Block
): Boolean {
val api = HuskTownsAPI.getInstance() ?: return true
val api = BukkitHuskTownsAPI.getInstance() ?: return true
val user = api.getOnlineUser(player) ?: return true
return api.isOperationAllowed(
Operation.of(
user,
Operation.Type.BLOCK_BREAK,
OperationType.BLOCK_BREAK,
Position.at(
block.location.x,
block.location.y,
@@ -38,14 +39,14 @@ class AntigriefHuskTowns : AntigriefIntegration {
player: Player,
location: Location
): Boolean {
val api = HuskTownsAPI.getInstance() ?: return true
val api = BukkitHuskTownsAPI.getInstance() ?: return true
val user = api.getOnlineUser(player) ?: return true
return api.isOperationAllowed(
Operation.of(
user,
Operation.Type.EXPLOSION_DAMAGE_ENTITY,
OperationType.EXPLOSION_DAMAGE_ENTITY,
Position.at(
location.x,
location.y,
@@ -61,14 +62,14 @@ class AntigriefHuskTowns : AntigriefIntegration {
player: Player,
block: Block
): Boolean {
val api = HuskTownsAPI.getInstance() ?: return true
val api = BukkitHuskTownsAPI.getInstance() ?: return true
val user = api.getOnlineUser(player) ?: return true
return api.isOperationAllowed(
Operation.of(
user,
Operation.Type.BLOCK_PLACE,
OperationType.BLOCK_PLACE,
Position.at(
block.location.x,
block.location.y,
@@ -84,7 +85,7 @@ class AntigriefHuskTowns : AntigriefIntegration {
player: Player,
victim: LivingEntity
): Boolean {
val api = HuskTownsAPI.getInstance() ?: return true
val api = BukkitHuskTownsAPI.getInstance() ?: return true
val user = api.getOnlineUser(player) ?: return true
@@ -92,9 +93,9 @@ class AntigriefHuskTowns : AntigriefIntegration {
Operation.of(
user,
when(victim) {
is Monster -> Operation.Type.PLAYER_DAMAGE_MONSTER
is Player -> Operation.Type.PLAYER_DAMAGE_PLAYER
else -> Operation.Type.PLACE_HANGING_ENTITY
is Monster -> OperationType.PLAYER_DAMAGE_MONSTER
is Player -> OperationType.PLAYER_DAMAGE_PLAYER
else -> OperationType.PLACE_HANGING_ENTITY
},
Position.at(
player.location.x,

View File

@@ -9,7 +9,6 @@ import java.io.DataOutputStream
import java.io.File
import java.io.InputStreamReader
import java.net.URI
import java.net.URL
import java.nio.charset.StandardCharsets
import java.util.UUID
import java.util.concurrent.Executors

View File

@@ -1,13 +1,13 @@
package com.willfp.eco.internal.spigot.integrations.customitems
import com.denizenscript.denizen.objects.ItemTag
import com.denizenscript.denizen.scripts.containers.core.ItemScriptHelper
import com.willfp.eco.core.integrations.customitems.CustomItemsIntegration
import com.willfp.eco.core.items.CustomItem
import com.willfp.eco.core.items.Items
import com.willfp.eco.core.items.TestableItem
import com.willfp.eco.core.items.provider.ItemProvider
import com.willfp.eco.util.NamespacedKeyUtils
import com.denizenscript.denizen.objects.ItemTag
import com.denizenscript.denizen.scripts.containers.core.ItemScriptHelper
import com.willfp.eco.core.items.Items
import org.bukkit.event.Listener
class CustomItemsDenizen : CustomItemsIntegration, Listener {

View File

@@ -7,7 +7,7 @@ import com.willfp.eco.core.price.PriceFactory
import com.willfp.eco.util.toSingletonList
import me.qKing12.RoyaleEconomy.MultiCurrency.Currency
import org.bukkit.entity.Player
import java.util.*
import java.util.UUID
class PriceFactoryRoyaleEconomy(private val currency: Currency) : PriceFactory {

View File

@@ -1,3 +1,3 @@
version = 6.75.0
version = 6.75.2
kotlin.daemon.jvmargs=-Xmx2g -XX:+UseG1GC -XX:MaxMetaspaceSize=512m
org.gradle.parallel=true