#include #include #include #include #include /* David Alvarez López sly.dekar@gmail.com 23-Oct-2005 Hang-Man Version 1.0 El típico juego del ahorcado, en una versión sencilla con ASCII. */ void dibujaMono(int m) { switch (m) { case 1: gotoxy(57,6); cprintf("O"); break; case 2: gotoxy(57,7); cprintf("|"); gotoxy(57,8); cprintf("|"); break; case 3: gotoxy(56,7); cprintf("\\"); break; case 4: gotoxy(58,7); cprintf("/"); break; case 5: gotoxy(56,9); cprintf("/"); break; case 6: gotoxy(58,9); cprintf("\\"); break; } } int main() { ifstream fileIn; int r, index, wordsize, found; char play = 'y', nivel, n, word[20]; srand(time(NULL)); while(play == 'y' || play == 'Y') { clrscr(); textcolor(14); cprintf("Bienvenido al juego del ahorcado!"); cout< 51) { cprintf(" Por favor, escoge el nivel de dificultad (1-3): "); cin>>nivel; } for (int k = 0; k<20; k++) { word[k] = '\0'; } fileIn>>r; while (fileIn>>n) { if (n == nivel) { index = rand()%r; for (int i = 0; i<=index; i++) { fileIn>>word; if (i == index) { //word apunta al arreglo de palabras y comienza el juego clrscr(); wordsize = 0; gotoxy(50,5); cprintf(" //======="); for (int h = 6; h<12; h++) { gotoxy(50,h); cprintf("||"); } for (int k = 0; k<20; k++) { if (word[k] != '\0') { gotoxy(3*k+5,10); cprintf("_"); wordsize++; } } gotoxy(10,13); cprintf("Dame una letrita: "); int buenas = 0, malas = 0; char ch; while (malas < 6 && buenas < wordsize) { gotoxy(28,13); cin>>ch; gotoxy(28,13); cprintf(" "); found = 0; for (int l = 0; l<20; l++) { if (word[l] == ch) { word[l] = '¨'; gotoxy(3*l+5,10); cout< 5) { gotoxy(10,20); textcolor(4); cprintf("Perdiste! Quieres volver a jugar? (Y/N): "); cin>>play; } else { gotoxy(10,20); textcolor(10); cprintf("Felicidades! Ganasteee! Quieres volver a jugar? (Y/N):"); cin>>play; } } } } } fileIn.close(); } //el usuario escoge el nivel //el programa busca ese nivel en el archivo //el programa lee cuantas palabras hay en ese nivel //el programa empieza a leer palabras y se detiene en un indice determinado al azar //comienza el juego //leer una tecla //recorrer el arreglo y ver si la encontro //desplegar las casillas //buenas++ // //dibujar al mono feo //malas++ //if malas == limite //fin de juego! return 1; }