因此,我一直在用机器人代码开发这个机器人,我希望它能够根据命令getEnergy()的结果改变颜色。
然而,我似乎无法让它发挥作用。我创建的java代码如下:
getEnergy();
if(getEnergy()>=90)
{
setBodyColor(new Color(0, 255, 0));
}if(getEnergy()<90 && getEnergy()>=40){
setBodyColor(new Color(0, 0, 255));
}if(getEnergy()<40){
setBodyColor(new Color(255, 0, 0));
}我也试过这个:
getEnergy();
if(getEnergy()>=90)
{
setBodyColor(new Color(0, 255, 0));
}else if(getEnergy()>=40){
setBodyColor(new Color(0, 0, 255));
}else if(getEnergy()<40){
setBodyColor(new Color(255, 0, 0));
}我做错了什么?
发布于 2013-06-25 19:59:25
那些代码片段看起来很合理。(尽管第一行getEnergy();什么也不做。)有两件事浮现在你的脑海中,那就是为什么你可能看不到颜色的变化。
run()方法的顶部是不够的,因为只有在每一轮开始时才调用它。它需要在run()中调用execute()的循环中,或者在经常执行的东西中,比如onScannedRobot()。您可以将System.out.println(getTime())添加到这些块中,并查看输出控制台以帮助排除故障。https://stackoverflow.com/questions/17106791
复制相似问题