ymq993897317
如题,最近偷懒,想用插件监听到鱼上钩后自动给玩家发放一个战利品(原版钓鱼战利品,不知道如何获取原版战利品的数据),感激不尽~~


结冰的离季
本帖最后由 结冰的离季 于 2022-5-19 01:05 编辑

监听 PlayerFishEvent
判断 PlayerFishEvent#getState() == PlayerFishEvent.State.BITE 即为上钩
钓鱼战利品表 使用 LootTables枚举下的其中一个
FISHERMAN_GIFT
FISHING
FISHING_FISH
FISHING_JUNK
FISHING_TREASURE

使用getLootTable()
然后 LootTable#populateLoot(java.util.Random,org.bukkit.loot.LootContext)

生成战利品,随便选一个即可获得物品

再用 Player#getInventory() 获取 背包Inventory,再 Inventory#addItem( 物品)发给玩家
最后取消事件 PlayerFishEvent#setCancelled(true)



第一页 上一页 下一页 最后一页