首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bukkit符号操纵

Bukkit符号操纵
EN

Stack Overflow用户
提问于 2013-08-13 15:52:48
回答 1查看 3K关注 0票数 3

我在Bukkit工作,基本上我需要做一个方法,这样当一个标志被正确点击时,它就会做一些事情。在这种情况下,它将是一个工具包的清单,但我会通过桥,当我来到它。

现在,我很困惑如何用右键点击标志来让他们去做事情。我想我应该得到正确的点击块,检查它是否是一个标志,然后检查标牌上写了什么。然而,我不知道如何将它识别为一个符号,因为我对2种符号材料的存在感到困惑,SIGNSIGN_POST。在那之后,我需要打电话给什么特别的活动吗?

如果你知道我有一个很好的参考资料,请在评论中发表意见。但是我到处都查过了,我发现的都是愚蠢的SignChangeEvent,这不是我需要的。所有的帮助都非常感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-13 23:14:20

您应该使用块类型it来确认它是一个标志。有两个标识标识,一个是墙上的标志(68),另一个是站在柱子上的标志(63)。使用PlayerInteractEvent检查玩家是否右击了标志。检查玩家是否右击了一个街区。检查右击的块是否有63或68的ID。将阻塞状态抛到一个标志上。做你想做的事。如果您更改了符号上的文本,请确保在之后更新它,否则文本将不会出现。下面是您应该使用的Player侦听器函数。

代码语言:javascript
复制
    @EventHandler
public void onPlayerInteract(PlayerInteractEvent event) {
    if(event.getAction().equals(Action.RIGHT_CLICK_BLOCK)) {
        if(event.getClickedBlock().getTypeId() == 63 || event.getClickedBlock().getTypeId() == 68) {

            Sign sign = (Sign) event.getClickedBlock().getState();
            sign.setLine(0, "Boo Yeah");
            sign.update();

            // Do other stuff if you need to
        }
    }
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18213718

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档