我在运行setline命令时遇到问题
女巫,我想设置一个标志线。
它什么也没做

这是代码中具有setline方法的部分,当播放器提供输入时,它将与其他一些东西一起运行(“ if(SignEvent.isNumericArray(times))”确定为true,并且代码为运行我确实检查了)

  if (SignEvent.isNumericArray(times)){

                double uses = Double.parseDouble(times);
                uses = uses -1;


                sign.setLine(2 , uses + "/" + str[1] + parts[1]);


                if (uses <= 0){
                sign.setLine(0, ChatColor.STRIKETHROUGH + "StartPayment");
                }
            }


我确实检查了几件事:


控制台或Eclipse错误列表中没有错误
对象符号是从导入org.bukkit.block.Sign导入的符号类型。
对象符号是正确的符号(checked by doing e.getPlayer().sendMessage(sign.getLine(0));起作用。
无论什么字符串都不起作用
不管我把这行代码放在哪里都行不通
这条线正在运行


我只是不知道该怎么办才能修复它,我尝试了很多事情,我很确定问题出在
sign.setLine(2 , uses + "/" + str[1] + parts[1]);

有人知道我做错了什么吗?

注意:无论在此方法中我将setline方法放在何处或使用什么string / lineIndex,它都不会做任何事情

最佳答案

我认为您必须执行sign.update();修改后应用更改。

09-10 08:26