Guest User

Untitled

a guest
Nov 17th, 2017
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.99 KB | None | 0 0
  1. #include "battleship.h"
  2.  
  3. /*PantallaInicio: Imprime un mensaje de bienvenida junto con las reglas del juego*/
  4. void PantallaInicio (void) {
  5. printf ("XXXXX XXXX XXXXXX XXXXXX XX XXXXXX XXXXX XX XX XX XXXX\n");
  6. printf ("XX XX XX XX XX XX XX XX XX XX XX XX XX XX\n");
  7. printf ("XXXXX XX XX XX XX XX XXXX XXXX XXXXXX XX XXXX\n");
  8. printf ("XX XX XXXXXX XX XX XX XX XX XX XX XX XX\n");
  9. printf ("XXXXX XX XX XX XX XXXXXX XXXXXX XXXXX XX XX XX XX\n");
  10. printf ("\n\n");
  11. printf ("REGLAS DEL JUEGO:\n");
  12. printf ("1. Este es un juego de dos jugadores.\n");
  13. printf ("2. El jugador 1 crea el servidor.\n");
  14. printf ("3. Las dimensiones del tablero es 10x10");
  15. printf ("4. Existen cinco tipos de barcos que seran ubicados desde el mas grande al mas pequeño.\n");
  16. printf ("[P] Portaviones ocupa 5 casillas, [A] Acorazado ocupa 4 casillas, [F] Fragata\n");
  17. printf (" ocupa 3 casillas, [S] Submarino ocupa 2 casillas, [B] Buque ocupa 1 casilla\n");
  18. printf ("5. La computadoa de manera aleatoria selecciona el jugador que comenzara primero\n");
  19. printf ("6. El juego comienza con cada jugador tratando de adivinar la localizacion de los barcos\n");
  20. printf (" del jugador oponente en el tablero del juego; [1] acierto y [0] fallo\n");
  21. printf ("7. El primer Jugador que adivine la localizacion de todos los barcos, gana\n\n");
  22. }
  23.  
  24. /*inicializaTablero: Esta funcion inicializa la matriz que representa el tablero del jugador*/
  25. void inicializaTablero (Casilla Tablero[][COLUMNAS]) {
  26. int i = 0, j = 0;
  27. /*El tablero se llenara con agua*/
  28. for (i = 0; i < FILAS; i++)
  29. for (j = 0; j < COLUMNAS; j++) {
  30. Tablero[i][j].simbolo = AGUA;
  31. Tablero[i][j].posicion.fila = i;
  32. Tablero[i][j].posicion.columna = j;
  33. }
  34. }
  35.  
  36. /* imprimeTablero: Esta funcion imprime el tablero en la pantalla, y la opcion de mostrar o no mostrar las marcas*/
  37. void imprimeTablero (Casilla Tablero[][COLUMNAS], Boolean mostrarMarcas) {
  38. int i = 0, j = 0;
  39. printf (" 0 1 2 3 4 5 6 7 8 9\n");
  40. for (i = 0; i < FILAS; i++) {
  41. printf ("%d ", i);
  42. for (j = 0; j < COLUMNAS; j++) {
  43. if (mostrarMarcas == TRUE)
  44. printf ("%c ", Tablero[i][j].simbolo);
  45. else {
  46. switch (Tablero[i][j].simbolo) {
  47. case ACIERTO: printf ("%c ", ACIERTO); break;
  48. case FALLO: printf ("%c ", FALLO); break;
  49. case AGUA:
  50. default: printf ("%c ", AGUA); break;
  51. }
  52. }
  53. }
  54. putchar ('\n');
  55. }
  56. }
  57.  
  58. /*colocarBarcosEnElTablero: Esto permite al jugador colocar cinco diferentes tipos de barco en
  59. * una casilla del tablero, ya sea en horizontal o vertical.
  60. */
  61. void colocarBarcosEnElTablero (Casilla Tablero[][COLUMNAS], Navio barco,
  62. Coordenadas posicion, int direccion) {
  63. int i = barco.longitud - 1;
  64. for (i = 0; i < barco.longitud; i++) {
  65. if (direccion == HORIZONTAL)
  66. /* HORIZONTAL */
  67. Tablero[posicion.fila][posicion.columna + i].simbolo = barco.simbolo;
  68. else /* VERTICAL */
  69. Tablero[posicion.fila + i][posicion.columna].simbolo = barco.simbolo;
  70. }
  71. }
  72. }
Add Comment
Please, Sign In to add comment