Coloquei um menu onde você pode escolher entre ...Jogar, Dificuldade, Credito e Sair
agora a senha do cofre esta randomica e dependente do nivel de dificuldade. Bem, antes de postar o codigo vou explicar que estou programando no OS Fedora Linux usando o g++, este codigo não ira funcionar no windows, pra funcionar tera de fazer algumas modificações. Qualquer duvida só perguntar...
/**************************************Programação C++Autor: Adelson InácioData: 13 de Abril de 2012Versão: Ladrao de Cofre 1.0Desc.: Tente advinhar a senha para abrir o cofre***************************************/#include#includeusing namespace std;//VARIÁVEIS GLOBAIS Estas variáveis podem ser usadas por todas as funções do programa!int opcao = 0; // Opções para o menuint senha; //o numero para adivinharint chute = 0; //este é seu paupite para abrir o cofre.int num_tentativa = 0; // armazena o numero de veses que vc tentou abrir o cofre.int vida = 10; //numero disponivel de tentativasint dificuldade = 1; //grau de dificuldadebool jogando = false; // true para jogando e false para menu//Escopo das funções utilizadas.void Menu(); //menu do jogovoid Jogo(); // dentro do jogovoid Dificuldade(); //Função para escolha do grau de dificuldadevoid Credito(); //Função que mostra os creditos do autorvoid Sair();void Resultado(); //Mostra se vc ganhou ou perdeuint Randomize(); // Autera a senhaint main(){Menu();}void Menu(){system("clear");cout << "\n\n\n\t\t\t1 - Iniciar Jogo" << endl;cout << "\t\t\t2 - Dificuldades" << endl;cout << "\t\t\t3 - Credito" << endl;cout << "\t\t\t4 - Sair do Jogo" << endl;cout << "\t\t\tDigite o numero da opção...";cin >> opcao;switch(opcao){case 1:jogando = true;vida = 10;num_tentativa = 0;Jogo();break;case 2:Dificuldade();break;case 3:Credito();break;case 4:system("exit"); //Sai do jogosystem("clear");break;default:cout << "\nErro...Tecla errada" << endl;Menu(); //volta ao menubreak;}}void Jogo(){senha = Randomize(); // Declara uma senha randomicavida = 10;while (jogando){system("clear");cout << "\nCOFRE DE SEGURANÇA MAXIMA" << endl;cout << "\nSenha: ";cin >> chute;num_tentativa++; //incrementa o numero de tentativasvida--;Resultado();}system("clear");sleep(2);Menu();}int Randomize(){int num;if (dificuldade == 1){srand(time(NULL));num= rand() % 10;}else if (dificuldade == 2){srand(time(NULL));num= rand() % 100;}else{srand(time(NULL));num= rand() % 1000;}return num;}void Resultado() // funcao responsavel pelo resultado do jogo{int i;if (chute == senha) //verifica se sua tentativa esta correta{cout << "\n\t\tSenha Correta!" << endl;cout << "\t\tCofre aberto!" << endl;cout << "\nParabens você acertou em " << num_tentativa << " tentativas." << endl;cout << "Finalizando missão...\n" << endl;cin.get();cin.get();jogando = false; // finaliza loop} else{cout << "\n\t\tSenha Incorreta!" << endl;cout << "\t\t Cofre Fechado!" << endl;if (vida > 0){cout << "\t\tVoce tem mais " << vida << " tentativas " << endl;cout << "##################################################" << endl;sleep(2);}else{for(i=0; i < 100; i++){cout << "\a";}cout << "Você perdeu!!!";cin.get();cin.get();Menu();}}}void Dificuldade() // funcao para a escolha do nivel de dificuldade{system("clear"); //limpa a telacout << "\t\t\tGRAU DE DIFICULDADE\n" << endl;cout << "\n\t\t\t1 - Facil: de 0 a 9" << endl;cout << "\t\t\t2 - Moderado: de 10 a 99" << endl;cout << "\t\t\t3 - Dificil: de 100 a 999" << endl;cout << "\n\t\t\tEscolha o grau de Dificuldade...";cin >> dificuldade;switch(dificuldade) // Condição para que a escolha seja de 1 a 3{case 1:case 2:case 3:Menu();break;default:Dificuldade();break;}}void Credito() // função responsavel por mostrar os credito do autor{system("clear");cout << "\n\t\t\t\tCRÉDITO" << endl;cout << "\n\t\t\tAutor: Adelson Inácio" << endl;cout << "\t\t\tEmail: acinacio@gmail.com" << endl;cout << "\t\t\tSkype: adelson.inacio" << endl;cout << "\t\t\tData de Criação: 13 de Abril de 2012" << endl;cout << "\n\t\t\tTecle ENTER para voltar ao menu...";cin.get();// aguada o precionamentcin.get();Menu();}
Nenhum comentário:
Postar um comentário