Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
Proz

Jogo da Forca

Recommended Posts

Proz

Tenho aqui o jogo da forca que eu desenvolvi para um projecto final da disciplina Linguagens de Programação do 11º Ano.. Para quem quiser dar uma olhadela.. funciona perfeitamente bem.. Cumps

(tinha-me esquecido de inserir o ficheiro com as palavras para se poder jogar singleplayer, aqui esta ele)

http://www.mediafire.com/?nmmvjzdiyym    -  palavras

http://www.mediafire.com/?wynazzymawy  -  executável

http://www.mediafire.com/?unm3znmrmyo  -  source

//Projecto: A Forca
//Trabalho realizador por: Eugeniu Prozorovschii

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>
#include <ctype.h>
#include <time.h>
//---------------------------------------------------------------
//Estrutura  
//---------------------------------------------------------------

typedef struct scoreS
{
        char nome[20];
        int score;
}Scores;

Scores scores[10];

//---------------------------------------------------------------
//Menu    
//---------------------------------------------------------------

int menu()
{
     int opcao;
     system("cls");
     printf("     ±±±±±±±±±±±±±±±±±±±±±±\n");  
     printf("     ±   Jogo Da Forca    ±\n");
     printf("     ±                    ±\n");
     printf("     ±");
     printf(" -------Menu------- ±\n");              //Menu Principal
     printf("     ±                    ±\n");        
     printf("     ±  1 - SiglePlayer   ±\n");        
     printf("     ±  2 - Multiplayer   ±\n");        
     printf("     ±  3 - Ajuda         ±\n");
     printf("     ±  4 - Scores        ±\n");
     printf("     ±  5 - Limpar Scores ±\n");
     printf("     ±  6 - Creditos      ±\n");
     printf("     ±  0 - Sair          ±\n");
     printf("     ±                    ±\n");
     printf("     ±±±±±±±±±±±±±±±±±±±±±±\n\n");       
     printf("     Escolha a sua opcao: ");           //Escolher a opçao que pretende
     scanf("%d", &opcao);
     return(opcao);
     
}

//-----------------------------------------------------------------
//Boneco
//-----------------------------------------------------------------

int boneco(int vida)
{
    if (vida == 8)   // por cada vida que diminui, acrescenta-se uma parte no boneco
    {
        printf("     ");
        printf("%c", 201);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c\n", 187);
        printf("     %c    %c\n", 186, 186);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("    %c", 205);
        printf("%c", 202);
        printf("%c", 205);
    
    }
    
    if (vida == 7)
    {
    
        printf("     ");
        printf("%c", 201);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c\n", 187);
        printf("     %c    %c\n", 186, 186);
        printf("     %c    %c\n", 186, 257);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("    %c", 205);
        printf("%c", 202);
        printf("%c", 205);
        
    }
    
    if (vida == 6)
    {
        printf("     ");
        printf("%c", 201);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c\n", 187);
        printf("     %c    %c\n", 186, 186);
        printf("     %c    %c\n", 186, 257);
        printf("     %c    %c\n", 186, 197);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("    %c", 205);
        printf("%c", 202);
        printf("%c", 205);
    } 
    
    if (vida == 5)
    {
        printf("     ");
        printf("%c", 201);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c\n", 187);
        printf("     %c    %c\n", 186, 186);
        printf("     %c    %c\n", 186, 257);
        printf("     %c   %c%c\n",186, 196, 197);
        printf("     %c    \n",186);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("    %c", 205);
        printf("%c", 202);
        printf("%c", 205); 
    }
    
    if (vida == 4)
    {
        printf("     ");
        printf("%c", 201);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c\n", 187);
        printf("     %c    %c\n", 186, 186);
        printf("     %c    %c\n", 186, 257);
        printf("     %c   %c%c%c\n",186, 196, 197, 196);
        printf("     %c    \n",186);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("    %c", 205);
        printf("%c", 202);
        printf("%c", 205); 
    }
    
    if (vida == 3)
    {
        printf("     ");
        printf("%c", 201);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c\n", 187);
        printf("     %c    %c\n", 186, 186);
        printf("     %c    %c\n", 186, 257);
        printf("     %c   %c%c%c\n",186, 196, 197, 196);
        printf("     %c    %c\n",186, 179);
        printf("     %c\n", 186);
        printf("     %c\n", 186);
        printf("    %c", 205);
        printf("%c", 202);
        printf("%c", 205); 
    } 
    
    if (vida == 2)
    {
        printf("     ");
        printf("%c", 201);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c\n", 187);
        printf("     %c    %c\n", 186, 186);
        printf("     %c    %c\n", 186, 257);
        printf("     %c   %c%c%c\n",186, 196, 197, 196);
        printf("     %c    %c\n",186, 179);
        printf("     %c   %c\n", 186, 47 );
        printf("     %c\n", 186);
        printf("    %c", 205);
        printf("%c", 202);
        printf("%c", 205); 
    }  
    
    if (vida == 1)
    {
        printf("     ");
        printf("%c", 201);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c", 205);
        printf("%c\n", 187);
        printf("     %c    %c\n", 186, 186);
        printf("     %c    %c\n", 186, 257);
        printf("     %c   %c%c%c\n",186, 196, 197, 196);
        printf("     %c    %c\n",186, 179);
        printf("     %c   %c %c\n", 186, 47, 92);
        printf("     %c\n", 186);
        printf("    %c", 205);
        printf("%c", 202);
        printf("%c", 205); 
    }  
                
}


