处理不会在屏幕上显示游戏

时间:2013-11-26 02:31:30

标签: java drawing processing

我正在设计一个处理游戏,当游戏丢失时应该在屏幕上显示游戏。不幸的是,屏幕上的游戏永远不会出现。这是我将其缩小到的功能:

if (lives < 1) {
background(0);
textSize(100);
text("You Lost",10,10);
delay(1000);
lives = 10;
x = (int)random(width);
y = (int)random(height / 2);
velocity = new PVector(1,random(-1.4,-0.6));
score = 0;
}

当生命量变为零时,它会暂停一秒钟,然后重新开始游戏。

我已经尝试了我能想到的一切,但仍然没有运气。

2 个答案:

答案 0 :(得分:0)

所以我最好的猜测是,2分钟前了解处理语言如下:

因为您将背景设置为黑色(0),因为它也是黑色的,所以无法看到文本,也许尝试使用fill()方法将文本的颜色更改为其他颜色以查看是否导致了问题。

if (lives < 1) {
   background(0);
   textSize(100);
   fill(255, 255, 255); // White text
   text("You Lost",10,10);
   delay(1000);
   lives = 10;
   ...

答案 1 :(得分:0)

想出来: 我在循环开始时添加了一段代码:

if (dflag) {
  delay(2000);
  dflag = false;
}

然后,我会在检查你死的天气之后将常规更新代码放在else语句中:

if (lives < 1) {
  // for(int df = 0; df < 1000; df++) {
  background(0);
  textSize(100);
  text("You Lost",100,100);
  dflag = true;
  //redraw();
  lives = 10;
  x = (int)random(width);
  y = (int)random(height / 2);
  velocity = new PVector(1,random(-1.4,-0.6));
  score = 0;
} else {
  textSize(13);
  background(0);
  stroke(255);
  text(score,10,10);
  String l = "";
  for (int q = 0; q < lives; q++) { l += "%"; }
  text(l,50,10);
  strokeWeight(balld);
  point(x,y);
  strokeWeight(8);
  line(paddlex,height - 30,paddlex + paddlew,height-30);
}