2014-02-06 60 views
0

讓太空侵略者擊倒遊戲。我的代碼不會編譯,因爲我收到錯誤消息「它看起來像是在混合」活動「和」靜態「模式」,但我看不到我在混合它們。有人可以看看我的代碼嗎?混合處理中的活動和靜態模式

final int SCREENX=400; 
final int SCREENY=400; 
final int GAP=10; 
final int ALIEN_ALIVE=0; 
final int ALIEN_DEAD=6; 
final int FORWARD=0; 
final int BACKWARD=1; 
final int MARGIN=30; 

Alien theAliens[]; 
Bullet bullets[]; 
Player thePlayer; 

void setup() { 
    PImage normalImg, explodeImg; 
    size(SCREENX, SCREENY); 
    normalImg =loadImage("invader.GIF"); 
    explodeImg =loadImage("exploding.GIF"); 
    theAliens = new Alien[10]; 
    bullets = new Bullet[20]; 
    init_aliens(theAliens, normalImg, explodeImg); 
    thePlayer = new Player(SCREENY- 50); 
} 

void init_aliens(Alien baddies[], PImage okImg, PImage 
exImg) { 
    for (int i=0; i<baddies.length; i++) { 
    // This is buggy, what is the problem? 
    baddies[i] = new Alien(i*(okImg.width+GAP), 0, okImg, 
    exImg); 
    } 
} 

void init_bullets() { 
    for (int i = 0; i < bullets.size(); i++) { 
    Bullet b = (Bullet) bullets.get(i); 
    b.move(); 
    b.draw(); 
    } 
} 

void shoot() { 
    if (mousePressed) 
    Player.shoot(); 
} 

void draw() {  
    background(0); 
    thePlayer.draw(); 
    thePlayer.move(mouseX); 
    draw_bullets(myBullets); 
    for (int i=0; i<theAliens.length; i++) { 
    theAliens[i].move(); 
    theAliens[i].draw(); 

    if (random(0, 500)<1) 
     theAliens[i].die(); 
    } 
} 

////// Player Class ////// 
Player() {  ///** When I get the error, this line is highlighted**/// 
    this.x = width/2; 
    this.y = height-50; 
    this.timeLastShot = 0; 
    this.coolDown = 200; 
    colour playColour= color(50); 

    void draw() { 
    fill(playerColour); 
    rect(this.x, this.y, 30, 30); 
    } 

    void move(int x) { 
    if (x>SCREENX-50) 
     xpos= SCREENX-50; 
    else xpos=x; 
    } 
    void shoot() { 
     if (millis() - timeLastShot > coolDown) { 
     Bullet bullet = new Bullet(this.x+12.5, this.y, -5); 
     bullets.add(bullet); 
     timeLastShot = millis(); 
     } 
    } 
    } 
+0

這是什麼語言?並且請編輯您的問題以包含完整(和未編輯)的錯誤日誌,同時指出發佈源中錯誤的位置(錯誤消息確實包含源文件名和行號)。 –

+2

正在處理中。它基於Java。我把它放在我的'標籤'中。我編輯了我的問題。 – user3241910

+0

此外,這是我得到的錯誤消息,我沒有編輯它。@ JoachimPileborg – user3241910

回答

3

球員類寫的不好。它應該是:

class Player { 

Player() { 
//constructor 
} 

void functionOfSorts() { 

} // Never forget to enclose functions with curly brackets! 

} 

...至於反對你寫的:

Player() { 
//yadayada 
} 
相關問題