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();
}
Exemple #4
0
//------------------------------------------------------------------------------------
// 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);


}