//---------------------------------------------------------------
//Mulplayer    
//---------------------------------------------------------------

int multi()
{
    char palavra[30],letra_ins,espaco[30], letras_inseridas[30];
    bool ganhou=false;
    int vida=8, x, i=0, numero_letras, score, tamanho,l_inseridas=0, posicao;
    char nome_j[30], letra_op, c;
    FILE *pFile;
    letras_inseridas[0]='\0';
    printf("     ±±±±±±±±±±±±±±±±±");
    printf("\n     ± Jogo Da Forca ±\n");
    printf("     ±±±±±±±±±±±±±±±±±\n\n");
    printf("\n");
    printf("Prime 'S' para voltar ao Menu ou qualquer tecla para \ncontinuar no modo MultiPlayer: "); 
    letra_op=getche();
    if ((letra_op == 's') || (letra_op == 'S'))
                 return(0);
                 
    system("cls");
    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
    printf("\n     ± Jogo Da Forca - MultiPlayer ±\n");
    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
    printf("\nO Jogador escreve uma palavra para o adversario tentar \n
adivinhar sem perder as 8 vidas, ou seja, sem ser enforcado!\n\n");  
    printf("     Escreva uma palavra: ");  
    palavra[i]='\0';
    while(1)
    {
        c=getchar();
        if(isalpha(c))
                      {
                             palavra[i]=c;
                             i++;
                             palavra[i]='\0';
                             }
                             if(c=='\n' && strlen(palavra)>0)
                             break;

}
    
    strlwr(palavra);  //por a palavra em minusculas
    numero_letras=strlen(palavra);  
    system("cls");
    
     
    for(i=0;i<strlen(palavra);i++)  // vai inserir um _ para substituir cada letra
        espaco[i]='_';
    
    espaco[strlen(palavra)]='\0';
    
    while(vida>0)
    {   
        x=0;    
        
        printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
        printf("\n     ± Jogo Da Forca - MultiPlayer ±\n");
        printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
        printf("     ");
        for(i=0;i<strlen(palavra);i++)
        
              printf("%c ",espaco[i]);  // vai imprimir cada letra
    
       printf("\n\n");
       boneco(vida);     //vai chamar a funçao do boneco
       printf("\n\n"); 
       
        printf("\n     Letras ja inseridas: ");   //mostra as letras ja inseridas
        for(i=0;i<l_inseridas;i++)
           
           printf("%c ",letras_inseridas[i]);  //imprime as letras ja inseridas
                    
        do{ 
            do{
                 printf("\n     Escreva uma letra: ");  
                 fflush(stdin);
                 letra_ins=getche();        //le a letra
            }while(isalpha(letra_ins)==0);  // nao deixa inserir numeros ou outro
tipo de caracteres que nao sejam letras
                        
            
            posicao=-1;
            if(l_inseridas==0)
            {
                letras_inseridas[0]=letra_ins;
                l_inseridas++;
            }
            else
            { 
                
                for(i=0;i<l_inseridas;i++)
                {
                    if(letras_inseridas[i]==letra_ins) 
                    {
                        posicao=1;
                        printf("     -[Letra ja foi inserida, tente outra!]-"); 
                        break;
                    }
                }
                if(posicao==-1)
                {
                   letras_inseridas[l_inseridas]=letra_ins;
                   l_inseridas++;
                }
            }
        }while(posicao!=-1);
        
        
        for(i=0;i<strlen(palavra);i++)    
        {         
             if(letra_ins==palavra[i])     // se a letra inserida for igual a uma letra da palavra entao
             {      
                espaco[i]=palavra[i];      //o espaco vai ser substituido pela letra
                numero_letras=numero_letras-1;  
                x++;          
             }                     
        }
        
        system("cls");  
        if(x==0)     // se a letra inserida nao for igual a uma letra da palavra
        {
                vida--;    // a variavel vida vai decrementar
                
        }
        if(numero_letras == 0)   
        {
                ganhou=true;  //entao a variavel ganhou torna verdadeiro
                break;
        }
    }
    
    score = (vida+1)*strlen(palavra);  // a pontuacao: a vida que sobra +1 vezes o tamanho da palavra
    if(!ganhou)  // se a variavel ganhou nao retornar verdadeiro
    {
               printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
               printf("\n     ± Jogo Da Forca - MultiPlayer ±\n");
               printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
        printf("\n\nFoste enforcado!\n\nFim do jogo!\n\nA palavra escondida 
era: %s\n\nScore: %d\n\n",palavra,score);  
    }
    else{
               printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");  // senao
               printf("\n     ± Jogo Da Forca - MultiPlayer ±\n");
               printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
        printf("\n\nParabens, GANHASTE!\n\nFim do jogo!\n\nA palavra escondida 
era: %s\n\nScore: %d\n\n",palavra, score);   
        printf("     Insira o nome do jogador: "); 
        scanf("%s",&nome_j);
    

        pFile = fopen ("scores.txt","rb");    //abre o ficheiro scores em modo de leitura
        if (pFile==NULL) // se o ficheiro estiver vazio ou nao existir
             pFile = fopen ("scores.txt","wb+"); // abre em modo de escrita
        else
        {
             fread(scores,sizeof(Scores),10,pFile); // senao vai ler o que o ficheiro contem
             fclose(pFile); // e fecha o ficheiro
            
        }
        i=0;
        do
        {
            if(strlen(scores[i].nome)==0)    //vai vendo se o nome é nulo
                    break;
            i++;   
        }while(i<11);   // se nao for nulo e houver mais do que 10 nomes ja nao guarda porque esta cheio
        if(i<10){ // se o i for menor do que 10
            pFile = fopen("scores.txt","wb+");  //abre o ficheiro e guarda o nome do jogador e o score
            scores[i].score=score;
            strcpy(scores[i].nome,nome_j);
            fwrite(scores,sizeof(Scores),10,pFile);
            fclose(pFile); //fecha o ficheiro
            printf("\n");
            printf("     Score registado com sucesso!\n\n");  // se nao estiver cheio, guarda com socesso
        }
        else
            printf("     Nao ha mais espaco para guardar scores\n\n"); 
              
        
    }
   
system("pause");    
}



//-----------------------------------------------------------------
//Single Player  
//-----------------------------------------------------------------
int single()
{
    FILE *ficheiro;
    FILE *pFile;
    char palavra[30], letra_op, c,nome_j[30], espaco[30], letras_inseridas[30], letra_ins;
    bool ganhou=false;
    int i, x, score, numero_letras, conta, vida=8, l_inseridas=0, tamanho, posicao, n_palavra_random;
    
    letras_inseridas[0]='\0';
    ficheiro = fopen("palavras.txt","r");
    printf("     ±±±±±±±±±±±±±±±±±");
    printf("\n     ± Jogo Da Forca ±\n");
    printf("     ±±±±±±±±±±±±±±±±±\n\n");
    printf("\n");
    printf("     Prime 'S' para voltar ao Menu ou qualquer tecla para \n     continuar no modo SinglePlayer: ");
    letra_op=getche();
    if ((letra_op == 's') || (letra_op == 'S'))
                 return(0);
    
    system("cls");
    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
    printf("\n     ± Jogo Da Forca - SiglePlayer ±\n");
    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
    system("cls");
    srand(time(NULL));  // cada vez que o programa é aberto faz um random
    n_palavra_random = rand()%3716; // escolhe uma palavra aleatoriamente entre as 262 que existem
    for (i=0;i<n_palavra_random;i++)
    {
        do{
            c = getc(ficheiro);  // escolhe a palavra sabendo que
            
        }while(c!='\n'); // o fim de cada palavra é definido pelo \n, ou seja pelo paragrafo
        
    }
    
    for (i=0; i <33; i++)
    {
        c = getc(ficheiro);
        if (c == '\n')
        {
            palavra[i]='\0';
            break;
        }
        else
        {
            palavra[i]=c;
        }
    }
    

   strlwr(palavra);    // a partir de aqui é o mesmo procedimento que a funçao do multiplayer
   numero_letras=strlen(palavra);
   
   for(i=0;i<strlen(palavra);i++)
        espaco[i]='_';
    
    espaco[strlen(palavra)]='\0';
    
    while(vida>0)
    {   
        x=0;
        
        printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
        printf("\n     ± Jogo Da Forca - SiglePlayer ±\n");
        printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
        printf("     ");
        
        for(i=0;i<strlen(palavra);i++)
              printf("%c ",espaco[i]);
              
        
       printf("\n\n");
       boneco(vida);     
       printf("\n\n");
       
        printf("     Letras ja inseridas: ");
        for(i=0;i<l_inseridas;i++)
           printf("%c ",letras_inseridas[i]);
                    
        do{ 
            do{
                 
                 printf("\n     Escreva uma letra: ");
                 fflush(stdin);
                 letra_ins=getche();        
            }while(isalpha(letra_ins)==0);
                        
           
            posicao=-1;
            if(l_inseridas==0)
            {
                letras_inseridas[0]=letra_ins;
                l_inseridas++;
            }
            else
            { 
                
                for(i=0;i<l_inseridas;i++)
                {
                    if(letras_inseridas[i]==letra_ins)
                    {
                        posicao=1;
                        printf("     -[Letra ja foi inserida, tente outra!]-");
                        break;
                    }
                }
                if(posicao==-1)
                {
                   letras_inseridas[l_inseridas]=letra_ins;
                   l_inseridas++;
                }
            }
        }while(posicao!=-1);
        
        
        for(i=0;i<strlen(palavra);i++)    
        {         
             if(letra_ins==palavra[i])
             {      
                espaco[i]=palavra[i];
                numero_letras=numero_letras-1;
                x++;          
             }                     
        }
        
        system("cls");  
        if(x==0)
        {
                vida--;
        }
        if(numero_letras == 0)
        {
                ganhou=true;
                break;
        }
    }
   
   score = (vida+1)*strlen(palavra);
    if(!ganhou)
    {
    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
    printf("\n     ± Jogo Da Forca - SiglePlayer ±\n");
    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
    printf("\n\n Foste enforcado!\n\nFim do jogo!\n\nA palavra escondida 
era: %s\n\nScore: %d\n\n",palavra,score);
    }
    else{
    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
    printf("\n     ± Jogo Da Forca - SiglePlayer ±\n");
    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
        
        printf("\nParabens, GANHASTE!\n\nFim do jogo!\n\nA palavra escondida 
era: %s\n\n     Score: %d\n\n",palavra, score);
        printf("     Insira o nome do jogador: ");
        scanf("%s",&nome_j);
    

        pFile = fopen ("scores.txt","rb");
        if (pFile==NULL)
             pFile = fopen ("scores.txt","wb+");
        else
        {
             fread(scores,sizeof(Scores),10,pFile);
              
             fclose(pFile);
            
        }
        i=0;
        do
        {
            if(strlen(scores[i].nome)==0)
                    break;
            i++;
        }while(i<11);
        if(i<10){
            pFile = fopen("scores.txt","wb+");
            scores[i].score=score;
            strcpy(scores[i].nome,nome_j);
            fwrite(scores,sizeof(Scores),10,pFile);
            fclose(pFile);
            printf("\n");
            printf("     Score registado com sucesso!\n\n");
        }
        else
            printf("     Nao ha mais espaco para guardar scores\n\n");
              
        
    }
   
system("pause");    
}

//---------------------------------------------------------------
//Ajuda - as instruçoes do jogo estao guardadas na opçao ajuda do menu principal
//---------------------------------------------------------------    

void ajuda()
{

     printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±");
     printf("\n     ± Jogo Da Forca - Ajuda ±\n");
     printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
     printf("\nModo Single Player - Seleccione a opcao 1 do Menu, o programa 
ira\nseleccionar uma palavra aleatoria do banco de dados.\n\n");
     printf("\nModo Multi Player - seleccione a opcao 2 do Menu, o adversario
tera\nque escrever uma palavra sem o parceiro ver.\n\n");
     printf("\nObjectivo do Jogo e adivinhar a palavra sem ser\nenforcado, 
ou seja, perder as 8 vidas!\n\n");
     system("pause");
}

//---------------------------------------------------------------
//Créditos - os creditos estao guardados na opçao creditos do menu principal
//---------------------------------------------------------------

void creditos()
{

     printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
     printf("\n     ± Jogo Da Forca - Creditos ±\n");
     printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
     printf("\n     Trabalho efectuado por: \n\n");
     printf("     ±±±±±  ±±±±±  ±±±±±  ±±±±±±\n");
     printf("     ±   ±  ±   ±  ±   ±       ±\n");
     printf("     ±   ±  ±   ±  ±   ±      ±    \n");
     printf("     ±±±±±  ±±±±±  ±   ±     ±\n");
     printf("     ±      ±±     ±   ±    ±\n");
     printf("     ±      ± ±    ±   ±   ±\n");
     printf("     ±      ±  ±   ±   ±  ±\n");
     printf("     ±      ±   ±  ±±±±±  ±±±±±±");
     printf("\n\n     Ajudas:\n");
     printf("\n     -Diogo Costa");
     printf("\n     -Jorge Madeira");
     printf("\n     -Foruns e Comunidades na Internet.\n\n");
     printf("\n");
     printf("     Projecto:\n\n");
     printf("     -A FORCA-\n\n");
     printf("     -Disciplina: Linguagens de Programacao!\n");
     printf("     -Ano Lectivo: 2009/2010\n");
     printf("     -Professor: Jorge Madeira\n");
     printf("     -Aluno: Eugeniu Prozorovschii 11F N11\n\n");
     printf("     Copyright 2010 Todos os direitos reservados! \n                      *Proz*\n\n");
     system("pause");
     
}

//---------------------------------------------------------------
//Consultar   
//---------------------------------------------------------------

int consultar()
{
     FILE *pFile;
     int score, i,tam_fic;
     char nome[20], nome_temp[20];
     pFile = fopen("scores.txt","rb+");  //abrimos o ficheiro em modo de leitura para 
consultar os scores guardados
     fseek (pFile, 0, SEEK_END);  //o ponteiro posicionasse no final do ficheiro
     tam_fic=ftell(pFile);  //o tamanho do ficheiro fica guardado na variavel tam_fic
     if((pFile==NULL) || (tam_fic==0))  // se o tamanho do ficheiro for NULL 
quer dizer que o ficheiro esta vazio
     {

         printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
         printf("\n     ± Jogo Da Forca - Consultar Scores ±\n");
         printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
         printf("\n     Nao ha scores guardados!\n");  //ou seja, nao ha scores guardados
         printf("\n");
     }
     else   // senao
     {
          rewind(pFile);  // reposiciona o ponteiro no incio do ficheiro 
          printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
          printf("\n     ± Jogo Da Forca - Consultar Scores ±\n");
          printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
          fread(scores,sizeof(Scores),10,pFile);  // le o que esta no ficheiro
       
          i=0;
          do{
             if(strlen(scores[i].nome)==0)  //verifica quantos scores estao guardados
                    break;
                    
             printf("     Nome: %s  Score: %d\n\n", scores[i].nome, scores[i].score); //imrpime o nome do jogador e o score
             i++;
         }while(i<10);  //enquanto i for menor que 10, ou seja so pode mostrar 10 scores
     }
     system("pause");
} 

//---------------------------------------------------------------
//Apagar Scores  
//---------------------------------------------------------------
     
int apagar_score()
{
    FILE *pFile;
    char ltr;
    int i;

    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");
    printf("\n     ± Jogo Da Forca - Limpar Scores ±\n");
    printf("     ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n\n");
    printf("     Prima 'R' para remover todos os scores: "); 
    scanf("%c", &ltr);  // le a letra
    if ((ltr == 'r') || (ltr == 'R'))  // se a letra for igual ao r pequeno ou ao R grande
    {
        for (i=0; i<10; i++)
                 strcpy(scores[i].nome,"\0");

             pFile = fopen ("scores.txt","wb+");  
             printf("\n");
             printf("     Removido com Sucesso!\n\n");
    }
    system("pause");
}

//---------------------------------------------------------------
//Int Main   
//---------------------------------------------------------------

int main()  
{
system("color f0");
int i, op = 7;
for(i=0;i<99;i++)

while(op != 0)  //enquanto a opçao for diferente de 0 nao sai do programa
{
op = menu();
fflush(stdin);
system("cls");
if (op == 1)    // se a opçao for 1 abre o modo de jogo single player
single();
system("cls");
if(op == 2)    // se a opçao for 2 abre o modo de jogo multi player
multi();
system("cls");
if(op == 3)    // se a opçao for 3 abre a pagina Ajuda
ajuda();
system("cls");
if(op == 4)    // se a opçao for 4 mostra os scores guardados
consultar();
system("cls");
if(op == 5)    // se a opçao for 5 remove os scores
apagar_score();
system("cls");
if(op == 6)   // se a opçao for 6 mostra os creditos
creditos(); 
system("cls");

}
}

Share this post


Link to post
Share on other sites
Localhost

Se dividisses isso por ficheiros ficava mais organizado. Tens aí algumas coisas que te lixam a portabilidade como por exemplo chamadas ao sistema que só funcionam em windows. Tambén não percebi o porquê de leres strings da maneira que leste. Também vi que tens a função gets comentada, não tires esse comentário.

Usa antes a fgets ou assim.


here since 2009

Share this post


Link to post
Share on other sites
spektro_123

a maneira como ele fez para ler as strings na parte do multijogador:

ele fez assim para não dar para inserir numeros nem simbolos,

só para dar para inserir letras

(quando se esta a inserir a string pode-se inserir todos os caracteres, mas ele so vai reconhecer as letras) 

:)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.