Minecraft Bukkit插件 - 走过一个街区的PotionEffect?

时间:2017-07-19 17:26:14

标签: minecraft bukkit

当他走过一个指定的街区时,我正试图让玩家获得一定的药水效果。不幸的是我无法理解。

我已尝试过的内容:

- 我在youtube上搜索了教程,但没有找到任何

1 个答案:

答案 0 :(得分:5)

我不确定这是否是绝对最好的方式,但这就是我要做的。我会创建一个playerMoveEvent(每次玩家移动时调用)。然后通过获取播放器的位置然后设置块对象等于位置类中的getblock方法来检查该播放器下的块是什么。之后,这是一个测试问题,看看它是否是你想要的块,然后应用药水效果!

示例(拿着一粒盐,我现在没有环境来测试它):

@EventHandler
public void onPlayerMove(PlayerMoveEvenet event) {
    Player p = event.getPlayer();
    //This might not be the way to get the players location. Bukkit vs Spigot thing
    Location l = p.getLocation();
    l.add(0, -1, 0);
    Block b = l.getBlock();
    if(b.getType() == Material.WHATEVERBLOCKITIS){
        p.addPotionEffect(WHATEVERPOTIONEFFECT);
    }
}

如果您需要有关向插件添加活动的帮助,可以阅读更多相关信息here