Skip to content

Commit

Permalink
fix: unsend all hitboxes when player changes world
Browse files Browse the repository at this point in the history
  • Loading branch information
Boy0000 committed Jan 30, 2024
1 parent 2b55150 commit c917249
Showing 1 changed file with 11 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ import org.bukkit.event.EventHandler
import org.bukkit.event.EventPriority
import org.bukkit.event.Listener
import org.bukkit.event.block.Action
import org.bukkit.event.player.PlayerChangedWorldEvent
import org.bukkit.event.player.PlayerInteractEvent
import org.bukkit.event.player.PlayerQuitEvent
import org.bukkit.util.Vector
Expand Down Expand Up @@ -86,6 +87,16 @@ class BlockyFurnitureListener : Listener {
FurniturePacketHelpers.removeLightPacket(entity)
}

@EventHandler
fun PlayerChangedWorldEvent.onChangeWorld() {
from.entities.filterIsInstance<ItemDisplay>().forEach {
FurniturePacketHelpers.removeInteractionHitboxPacket(it, player)
FurniturePacketHelpers.removeHitboxOutlinePacket(it, player)
FurniturePacketHelpers.removeCollisionHitboxPacket(it, player)
FurniturePacketHelpers.removeLightPacket(it, player)
}
}

@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)
fun PlayerInteractEvent.prePlacingFurniture() {
val (block, item, hand) = (clickedBlock ?: return) to (item ?: return) to (hand ?: return)
Expand Down

0 comments on commit c917249

Please sign in to comment.