我有这个代码,应该是一个简单的游戏,你有一个你需要用来接球的球拍。 代码:
var h = 350;
var w = 350;
var x = 0;
var bx = 0;
var by = 0;
var bys = 5;
var score = 0;
var hit = false;
//inicial size: 350,350.
function setup(){
createCanvas(w,h);
bx = random(10,340);
}
function draw(){
background(50);
drawPad();
drawBall();
drawScore();
if(hit){
bx = random(10,340);
hit=false;
}
}
function drawPad(){
fill(255);
noStroke();
if(mouseX>0||mouseX<290){
x = mouseX;
rect(x,320,60,20);
}
if(mouseX>290){
x=290;
rect(x,320,60,20);
}
if(mouseX<0){
x= 0;
rect(x+60,320,60,20);
}
}
function drawBall(){
if(by!=310){
fill(255,20,75);
by += bys;
ellipse(bx,by,10,10);
}else{
score++;
by = -100;
hit = true;
}
}
function drawScore(){
text(score,10,10);
}
我想将我的bx与超过1的值进行比较,我想将它与(mouseX,mouseX + 10)和(mouseX-10,mouseX)进行比较。 如果您知道我应该如何完成我的代码,请帮助我。 感谢。
答案 0 :(得分:0)
我将它包装在一个像这样的小函数中:
function mouseXIsInRange () {
var nameThatDescribesFirstComparison = (bx === mouseX && bx === mouseX + 10);
var nameThatDescribesSecondComparison = (bx === mouseX && bx === mouseX - 10);
return nameThatDescribesFirstComparison && nameThatDescribesSecondComparison;
}
并称之为:
if (mouseXIsInRange()) {
// do something
}
以一种使代码易于阅读的方式命名您的函数和变量是很好的,特别是当您开始进入比较逻辑时。当您重新阅读代码时,良好的命名将为您节省大量的麻烦。祝你好运!