void hitLeftWall() { enenmy enemy = null; for (int i = width - 1; i > -1; --i) { for (int j = height - 1; j > -1; --j) { if (enemies[i, j] != null) { enemy = enemies[i, j].GetComponent <enenmy>(); enemy.left = !enemy.left; enemy.enemy_wallcollide = false; enemy.moveDown(); } } } }
void hitRightWall() { enenmy enemy = null; for (int i = 0; i < width; i++) { for (int j = 0; j < height; j++) { if (enemies[i, j] != null) { enemy = enemies[i, j].GetComponent <enenmy>(); enemy.left = !enemy.left; enemy.enemy_wallcollide = false; enemy.moveDown(); } } } }
void FixedUpdate() { if (!enemiesLeft()) { levelFinished();//not implemented yet } currentTime += Time.deltaTime; if (currentTime >= fireTime) { shoot(); setFireTime(); } bool found = false; for (int x = 0; x < width; x++) { for (int y = 0; y < height; y++) { if (enemies[x, y] != null) { enenmy enemy = enemies[x, y].GetComponent <enenmy>(); if (enemy.enemy_wallcollide)//has hit wall { found = true; //are they mmoving left or right??? if (enemy.left)//then hit left wall { hitLeftWall(); } else//then hit right wall { hitRightWall(); } break; } } if (found) { break; } } } }