2016-04-24 4 views
1

Ich mache ein Spiel, wo jedes Level die Anzahl der Gegner um eins erhöht. Nach dem zehnten Level würde es einen Bosskampf geben. mein Code, den ich jetzt habe, ist:Wie erhöht man die Anzahl der Feinde in Arraylist mit jedem Level?

public void newLevel() { 
    if (mAsteroidList.isEmpty()) { 
     mAsteroidCreateTimer++; 
     if (mAsteroidCreateTimer >= 50) { 
      for (int i = 0; i < 6; i++) { 
       mAsteroidList.add(new ZeAsteroids(mShip.mXPos, mShip.mYPos)); 

fügt Nachrichten Feinde um mein Schiff

  } 
      mAsteroidCreateTimer = 0; 
     } 
    } 

Koordinaten Was ich will, für jede Ebene ist previous level + sein 1. Erste Ebene 6 Feinde haben würde, und so weiter bis 14 (Ebene neun).

+0

Wenn 'mAsteroidCreateTimer' 51 erreicht hat, werden 6 Feinde (?' ZeAsteroids') erstellt. Ich nehme an, dass 'mAsteroidList.isEmpty()' falsch ist, nachdem dies passiert ist. "newLevel" wird also nichts tun, wenn "mAsteroidCreateTimer" das erste Mal 51 erreicht hat (nach dem 51-Aufruf von 'newLevel'). – ikrabbe

Antwort

0

Erstelle eine private int-Variable, um die Anzahl der Gegner im Level zu speichern, benutze diese anstelle von 6, dann wenn du ein Level erhöhst, verändere die Variable.

Verwandte Themen