Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
devair1010

C++ jogo genius - menu para dois jogadores

Recommended Posts

boa noite ,

     pessoal preciso de ajuda para fazer um menu nesse jogo para dois jogadores,  ele está para um só jogador  e não estou conseguindo fazer com que tenha outro jogador, se alguém puder ajudar agradeço .

#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <time.h>
#include <windows.h>
int a,b,i,j,ac;
int qn=1,num[10],seq[10],ok,f;
int vet[10][2],mov[5]={0,0,49,13,23};
int letras[11][7]={{124,130,128,134,130,130,124}, /* letra  G */
                   {254,128,128,248,128,128,254}, /* letra  E */
                   {194,162,146,146,138,138,134}, /* letra  N */
                   {124, 16, 16, 16, 16, 16,124}, /* letra  I */
                   {130,130,130,130,130, 68, 56}, /* letra  U */
                   {124,130,128,124,002,130,124}, /* letra  S */
                  };
void gotoxy(int x,int y){
    COORD c;
    c.X = x;
    c.Y = y;
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c);
}
void desenha(){
    float x,y;
    for(i=0;i<360;i+=36){
        x=cos(i*3.141615/180)*10+65;
        y=sin(i*3.141615/180)*10+12;
        gotoxy(x,y);
        printf("%d",i/36);
        vet[i/36][0]=x-2;
        vet[i/36][1]=y-2;
    }
}
void tela_de_abertura(){
    int y1=15,x1=8,y2=y1,x2=x1,j;   /*y1=linha inicial  y2 para recuperar a linha inicial*/
    for(i=0;i<6;i++){               /*  sao 10 letras  */
        for(j=0;j<7;j++){           /*o caractere é de 7 linhas */
            a=letras[i][j];         /*pega o numero da 1 linha do caractere */
            for(b=0;b<8;b++){       /*aqui eh um numero de apenas 7 bits*/
                gotoxy(x1,y1);
                if(a % 2 != 0){     /*se bit=1 */
                    printf("%c",219);/*coloca espaço invertido senão coloca espaço normal*/
                }
                else{
                    printf(" ");    /*senão coloca espaço normal*/
                }
                a=a/2;              /*dividindo numero por 2 desloca os bits para direita*/
                x1--;
                Sleep(1);
            }
            y1++;                   /*muda para proxima linha*/
            x1=x2;                  /*volta para a coluna inicial*/
        }                           /*proxima linha*/
        x2=x2+8;                    /*avança 8 colunas posicionando para o prox caract*/
        x1=x2;
        y1=y2;                      /*volta para linha inicial*/
    }                               /*imprimiu o primeiro caractere*/
    gotoxy(0,0);
}
void movimento(){
    int po=mov[1],po2=po,ii;
    char op[1]={'+'};
    for(ii=0;ii<10;ii++){
        if(po2==0){
            gotoxy(po+4,13);
        }
        else{
            gotoxy(po-1,13);
        }
        printf(" ");
        gotoxy(po,13);
        printf("%c",op[0]);
        po+=5;
    }
    po=mov[2];
    for(ii=0;ii<10;ii++){
        if(po2==0){
            gotoxy(po-4,23);
        }
        else{
            gotoxy(po+1,23);
        }
        printf(" ");
        gotoxy(po,23);
        printf("%c",op[0]);
        po-=5;
    }
    po=mov[3];
    for(ii=0;ii<2;ii++){
        if(po2==0){
            gotoxy(49,po+4);
        }
        else{
            gotoxy(49,po-1);
        }
        printf(" ");
        gotoxy(49,po);
        printf("%c",op[0]);
        po+=5;
    }
    po=mov[4];
    for(ii=0;ii<2;ii++){
        if(po2==0){
            gotoxy(0,po-4);
        }
        else{
            gotoxy(0,po+1);
        }
        printf(" ");
        gotoxy(0,po);
        printf("%c",op[0]);
        po-=5;
    }
    mov[1]++;
    mov[2]--;
    mov[3]++;
    mov[4]--;
    if( mov[1]>4){
        mov[1]=00;
        mov[2]=49;
        mov[3]=13;
        mov[4]=23;
    }
}
void som(int ss){
    switch(ss){
        case 0:
            Beep(400,200);
            break;
        case 1:
            Beep(700,200);
            break;
        case 2:
            Beep(1000,200);
            break;
        case 3:
            Beep(1300,200);
            break;
        case 4:
            Beep(1600,200);
            break;
        case 5:
            Beep(1900,200);
            break;
        case 6:
            Beep(2200,200);
            break;
        case 7:
            Beep(2500,200);
            break;
        case 8:
            Beep(2800,200);
            break;
        case 9:
            Beep(3100,200);
            break;
    }
}
void quadrado(int tb,int ty){
    if(tb != -21){
        int ii;
        for(ii=0;ii<5;ii++){
            gotoxy(vet[tb][0]+ii,vet[tb][1]+0) ;
            printf("%c",ty);
            gotoxy(vet[tb][0]+ii,vet[tb][1]+4) ;
            printf("%c",ty);
            gotoxy(vet[tb][0]+4 ,vet[tb][1]+ii);
            printf("%c",ty);
            gotoxy(vet[tb][0]+0 ,vet[tb][1]+ii);
            printf("%c",ty);
        }
    }
    if(ty==219)som(tb);
    gotoxy(0,0);
}
int main(){
    tela_de_abertura();
    srand(time(NULL));
    desenha();
    gotoxy(20,0);
    printf("Tecle ESC Para Sair\n\n");
    printf("           Tecle Enter Para Iniciar A Partida");
    do{
        movimento();
        if(i >= 0 && i < 10){   /*movimenta a quadrado no inicio*/
            quadrado(i,219);
            Sleep(100);
            movimento();
            quadrado(i, 32);
            Sleep(100);
        }
        i++;
        if(i>9)i=0;
        if(kbhit()){a=getch();}/*espera pressionar uma tecla*/
    }while(a == 0);
    gotoxy(0,2);
    printf("                    Iniciando A Partida           ");
    gotoxy(60,11);
    printf("ATENCAO !!!");
    for(i=9;i>=0;i--){
        movimento();
        gotoxy(65,13);
        printf("%d",i);Sleep(150);/*contagem regressiva*/
        movimento();Sleep(150);
    }
    gotoxy(0,2);
    printf("                                               ");
    gotoxy(60,11);
    printf("           ");
    gotoxy(65,13);
    printf(" ");
    Sleep(500);
    do{
        movimento();
        for(i=0;i<10;i++)num[i]=-1;   /*limpando o vetor*/
        for(i=0;i<qn;i++){
            num[i]=rand()%10;         /*escolhendo um numero*/
            quadrado(num[i],219);     /*mostra qual o numero */
            for(j=0;j<2;j++){
                Sleep(200);               /* durante meio segundo */
                movimento();
            }
            quadrado(num[i],32);
            for(j=0;j<1;j++){
                Sleep(200);               /*espera meio segundo*/
                movimento();
            }
        }
        gotoxy(60,11);                   /*coloca o cursor no inicio da tela*/
        printf("   Repita  ");gotoxy(65,12);printf("A");gotoxy(61,13);printf("Sequencia");
        gotoxy(0,24);
        for(i=0;i<qn;i++){               /*pega a sequencia*/
            do{
                seq[i]=-1;
                movimento();
                if(kbhit()){
                    seq[i]=getch()-48;    /*pega os numeros digitados*/
                    fflush(stdin);
                }
                if(seq[i]>=0 &&seq[i]<10)quadrado(seq[i],219);/*mostra o numero digitado*/
                Sleep(100);               /*durante meio segundo*/
                movimento();
                Sleep(100);
                if(seq[i]==-21){gotoxy(0,20);return 0;}/*se teclar ESC fim de jogo*/
                setbuf(stdin,NULL);        /*limpa o bufer do teclado*/
                if(seq[i]>=0 &&seq[i]<10)quadrado(seq[i],32);
                setbuf(stdin,NULL);
            }while(seq[i]<0 || seq[i]>9);  /*repete se numero < 0 ou numero > 9*/
        }
        fflush(stdin);
        ok=0;
        for(i=0;i<qn;i++){           /*confere a sequencia digitada*/
            if(seq[i] == num[i])       /*se numero digitado = a sequencia*/
                ok++;                /*soma a quantidade de acertos*/
        }
        gotoxy(62,11);
        printf("           ");
        gotoxy(65,12);
        printf(" ");
        gotoxy(61,13);
        printf("         ");
        gotoxy(62,11);
        if(qn == ok){            /*sequencia certa*/
            if(qn < 11)qn++;     /*aumenta a qtd de numeros do genius*/
            printf(" Acertou  ");
            gotoxy(0,24);
            for(i=0;i<7;i++){
                Sleep(200);
                movimento();
            }
            gotoxy(62,11);
            printf("           ");
            gotoxy(65,12);
            printf(" ");
            gotoxy(61,13);
            printf("         ");
            ac++;       /* incrementa a quantidade de acertos*/
        }else {
            printf(" Errou ");
            gotoxy(65,12);
            printf("A");
            gotoxy(61,13);
            printf("Sequencia");
            for(i=0;i<10;i++){
                Sleep(200);
                movimento();
            }
            gotoxy(62,11);
            printf("       ");
            gotoxy(65,12);
            printf(" ");
            gotoxy(61,13);
            printf("         ");
            for(i=0;i<qn;i++){
                quadrado(num[i],219);    /*mostra a sequencia certa */
            }
            gotoxy(19,4);
            printf("JOGO TERMINADO...!");
            gotoxy(19,6);
            printf("QUANTIDADE DE ACERTOS ");
            if(ac<10)printf("0");
            printf("%d",ac);
            gotoxy(0,20);
            setbuf(stdin,NULL);
            a=getch();
            return 0;
        }
        if(kbhit())a=getch();
    }while(a != 27);
    gotoxy(0,20);
    getch();
    return 0;
}

 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • pessoal estou tentando acertar esse código  mas ele está com algum erro  e não consigo descobrir onde está o erro.

    #include <stdio.h>
    #include <conio.h>
    #include <math.h>
    #include <time.h>
    #include <windows.h>
    int a,b,i,j,ac;
    int qn=1,num[10],seq[10],ok,f;
    int vet[10][2],mov[5]={0,0,49,13,23};
    int letras[11][7]={{124,130,128,134,130,130,124}, /* letra  G */
                       {254,128,128,248,128,128,254}, /* letra  E */
                       {194,162,146,146,138,138,134}, /* letra  N */
                       {124, 16, 16, 16, 16, 16,124}, /* letra  I */
                       {130,130,130,130,130, 68, 56}, /* letra  U */
                       {124,130,128,124,002,130,124}, /* letra  S */
                      };
    void gotoxy(int x,int y){
        COORD c;
        c.X = x;
        c.Y = y;
        SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c);
    }
    void desenha(){
        float x,y;
        for(i=0;i<360;i+=36){
            x=cos(i*3.141615/180)*10+65;
            y=sin(i*3.141615/180)*10+12;
            gotoxy(x,y);
            printf("%d",i/36);
            vet[i/36][0]=x-2;
            vet[i/36][1]=y-2;
        }
    }
    void tela_de_abertura(){
        int y1=15,x1=8,y2=y1,x2=x1,j;   /*y1=linha inicial  y2 para recuperar a linha inicial*/
        for(i=0;i<6;i++){               /*  sao 10 letras  */
            for(j=0;j<7;j++){           /*o caractere é de 7 linhas */
                a=letras[i][j];         /*pega o numero da 1 linha do caractere */
                for(b=0;b<8;b++){       /*aqui eh um numero de apenas 7 bits*/
                    gotoxy(x1,y1);
                    if(a % 2 != 0){     /*se bit=1 */
                        printf("%c",219);/*coloca espaço invertido senão coloca espaço normal*/
                    }
                    else{
                        printf(" ");    /*senão coloca espaço normal*/
                    }
                    a=a/2;              /*dividindo numero por 2 desloca os bits para direita*/
                    x1--;
                    Sleep(1);
                }
                y1++;                   /*muda para proxima linha*/
                x1=x2;                  /*volta para a coluna inicial*/
            }                           /*proxima linha*/
            x2=x2+8;                    /*avança 8 colunas posicionando para o prox caract*/
            x1=x2;
            y1=y2;                      /*volta para linha inicial*/
        }                               /*imprimiu o primeiro caractere*/
        gotoxy(0,0);
    }
    void movimento(){
        int po=mov[1],po2=po,ii;
        char op[1]={'+'};
        for(ii=0;ii<10;ii++){
            if(po2==0){
                gotoxy(po+4,13);
            }
            else{
                gotoxy(po-1,13);
            }
            printf(" ");
            gotoxy(po,13);
            printf("%c",op[0]);
            po+=5;
        }
        po=mov[2];
        for(ii=0;ii<10;ii++){
            if(po2==0){
                gotoxy(po-4,23);
            }
            else{
                gotoxy(po+1,23);
            }
            printf(" ");
            gotoxy(po,23);
            printf("%c",op[0]);
            po-=5;
        }
        po=mov[3];
        for(ii=0;ii<2;ii++){
            if(po2==0){
                gotoxy(49,po+4);
            }
            else{
                gotoxy(49,po-1);
            }
            printf(" ");
            gotoxy(49,po);
            printf("%c",op[0]);
            po+=5;
        }
        po=mov[4];
        for(ii=0;ii<2;ii++){
            if(po2==0){
                gotoxy(0,po-4);
            }
            else{
                gotoxy(0,po+1);
            }
            printf(" ");
            gotoxy(0,po);
            printf("%c",op[0]);
            po-=5;
        }
        mov[1]++;
        mov[2]--;
        mov[3]++;
        mov[4]--;
        if( mov[1]>4){
            mov[1]=00;
            mov[2]=49;
            mov[3]=13;
            mov[4]=23;
        }
    }
    void som(int ss){
        switch(ss){
            case 0:
                Beep(400,200);
                break;
            case 1:
                Beep(700,200);
                break;
            case 2:
                Beep(1000,200);
                break;
            case 3:
                Beep(1300,200);
                break;
            case 4:
                Beep(1600,200);
                break;
            case 5:
                Beep(1900,200);
                break;
            case 6:
                Beep(2200,200);
                break;
            case 7:
                Beep(2500,200);
                break;
            case 8:
                Beep(2800,200);
                break;
            case 9:
                Beep(3100,200);
                break;
        }
    }
    void quadrado(int tb,int ty){
        if(tb != -21){
            int ii;
            for(ii=0;ii<5;ii++){
                gotoxy(vet[tb][0]+ii,vet[tb][1]+0) ;
                printf("%c",ty);
                gotoxy(vet[tb][0]+ii,vet[tb][1]+4) ;
                printf("%c",ty);
                gotoxy(vet[tb][0]+4 ,vet[tb][1]+ii);
                printf("%c",ty);
                gotoxy(vet[tb][0]+0 ,vet[tb][1]+ii);
                printf("%c",ty);
            }
        }
        if(ty==219)som(tb);
        gotoxy(0,0);
    }
    int main()(
        tela_de_abertura();
        srand(time(NULL));
        desenha();
        gotoxy(20,0);
        printf("Tecle ESC Para Sair\n\n");
        printf("           Tecle Enter Para Iniciar A Partida");
        do{
            movimento();
            if(i >= 0 && i < 10){   /*movimenta a quadrado no inicio*/
                quadrado(i,219);
                Sleep(100);
                movimento();
                quadrado(i, 32);
                Sleep(100);
            }
            i++;
            if(i>9)i=0;
            if(kbhit()){a=getch();}/*espera pressionar uma tecla*/
        }while(a == 0);
        gotoxy(0,2);
        printf("                    Iniciando A Partida           ");
        gotoxy(60,11);
        printf("ATENCAO !!!");
        for(i=9;i>=0;i--){
            movimento();
            gotoxy(65,13);
            printf("%d",i);Sleep(150);/*contagem regressiva*/
            movimento();Sleep(150);
        }
        gotoxy(0,2);
        printf("                                               ");
        gotoxy(60,11);
        printf("           ");
        gotoxy(65,13);
        printf(" ");
        Sleep(500);
        do{
            movimento();
            for(i=0;i<10;i++)num[i]=-1;   /*limpando o vetor*/
            for(i=0;i<qn;i++){
                num[i]=rand()%10;         /*escolhendo um numero*/
                quadrado(num[i],219);     /*mostra qual o numero */
                for(j=0;j<2;j++){
                    Sleep(200);               /* durante meio segundo */
                    movimento();
                }
                quadrado(num[i],32);
                for(j=0;j<1;j++){
                    Sleep(200);               /*espera meio segundo*/
                    movimento();
                }
            }
            gotoxy(60,11);                   /*coloca o cursor no inicio da tela*/
            printf("   Repita  ");gotoxy(65,12);printf("A");gotoxy(61,13);printf("Sequencia");
            gotoxy(0,24);
            for(i=0;i<qn;i++){               /*pega a sequencia*/
                do{
                    seq[i]=-1;
                    movimento();
                    if(kbhit()){
                        seq[i]=getch()-48;    /*pega os numeros digitados*/
                        fflush(stdin);
                    }
                    if(seq[i]>=0 &&seq[i]<10)quadrado(seq[i],219);/*mostra o numero digitado*/
                    Sleep(100);               /*durante meio segundo*/
                    movimento();
                    Sleep(100);
                    if(seq[i]==-21){gotoxy(0,20);return 0;}/*se teclar ESC fim de jogo*/
                    setbuf(stdin,NULL);        /*limpa o bufer do teclado*/
                    if(seq[i]>=0 &&seq[i]<10)quadrado(seq[i],32);
                    setbuf(stdin,NULL);
                }while(seq[i]<0 || seq[i]>9);  /*repete se numero < 0 ou numero > 9*/
            }
            fflush(stdin);
            ok=0;
            for(i=0;i<qn;i++){           /*confere a sequencia digitada*/
                if(seq[i] == num[i])       /*se numero digitado = a sequencia*/
                    ok++;                /*soma a quantidade de acertos*/
            }
            gotoxy(62,11);
            printf("           ");
            gotoxy(65,12);
            printf(" ");
            gotoxy(61,13);
            printf("         ");
            gotoxy(62,11);
            if(qn == ok){            /*sequencia certa*/
                if(qn < 11)qn++;     /*aumenta a qtd de numeros do genius*/
                printf(" Acertou  ");
                gotoxy(0,24);
                for(i=0;i<7;i++){
                    Sleep(200);
                    movimento();
                }
                gotoxy(62,11);
                printf("           ");
                gotoxy(65,12);
                printf(" ");
                gotoxy(61,13);
                printf("         ");
                ac++;       /* incrementa a quantidade de acertos*/
            }else {
                printf(" Errou ");
                gotoxy(65,12);
                printf("A");
                gotoxy(61,13);
                printf("Sequencia");
                for(i=0;i<10;i++){
                    Sleep(200);
                    movimento();
                }
                gotoxy(62,11);
                printf("       ");
                gotoxy(65,12);
                printf(" ");
                gotoxy(61,13);
                printf("         ");
                for(i=0;i<qn;i++){
                    quadrado(num[i],219);    /*mostra a sequencia certa */
                }
                gotoxy(19,4);
                printf("JOGO TERMINADO...!");
                gotoxy(19,6);
                printf("QUANTIDADE DE ACERTOS ");
                if(ac<10)printf("0");
                printf("%d",ac);
                gotoxy(0,20);
                setbuf(stdin,NULL);
                a=getch();
                return 0;
            }
            if(kbhit())a=getch();
        }while(a != 27);
        gotoxy(0,20);
        getch();
        return 0;
    }

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Olá @devair1010,

     

    Inicialmente, conheço esse Genius de forma diferente. Assim:
    http://passatempo.ig.com.br/jogos/siga-o-som/

    Ou seja, parte do do princípio do jogo é o mesmo, mas teoricamente seria outro jogo. Poderia chamar de outro nome, por exemplo de DEVAIR GAME, pois GENIUS já tem dono, por sinal é apenas uma forma diferente desse nome: CLIQUE QUI. :D

     

     

    Brincadeiras as parte:

     

     

    1) FUNCIONAMENTO DO MULTIPLAYER

    Em 29/09/2017 às 22:11, devair1010 disse:

    fazer com que tenha outro jogador

    Como você quer que funcione o segundo jogador?  um joga e após errar vai o outro, ou vai intercalando até um dos dois errar? (ou de outra forma?)

     

     

     

    2) QUAIS AS NOVIDADES?

    Qual a diferença do primeiro código para o segundo código? crie um log de mudanças para identificar o que foi mudado... pois cada mudança pode ter impactos futuros.

     

    Obs.: tem um pequeno erro de digitação. Seria:

    int main() {

    em vez de:

     int main()(

     

     

     

    3) DÊ NOME AOS BOIS

    Em 01/10/2017 às 21:11, devair1010 disse:

    mas ele está com algum erro

    Tente especificar qual erro ou tipo de erro.. se foi o de compilação, foi apenas o citado no item 2.

     

     

     

    ***

     

    No aguardo.

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • @Simon Viegas     sim o erro era de compilação , agora que você disse que eu vi esse erro,    quanto ao segundo jogador é que eu não estou sabendo como fazer, pois o professor disse para fazer o jogo ( eu coloquei genius pois é parecido com o genius original )   para dois jogadores mas não disse como seria ,  eu acho difícil de duas pessoas jogar usando o mesmo teclado, então acredito que seria quando um errar o outro joga,  então creio que precisará de dois placar . 

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Olá.

     

    1) SOBRE O ITEM 3 DO POST ANTERIOR

    8 horas atrás, devair1010 disse:

    sim o erro era de compilação , agora que você disse que eu vi esse erro

    Então, de boa.

     

     

     

    2) ENUNCIADO DO PROBLEMA

    8 horas atrás, devair1010 disse:

    o professor disse para fazer o jogo

    Esse "o" se refere as quais características do jogo? se possível poste o enunciado para primeiro analisarmos se está seguindo os requisitos dele, pois é melhor antes deixar o "Single Player" já "pronto", para só depois inserir o "Multiplayer". Não adianta fazer para 2 jogadores, se o jogo estiver "errado".

     

     

     

     

    3) NOME DO JOGO

    8 horas atrás, devair1010 disse:

    eu coloquei genius pois é parecido com o genius original

    Entendo que "parecido" não é "igual"... se de fato você mesmo entende como "sendo algo diferente", acho que não seria uma boa ideia usar o mesmo nome... entende?  Um mesmo nome deve (ou deveria, na minha opinião) remeter a mesma coisa. Poderia usar algo que como "Genius Evolution" ou algo do tipo. Não "desvirtuar" o nome do jogo.. Seria como tentar respeitar a identidade da coisa.

     

    O jogo Genius que entendo funciona assim: "existe 4 cores". A cada rodada é sorteado uma nova cor, e inserido em sequência, ou seja, a ordem das cores é sempre a mesma e vai crescendo a cada rodada...

    a, ab, abc, abcd, abcde... etc

     

    Já o seu jogo é diferente. Nele, é necessário repetir uma sequência de números aleatórios, sendo que cada rodada vai aumentado a quantidade de números aleatórios, ou seja, não necessariamente a sequência se repete, apenas é focado em aumentar a quantidade de números que deve repetir.

     

    x, xx, xxx, xxxx... etc.

    *sendo cada x um número aleatório.

     

    ou poderia representar assim:

    a, bc, def, ghij... etc.

     

    São 2 pontos diferentes, sendo GENIUS x "SEU JOGO"
    1- A quantidade de possibilidades  (4 cores X 10 números)

    2- A sequência das possibilidades (incremental x aleatório, sem correlação com o que já foi sorteado nas rodadas anteriores)

     

     

     

    4) SOBRE O ITEM 1 DO POST ANTERIOR

    8 horas atrás, devair1010 disse:

    para dois jogadores mas não disse como seria ,  eu acho difícil de duas pessoas jogar usando o mesmo teclado, então acredito que seria quando um errar o outro joga,  então creio que precisará de dois placar . 

    As 3 possibilidades são possíveis:

     

    1) um joga até errar. Daí um outro joga.

    Mas dessa forma NÃO será multi player, seria apenas o mesmo que fazer jogar novamente...

     

    2) intercalar as jogadas. O Player 1 joga. Se acertar, vai para o Player 2. Se acertar, volta para o Player 1, só que "no nível 2". Se acertar, volta para o Player 2, só que "no nível 2"... etc. Até que um erre, decretando o outro como vencedor.

     

    3) mapear outras teclas para o outro jogador.

    Faria uma múltipla estrutura seleção, ou seja, cada combinação de teclas seria respondida para seu respectivo jogador. Se pressionou de 0 a 9, vai atualizando o jogador 1. Se pressionou, por exemplo, "q,w,e,a,s,f,z,c,v,\" vai para o outro... vai dar mais trabalho, mas acho que seria possível.

     

    Sugiro tentar fazer primeiro da segunda forma...

     

     

    ***

     

    No aguardo.

    Editado por Simon Viegas

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×