我正在尝试使用类创建游戏,在该类中,对象移动到随机位置并使用数组以将其随机添加。有人可以帮我更好地编写此代码,因为它无法正常工作吗?顺便说一下,我正在使用软件“ Processing”。
我的密码
我的课
*final color ALIEN_COLOR = color(30, 100, 0);
PImage background;
int x=0; //global variable background location
Superhero hero1;
Alien [] invader1 = new Alien[8];
void setup(){
size(800,400);
background = loadImage("spaceB.jpg");
background.resize(width,height);
hero1 = new Superhero(10, height/2);
for(int i = 0; i < invader1.length; i++){
invader1[i] = new Alien();
invader1 = new Alien(width,300);
}
} // setup ends
void draw ()
{
drawBackground();
hero1.render();
invader1.render();
if(invader1.move() == false){
invader1 = new Alien(width, 500);
}
} // draw ends*
和对象为:
***class Alien{
int x;
int y;
Alien(int x, int y){
this.x = x;
this.y = y;
}
void render(){
fill(ALIEN_COLOR);
rect(x, y, 50, 50);
}
boolean move(){
x = x - 1;
return (x >= 0);
}
}***
我收到的错误消息是:
构造函数Alien()不存在。
不匹配,Defenders.Alien不匹配Defenders.Alien []
最佳答案
您正在调用invader1[i] = new Alien();
,但是在Alien
类中没有no-arg构造函数。声明Alien
类中的无参数构造函数,以解决此问题:
Alien() {
// Put here some initialization code if needed else leave it as it is
}