1package org.jire.runehiveps.event.player
3import com.runehive.game.event.impl.ItemOnPlayerEvent
4import com.runehive.game.plugin.PluginManager
5import com.runehive.game.world.World
6import com.runehive.game.world.entity.mob.player.Player
7import com.runehive.net.packet.out.SendMessage
8import org.jire.runehiveps.event.Event
9import kotlin.jvm.optionals.getOrNull
14class ItemOnPlayerEvent(
21 override fun handle(player: Player) {
22 val used = player.inventory[itemSlot] ?: return
23 if (!used.matchesId(item)) return
25 val other = World.getPlayerBySlot(slot).getOrNull() ?: return
27 player.walkTo(other) {
28 player.face(other.position)
29 if (!PluginManager.getDataBus().publish(player, ItemOnPlayerEvent(other, used, itemSlot))) {
30 player.send(SendMessage("Nothing interesting happens."))