void test_plateau_obtenir_piece()
{
    puts("Test plateau_obtenir_piece");

    plateau_siam plateau;
    plateau_initialiser(&plateau);

    piece_siam *piece = &(plateau.piece[0][0]);
    piece->type=elephant;
    piece->orientation=haut;

    piece = &(plateau.piece[0][1]);
    piece->type=rhinoceros;
    piece->orientation=haut;

    int kx=0;
    for(kx=0;kx<NBR_CASES;kx++)
    {
        int ky=0;
        for(ky=0;ky<NBR_CASES;ky++)
        {
            if(kx == 0 && ky == 0)
            {
                if(plateau_obtenir_piece(&plateau,kx,ky)->type != elephant)
                    printf("case [%d][%d] KO\n",kx,ky);

                if(plateau_obtenir_piece_info(&plateau,kx,ky)->type != elephant)
                    printf("case [%d][%d] info KO\n",kx,ky);
            }
            else if(kx == 0 && ky == 1)
            {
                if(plateau_obtenir_piece(&plateau,kx,ky)->type != rhinoceros)
                    printf("case [%d][%d] KO\n",kx,ky);

                if(plateau_obtenir_piece_info(&plateau,kx,ky)->type != rhinoceros)
                    printf("case [%d][%d] info KO\n",kx,ky);
            }
            else if(ky==2 && (kx>=1 && kx<=3))
            {
                if(plateau_obtenir_piece(&plateau,kx,ky)->type != rocher)
                    printf("case [%d][%d] KO\n",kx,ky);

                if(plateau_obtenir_piece_info(&plateau,kx,ky)->type != rocher)
                    printf("case [%d][%d] info KO\n",kx,ky);
            }
            else
            {
                if(plateau_obtenir_piece(&plateau,kx,ky)->type != case_vide)
                    printf("case [%d][%d] KO\n",kx,ky);

                if(plateau_obtenir_piece_info(&plateau,kx,ky)->type != case_vide)
                    printf("case [%d][%d] info KO\n",kx,ky);
            }
        }
    }
}
예제 #2
0
void jeu_initialiser(jeu_siam* jeu)
{

    assert(jeu!=NULL);

    //initialise le plateau
    //initialise le joueur

    plateau_initialiser(&jeu->plateau);
    jeu->joueur=0;
}
void jeu_initialiser(jeu_siam* jeu)
{
    
    plateau_initialiser(&jeu->plateau);
    assert(jeu!=NULL);
    /*jeu->plateau.piece[3][3].type=elephant;
    jeu->plateau.piece[3][3].orientation=gauche;
    jeu->plateau.piece[0][3].type=elephant;
    jeu->plateau.piece[0][3].orientation=droite;
    jeu->plateau.piece[1][1].type=elephant;
    jeu->plateau.piece[1][1].orientation=bas;
    jeu->plateau.piece[1][3].type=rhinoceros;
    jeu->plateau.piece[1][3].orientation=bas;
    jeu->plateau.piece[1][4].type=elephant;
    jeu->plateau.piece[1][4].orientation=bas;*/
    jeu->joueur=0;
}
void test_plateau_denombrer_type()
{
    puts("Test plateau_denombrer_type");

    plateau_siam plateau;
    plateau_initialiser(&plateau);

    piece_siam *piece = &(plateau.piece[0][0]);
    piece->type=elephant;
    piece->orientation=haut;

    piece = &(plateau.piece[0][1]);
    piece->type=rhinoceros;
    piece->orientation=haut;

    int nombre=0;
    for(nombre=0;nombre<NBR_CASES*NBR_CASES;nombre++)
    {
        //Tests case_vide
        if(nombre==20)
        {
            if(plateau_denombrer_type(&plateau,case_vide)!=nombre)
                puts("valeur case_vide KO");
        }
        else
        {
            if(plateau_denombrer_type(&plateau,case_vide)==nombre)
                puts("valeur case_vide KO");
        }

        //Tests rocher
        if(nombre==3)
        {
            if(plateau_denombrer_type(&plateau,rocher)!=nombre)
                puts("valeur rocher KO");
        }
        else
        {
            if(plateau_denombrer_type(&plateau,rocher)==nombre)
                puts("valeur rocher KO");
        }

        //Tests elephant et rhinoceros
        if(nombre==1)
        {
            if(plateau_denombrer_type(&plateau,elephant)!=nombre)
                puts("valeur elephant KO");

            if(plateau_denombrer_type(&plateau,rhinoceros)!=nombre)
                puts("valeur rhinoceros KO");
        }
        else
        {
            if(plateau_denombrer_type(&plateau,elephant)==nombre)
                puts("valeur elephant KO");

            if(plateau_denombrer_type(&plateau,rhinoceros)==nombre)
                puts("valeur rhinoceros KO");
        }
    }


}