我的游戏开始菜单上的按钮有什么问题?

时间:2014-08-06 04:46:08

标签: button if-statement processing

我和朋友一起创造了一个游戏。这是我第一次在可汗学院之外使用Processing进行大项目,所以有些事情有所不同。我现在的游戏部分是创建开始菜单及其所有内容。所以这就是我如何创建更改幻灯片的设置:

//I set up all of the slides as functions with the content inside. 
int display = 0;

void show() {
  if (display == 0) {
    startM();
  }
  if (display == 1) {
    options();
  }
  if (display == 2) {
    rules();
  }
  if (display == 3) {
    levelSelect();
  }
  if (display == 4) {
    level1();
  }
  if (display == 5) {
    level2();
  }
  if (display == 6) {
    level3();
  }
}

void draw() {
  show();
}

这部分来自startM()函数,这是我以前的代码     滑动以滑动,因为此功能是开始屏幕。我遇到的问题是只有前两个if语句才有效。但另外两个,当我点击规则和级别按钮时没有任何反应。如果在单击工作按钮之前单击这些按钮,则工作按钮不再起作用。这部分代码出了什么问题?

if (mousePressed && mouseX <= 400 && mouseX >= 200 && mouseY <= 300 && mouseY >= 250) {
  display = 1;
}
if (display == 0 && mousePressed && mouseX <= 400 && mouseX >= 200 && mouseY <= 230 &&   mouseY >= 180) {
  display = 4;
}
if (mousePressed && mouseX <= 400 && mouseX >= 200 && mouseY <= 370 && mouseY >= 320) {
  display = 2;
}
if (display == 0 && mousePressed && mouseX <=400 && mouseX >= 200 && mouseY <= 460 &&  mouseY >= 410) {
  display = 3;
}

这是rules(),levelSelect()和options()函数。 Squares对象只显示一个正方形,当我点击这些按钮时屏幕永远不会改变,我怎么知道我的程序不工作。

Squares mySquare;


void setup() {
  mySquare = new Squares(false, 100, 100, 100, 100);
  size(600, 600);
  background(0);
};
 int display = 0;

void rules() {
  background(0, 0, 0);
  mySquare.display();
};
void options() {
  background(0, 0, 0);
  mySquare.display();

};
void levelSelect() {
  background(0, 0, 0);
  mySquare.display();
};

void show() {
  if (display == 0) {
    startM();
  };
  if (display == 1) {
    options();
  };
  if (display == 2) {
    rules();
  };
  if (display == 3) {
    levelSelect();
  };
  if (display == 4) {
    level1();
  };
  if (display == 5) {
    level2();
  };
  if (display == 6) {
    level3();
  };
};

void draw() {
  show();
};

0 个答案:

没有答案