summaryrefslogtreewikicommitdiff
path: root/bukkit/src/packet/BlockChangePacket.kt
blob: 7d11f4e95c2ac5af9a7cb3e937e0cfa89ceed54b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package cat.freya.khs.bukkit.packet

import com.github.retrooper.packetevents.PacketEvents
import com.github.retrooper.packetevents.util.Vector3i
import com.github.retrooper.packetevents.wrapper.play.server.WrapperPlayServerBlockChange
import io.github.retrooper.packetevents.util.SpigotConversionUtil
import org.bukkit.Bukkit
import org.bukkit.Location
import org.bukkit.Material
import org.bukkit.entity.Player as BukkitPlayer

data class BlockChangePacket(val location: Location, val material: Material) {
    fun send(player: BukkitPlayer) {
        val blockData = Bukkit.createBlockData(material)
        val state = SpigotConversionUtil.fromBukkitBlockData(blockData)
        val vector = Vector3i(location.blockX, location.blockY, location.blockZ)
        val packet = WrapperPlayServerBlockChange(vector, state)
        PacketEvents.getAPI().playerManager.sendPacket(player, packet)
    }
}