| 62 | |
| 63 | // Private methods |
| 64 | private addAsteroids(): void{ |
| 65 | // Get the space sector we're in (0 to 3) |
| 66 | var spaceSector: number = Math.floor(this.score/100) % 4; |
| 67 | |
| 68 | // Get the space difficulty (0 to x) |
| 69 | var spaceDifficulty: number = Math.floor(Math.floor(this.score/100) / 4); |
| 70 | |
| 71 | // Get the spaceSeed43 (0 to 43), the spaceSeed21 (0 to 21) and the spaceSeed10 (0 to 10) |
| 72 | var spaceSeed43: number = this.score % 44; |
| 73 | var spaceSeed21: number = Math.floor(spaceSeed43/2); |
| 74 | var spaceSeed10: number = Math.floor(spaceSeed21/2); |
| 75 | |
| 76 | // Add different asteroids depending on the sector, the difficulty, and the seed |
| 77 | switch(spaceSector){ |
| 78 | // First sector : the seed is riding our tunnels, officer! |
| 79 | case 0: |
| 80 | switch(spaceDifficulty){ |
| 81 | case 0: |
| 82 | if(spaceSeed43 < 11 && spaceSeed21 < 6) |
| 83 | this.addAsteroid(spaceSeed10); |
| 84 | else if(spaceSeed43 > 29 && spaceSeed21 > 14) |
| 85 | this.addAsteroid(spaceSeed10); |
| 86 | break; |
| 87 | case 1: |
| 88 | if(spaceSeed43 < 13 && spaceSeed21 < 7) |
| 89 | this.addAsteroid(spaceSeed10); |
| 90 | else if(spaceSeed43 > 27 && spaceSeed21 > 13) |
| 91 | this.addAsteroid(spaceSeed10); |
| 92 | break; |
| 93 | default: |
| 94 | if(spaceSeed43 < 15 && spaceSeed21 < 8) |
| 95 | this.addAsteroid(spaceSeed10); |
| 96 | else if(spaceSeed43 > 25 && spaceSeed21 > 12) |
| 97 | this.addAsteroid(spaceSeed10); |
| 98 | break; |
| 99 | } |
| 100 | break; |
| 101 | // Second sector |
| 102 | case 1: |
| 103 | switch(spaceDifficulty){ |
| 104 | case 0: |
| 105 | if(spaceSeed43 % 3 == 0 && (this.score*7) % 25 > 15){ |
| 106 | for(var i = spaceSeed10 - 1; i <= spaceSeed10 + 1; i++){ |
| 107 | if(i >= 0 && i <= 10) |
| 108 | this.addAsteroid(i); |
| 109 | } |
| 110 | } |
| 111 | break; |
| 112 | case 1: |
| 113 | if(spaceSeed43 % 3 == 0 && (this.score*7) % 25 > 12){ |
| 114 | for(var i = spaceSeed10 - 1; i <= spaceSeed10 + 1; i++){ |
| 115 | if(i >= 0 && i <= 10) |
| 116 | this.addAsteroid(i); |
| 117 | } |
| 118 | } |
| 119 | break; |
| 120 | default: |
| 121 | if(spaceSeed43 % 3 == 0 && (this.score*7) % 25 > 10){ |