Java 无法放置墙标志或编辑其文字
我正在尝试放置和编辑一个面向西方的墙标志。到目前为止,我在正确定位标志和编辑其文本方面都不成功。我的代码根本不起任何作用Java 无法放置墙标志或编辑其文字,java,minecraft,bukkit,Java,Minecraft,Bukkit,我正在尝试放置和编辑一个面向西方的墙标志。到目前为止,我在正确定位标志和编辑其文本方面都不成功。我的代码根本不起任何作用 @SuppressWarnings("deprecation") public void Generate(Location location) { location.getBlock().getState().setType(material); Block signBlock = location.getBlock().getRelat
@SuppressWarnings("deprecation")
public void Generate(Location location)
{
location.getBlock().getState().setType(material);
Block signBlock = location.getBlock().getRelative(BlockFace.WEST);
signBlock.setType(Material.OAK_WALL_SIGN);
BlockState signState = signBlock.getState();
Sign sign = (Sign) signState;
org.bukkit.material.Sign matSign = new org.bukkit.material.Sign(Material.OAK_WALL_SIGN);
matSign.setFacingDirection(BlockFace.WEST);
sign.setData(matSign);
sign.setLine(0, name().replaceAll("_", " "));
sign.update();
}
以下代码解决了该问题:
public void Generate(Location location)
{
location.getBlock().getState().setType(material);
Block block = location.getBlock().getLocation().add(-1, 0, 0).getBlock();
block.setType(Material.OAK_WALL_SIGN);
Sign sign = (Sign) block.getState();
Directional wallSignData = (Directional) sign.getBlockData();
wallSignData.setFacing(BlockFace.WEST);
sign.setBlockData(wallSignData);
sign.setLine(0, name().replaceAll("_", " "));
sign.update();
}