Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Proz

Jogo da Forca

Mensagens Recomendadas

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");

}
}

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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) 

:)

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.