Makes WardenChangesAngerLevelScriptEvent's determination registration properly use registerOptionalDetermination to return false for invalid input.
Added a default implementation for BlockHelper#getMapColor using Spigot's new BlockData#getMapColor.
Removed EntityHelper#getEntity(World, UUID) in favor of Spigot's Bukkit#getEntity(UUID).
Added a default implementation for EntityHelper#getPlayersThatSee using Spigot's new Entity#getTrackedBy.
EntityTag#getEntityForID now uses Bukkit#getEntity.
Replaced redundant early return usage in EntityBoatType#setPropertyValue.
Removed the redundant attacker.getEquipment().getItemInMainHand() != null from EntityHelperImpl(1.20)#getDamageTo, as getItemInMainHand isn't nullable.
PlayerHelperImpl(1.20)#refreshPlayer now uses ServerPlayer#createCommonSpawnInfo instead of manually creating the spawn info.
BiomeNMSImpl(1.20)#getSpawnableEntities now uses the new CraftEntityType#minecraftToBukkit instead of the existing hacky conversion.
Moved the DisguisePacketHandlers to after the EntityMetadataPacketHandlers, to avoid stuff like the invisible command overriding disguised entity's visibility.
DisguisePacketHandlers#processTeleportPacket now uses DenizenNetworkManagerImpl#copyPacket instead of manually creating a new packet and copying values over (which also means relevant reflection constants were removed).
Removed some old commented out ClientboundAddPlayerPacket handling code.
Fixed PlayerTag.skin_model breaking on 1.17 because Spigot's player profile API didn't exist back then, and uses a MultiVersionHelper because Java doesn't like it when enums that don't exist are referenced.
Additions
MultiVersionHelper1_18 - used by PlayerTag.skin_model, because that API didn't exist before 1.18 and it has an enum.
Changes
WardenChangesAngerLevelScriptEvent
's determination registration properly useregisterOptionalDetermination
to returnfalse
for invalid input.BlockHelper#getMapColor
using Spigot's newBlockData#getMapColor
.EntityHelper#getEntity(World, UUID)
in favor of Spigot'sBukkit#getEntity(UUID)
.EntityHelper#getPlayersThatSee
using Spigot's newEntity#getTrackedBy
.EntityTag#getEntityForID
now usesBukkit#getEntity
.EntityBoatType#setPropertyValue
.attacker.getEquipment().getItemInMainHand() != null
fromEntityHelperImpl(1.20)#getDamageTo
, asgetItemInMainHand
isn't nullable.PlayerHelperImpl(1.20)#refreshPlayer
now usesServerPlayer#createCommonSpawnInfo
instead of manually creating the spawn info.BiomeNMSImpl(1.20)#getSpawnableEntities
now uses the newCraftEntityType#minecraftToBukkit
instead of the existing hacky conversion.DisguisePacketHandlers
to after theEntityMetadataPacketHandlers
, to avoid stuff like theinvisible
command overriding disguised entity's visibility.DisguisePacketHandlers#processTeleportPacket
now usesDenizenNetworkManagerImpl#copyPacket
instead of manually creating a new packet and copying values over (which also means relevant reflection constants were removed).ClientboundAddPlayerPacket
handling code.PlayerTag.skin_model
breaking on 1.17 because Spigot's player profile API didn't exist back then, and uses aMultiVersionHelper
because Java doesn't like it when enums that don't exist are referenced.Additions
MultiVersionHelper1_18
- used byPlayerTag.skin_model
, because that API didn't exist before 1.18 and it has an enum.