void Game_Manager::CreationMonde5(int difficulter) { //un chemin de lumiere le reste du vide resetMap(); int current = 3, precedent; for (int x = 5; x < MAXX; x++) { precedent = current; current = modifcourant(current); for (int y = 0; y < MAXY; y++) { if (y == current) { if (y % 3 != 0) { Map[y][x].setLight(3); } } else if (y != precedent) { if (rand() % 3 != 0) { } else { //vide } } else { if (rand() % 2 == 0) { Map[y][x].setMob(1 + rand() % 8); } else { //vide } } } } Lumiere(); }
void Game_Manager::CreationMonde4(int difficulter) { //parfois chemin totalment bloquer resetMap(); int current = 3,precedent; for (int x = 5; x < MAXX; x++) { precedent = current; current = modifcourant(current); for (int y = 0; y < MAXY; y++) { if (y == current) { } else if ( y != precedent) { if (rand() % (difficulter+1)!=0) { if (rand() % 2) { Map[y][x].setObject(2 + rand() % 8); } else { Map[y][x].setLight(3); } } else { //vide } } else { if (rand() % 2 == 0) { Map[y][x].setMob(1 + rand() % 8); } else { //vide } } } } Lumiere(); }
void Game_Manager::CreationMonde6() { //damier resetMap(); int choix; for (int x = 5; x < MAXX; x++) { choix = (rand() % 4) * 2; for (int y = 0; y < MAXY; y++) { if (x%2==0 &&y%2==1)//regle a { Map[y][x].setObject(1 + rand() % 9); } else if (y % 2==0 && x%2==0 && y == choix) { Map[y][x].setType(1 + rand() % 9, 1 + rand() % 8, 2); } else if (y % 2 == 0 && x % 2 == 0 && y != choix) { //vide } else if (x % 2 == 1 && y % 2 == 1) { if (rand()%2==0) { Map[y][x].setMob(1 + rand() % 8); } else { Map[y][x].setLight(2); } }//regle d else { } } } Lumiere(); }
//------------------------------------------------------------------------------------ // MAIN Routine //------------------------------------------------------------------------------------ void main (void) { Intensite=80; // en % Lum_ON=20;// choisir valeur entre 1 et 100 Lum_OFF=10;// choisir valeur entre 1 et 100 Lum_Nbre=10; cpt=0; ON=1; nbOverflow=Lum_ON*4; // (x*10^-1)/(25*10^-3) rappel: un overflow tt les 25 ms Init_Device(); PCA_Init(); EA=1; // Autorisation interruptions Lumiere(); while (1) { // Boucle infinie } }
void Game_Manager::CreationMonde2(int difficulter) { resetMap(); int nbrmob = 0; int *ordre = NULL; int currentMob = 0, rndY = 0; for (int x = 5; x < MAXX; x++) { //pose des mobs currentMob = 0, rndY = 0; nbrmob = rand() % difficulter; if (nbrmob != 0) { while (currentMob < nbrmob) { rndY = rand() % MAXY; if (Map[rndY][x].getMob() == 0) { Map[rndY][x].setMob(1 + rand() % 8);////////////Differents sprites currentMob++; } } } } Lumiere(); }
void Game_Manager::CreationMonde1(int difficulter) { resetMap(); int nbrmob = 0, obstacle = 0, nbrLight = 0; int *ordre = NULL; int currentLight = 0, currentObst = 0; int rndY = 0; for (int x = 5; x < MAXX; x++) { if (x % 2 != 0) { currentObst = NULL; currentLight = NULL; obstacle = rand() % difficulter; nbrLight = rand() % difficulter; //pose des obstacles if (obstacle != 0) { while (currentObst < obstacle) { rndY = rand() % MAXY; if (Map[rndY][x].getObject() == 0) { Map[rndY][x].setObject(1+rand() % 9);////////////Differents sprites currentObst++; } } } //pose des lumiere natuel if (nbrLight != 0) { while (currentLight < nbrLight) { rndY = rand() % MAXY; if (Map[rndY][x].getObject() == 0) { Map[rndY][x].setLight(3);////////////Differents sprites currentLight++; } } } } else { //pose des mobs int currentMob = 0, rndY = 0; int nbrmob = rand() % difficulter; if (nbrmob != 0) { while (currentMob < nbrmob) { rndY = rand() % MAXY; if (Map[rndY][x].getMob() == 0) { Map[rndY][x].setMob(1 + rand() % 8);////////////Differents sprites currentMob++; } } } } } Lumiere(); passagesecuriserMonde1(difficulter); }