void Arbitrator::initKillPatern(){ Patern p(0); p.addCase(1, 0, 1); p.addCase(2, 0, 1); p.addCase(3, 0, 0); _killPatern.push_back(p); p = Patern(0); p.addCase(0, 1, 1); p.addCase(0, 2, 1); p.addCase(0, 3, 0); _killPatern.push_back(p); p = Patern(0); p.addCase(1, 1, 1); p.addCase(2, 2, 1); p.addCase(3, 3, 0); _killPatern.push_back(p); p = Patern(0); p.addCase(1, -1, 1); p.addCase(2, -2, 1); p.addCase(3, -3, 0); _killPatern.push_back(p); }
void Arbitrator::initWinPatern(){ Patern p(0); p.addCase(1, 0); p.addCase(2, 0); p.addCase(3, 0); p.addCase(4, 0); _winPatern.push_back(p); p = Patern(0); p.addCase(0, 1); p.addCase(0, 2); p.addCase(0, 3); p.addCase(0, 4); _winPatern.push_back(p); p = Patern(0); p.addCase(1, 1); p.addCase(2, 2); p.addCase(3, 3); p.addCase(4, 4); _winPatern.push_back(p); p = Patern(0); p.addCase(1, -1); p.addCase(2, -2); p.addCase(3, -3); p.addCase(4, -4); _winPatern.push_back(p); }
int main(int UNUSED(argc), char ** argv, char **envp) { Game * game = init_game(); int i = -1; std::string visual[] = { " ", "*", " ", "~" }; while (++i < WIN_WIDTH ) { game->getBg()[i].setY(0); game->getBg()[i].setPatern(Patern(visual[rand() % 4])); game->getBg2()[i].setY(WIN_HEIGHT - 1); } while ( 42 ) { usleep( 1000000 / NB_FRAME ); if ( doKeyAction(game->getPlayer()) ) break ; game->popRandomEnemy(); game->move_all(); if (checkCollisions(game, game->getEnemies(), game->getPlayer()->getBullets())) endGame(game->getPlayer()->getScore(), argv[0], envp, "You Win !"); if (game->getPlayer()->getHp() <= 0) break ; clear(); game->display_all(); } endGame(game->getPlayer()->getScore(), argv[0], envp, "You loose !"); COUT << ENDL; }
void Arbitrator::initBreakFivePatern(){ Patern p(3); p.addCase(1, 0, 0); p.addCase(2, 0, 0); p.addCase(3, 0, 1); _breakPatern.push_back(p); p = Patern(1); p.addCase(1, 0, 0); p.addCase(2, 0, 0); p.addCase(3, 0, 3); _breakPatern.push_back(p); p = Patern(3); p.addCase(1, 1, 0); p.addCase(2, 2, 0); p.addCase(3, 3, 1); _breakPatern.push_back(p); p = Patern(1); p.addCase(1, 1, 0); p.addCase(2, 2, 0); p.addCase(3, 3, 3); _breakPatern.push_back(p); p = Patern(3); p.addCase(0, 1, 0); p.addCase(0, 2, 0); p.addCase(0, 3, 1); _breakPatern.push_back(p); p = Patern(1); p.addCase(0, 1, 0); p.addCase(0, 2, 0); p.addCase(0, 3, 3); _breakPatern.push_back(p); p = Patern(3); p.addCase(1, -1, 0); p.addCase(2, -2, 0); p.addCase(3, -3, 1); _breakPatern.push_back(p); p = Patern(1); p.addCase(1, -1, 0); p.addCase(2, -2, 0); p.addCase(3, -3, 3); _breakPatern.push_back(p); }
void Arbitrator::initThreePatern(){ Patern p(3); p.addCase(1, 0, 0); p.addCase(2, 0, 3); p.addCase(3, 0, 0); p.addCase(4, 0, 0); p.addCase(5, 0, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(1, 0, 0); p.addCase(2, 0, 0); p.addCase(3, 0, 3); p.addCase(4, 0, 0); p.addCase(5, 0, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(0, 1, 0); p.addCase(0, 2, 0); p.addCase(0, 3, 3); p.addCase(0, 4, 0); p.addCase(0, 5, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(0, 1, 0); p.addCase(0, 2, 3); p.addCase(0, 3, 0); p.addCase(0, 4, 0); p.addCase(0, 5, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(1, 1, 0); p.addCase(2, 2, 3); p.addCase(3, 3, 0); p.addCase(4, 4, 0); p.addCase(5, 5, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(1, 1, 0); p.addCase(2, 2, 0); p.addCase(3, 3, 3); p.addCase(4, 4, 0); p.addCase(5, 5, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(1, -1, 0); p.addCase(2, -2, 3); p.addCase(3, -3, 0); p.addCase(4, -4, 0); p.addCase(5, -5, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(1, -1, 0); p.addCase(2, -2, 0); p.addCase(3, -3, 3); p.addCase(4, -4, 0); p.addCase(5, -5, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(1, -1, 0); p.addCase(2, -2, 0); p.addCase(3, -3, 0); p.addCase(4, -4, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(1, 1, 0); p.addCase(2, 2, 0); p.addCase(3, 3, 0); p.addCase(4, 4, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(1, 0, 0); p.addCase(2, 0, 0); p.addCase(3, 0, 0); p.addCase(4, 0, 3); _threePatern.push_back(p); p = Patern(3); p.addCase(0, 1, 0); p.addCase(0, 2, 0); p.addCase(0, 3, 0); p.addCase(0, 4, 3); _threePatern.push_back(p); }