作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好的,所以我正在制作一个 Bukkit 插件,它应该检测鹅卵石生成器,请记住,我不想阻止玩家制造鹅卵石生成器,我只是想从事件中获取 block ,所以我可以用那 block 鹅卵石做其他事情。
到目前为止我尝试了什么:
我想做的事情:
你能至少给我指明正确的方向吗?我已经拔了将近 3 个小时的头发。
感谢大家的帮助!
最佳答案
Good answer from FireBlast709 at Bukkit Forums
这将取消任何鹅卵石生成。基本上,如果您想操纵鹅卵石,您可以将取消行(已指示)更改为您需要的任何内容。
@EventHandler
public void onFromTo(BlockFromToEvent event){
Material type = event.getBlock().getType();
if (type == Material.WATER || type == Material.STATIONARY_WATER || type == Material.LAVA || type == Material.STATIONARY_LAVA){
Block b = event.getToBlock();
if (b.getType() == Material.AIR){
if (generatesCobble(type, b)){
/* DO WHATEVER YOU NEED WITH THE COBBLE */
event.setCancelled(true);
}
}
}
}
private final BlockFace[] faces = new BlockFace[]{
BlockFace.SELF,
BlockFace.UP,
BlockFace.DOWN,
BlockFace.NORTH,
BlockFace.EAST,
BlockFace.SOUTH,
BlockFace.WEST
};
public boolean generatesCobble(Material type, Block b){
Material mirrorID1 = (type == Material.WATER || type == Material.STATIONARY_WATER ? Material.LAVA : Material.WATER);
Material mirrorID2 = (type == Material.WATER || type == Material.STATIONARY_WATER ? Material.STATIONARY_LAVA : Material.STATIONARY_WATER);
for (BlockFace face : faces){
Block r = b.getRelative(face, 1);
if (r.getType() == mirrorID1 || r.getType() == mirrorID2){
return true;
}
}
return false;
}
关于java - 我如何检测 Bukkit 生成的鹅卵石?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44096564/
我正在为 Pebble 开发,但我的开端并不顺利。 我正在尝试使用 2 个字符串和 2 个值填充 text_layer,如下所示: WAIT AVG: 3 MAX: 5 由于 Pebble SDK 不
回答总结:app_timer_register 传递一个没有类型的指针。要传递整数,请创建一个整数并传递它的指针。然后键入指向整数的指针。 使用无类型指针的例子: static void timeHa
我正在制作我的表盘的 Pebble Time 版本。 我希望能够设置一个颜色变量,该变量将根据使用 Pebble Time 还是使用 Pebble OG 来保存颜色。 我知道你可以这样做: #ifde
我是一名优秀的程序员,十分优秀!