Exemple #1
0
//--------------------------------------------------------------------------------
int main() {
    
    escolhePalavra(palavraSecreta);
    abertura();

    do {
        desenhaForca();
        chuta();
    } while(!acertou() && !enforcou());

    if(acertou()) {

    } else {

    }

    //adicionaPalavra();
    


    printf("\r\n");
    return (EXIT_SUCCESS);
}
void verificarResposta(ALLEGRO_SAMPLE *som_acertou, ALLEGRO_SAMPLE *som_errou, telaAlternativa *posicaoAlt, listaQuestao *questionario, SpriteSheet *sFantasmas, bonecoJog *jogador){
    //verificar clique 
    //printf("X: %d - Y: %d\n", posicaoAlt->mousePoderes_x, posicaoAlt->mousePoderes_y);
    //printf("alt A x: %d - y: %d", posicaoAlt->alt_Ax, posicaoAlt->alt_Ay);

    if (posicaoAlt->mousePoderes_x > posicaoAlt->alt_Ax - 50 /* 765 */ && 
        posicaoAlt->mousePoderes_x < posicaoAlt->alt_Ax + 50 /* 878 */ &&
        posicaoAlt->mousePoderes_y > posicaoAlt->alt_Ay - 20 /* 172 */ &&
        posicaoAlt->mousePoderes_y < posicaoAlt->alt_Ay + 80 /* 266 */ ){
    
           
            if(questionario->matarFantasma>=questionario->QntdRespostaMatarFantasma){
                questionario->matarFantasma = 0;
                sFantasmas->eliminado[0] = SIM;

            }
            else{
                //flag para que no próximo loop seja atualizado a questao na tela
                questionario->atualizarQuestao=1;
                // if para verificar se alternativa A é igual a resposta correta
                if (questionario->alternativa_A == questionario->resposta){
                    acertou(questionario, jogador);
                    al_play_sample(som_acertou, 1.0, 0.0, 1.0, ALLEGRO_PLAYMODE_ONCE, NULL);

                }
                else{
                    errou(questionario);
                    al_play_sample(som_errou, 1.0, 0.0, 1.0, ALLEGRO_PLAYMODE_ONCE, NULL);

                }   
            } 

    }     /* ISSO É FEITO EXATAMENTE IGUAL PARA AS ALTERNATIVAS B E C, OU SEJA, É FEITA A VERIFICAÇÃO EM TODOS OS CASOS QUE O JOGADOR
        CLICA NA ALTERNATIVA A, B OU C */


        else if (posicaoAlt->mousePoderes_x > posicaoAlt->alt_Bx -  90  && 
                posicaoAlt->mousePoderes_x  < posicaoAlt->alt_Bx +  70   &&
                posicaoAlt->mousePoderes_y  > posicaoAlt->alt_By -  0    &&
                posicaoAlt->mousePoderes_y  < posicaoAlt->alt_By +  100){

                    if(questionario->matarFantasma >= questionario->QntdRespostaMatarFantasma){
                        questionario->matarFantasma = 0;
                        sFantasmas->eliminado[1] = SIM;
                    }

                    else{
                        questionario->atualizarQuestao=1;

                        if (questionario->alternativa_B == questionario->resposta){
                            acertou(questionario, jogador);
                            al_play_sample(som_acertou, 1.0, 0.0, 1.0, ALLEGRO_PLAYMODE_ONCE, NULL);
                        }

                        else{
                            errou(questionario);
                            al_play_sample(som_errou, 1.0, 0.0, 1.0, ALLEGRO_PLAYMODE_ONCE, NULL);
                        }    
                    }
        }

            else if (posicaoAlt->mousePoderes_x > posicaoAlt->alt_Cx -  90  && 
                     posicaoAlt->mousePoderes_x < posicaoAlt->alt_Cx +  70  &&
                     posicaoAlt->mousePoderes_y > posicaoAlt->alt_Cy -  0   &&
                     posicaoAlt->mousePoderes_y < posicaoAlt->alt_Cy +  100){

                        if(questionario->matarFantasma >= questionario->QntdRespostaMatarFantasma){
                            questionario->matarFantasma = 0;
                            sFantasmas->eliminado[2] = SIM;

                        }
                        else{
                                questionario->atualizarQuestao = 1;

                                if (questionario->alternativa_C == questionario->resposta){
                                    acertou(questionario, jogador);
                                    al_play_sample(som_acertou, 1.0, 0.0, 1.0, ALLEGRO_PLAYMODE_ONCE, NULL);
 
                                }
                                else{
                                    errou(questionario);
                                    al_play_sample(som_errou, 1.0, 0.0, 1.0, ALLEGRO_PLAYMODE_ONCE, NULL);
                                }    
                        }                
            }

    //-------------------------------------------------------------------------------------------------------------

    //atualizando variavel contaora de quesdoes acertadas para eliminar fantasma
    if( questionario->matarFantasma <= 5 && questionario->acertou == 1){
        questionario->matarFantasma++;
    }

}