Advertisement
Fhernd

JugadorPC.cs

Jul 25th, 2014
2,615
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.31 KB | None | 0 0
  1. // ===++===
  2. //
  3. //    OrtizOL
  4. //
  5. // ===--===
  6. /*============================================================
  7. //
  8. // Clase: Jugador PC.
  9. //
  10. // Original en: http://goo.gl/d7xGja
  11. //
  12. // Propósito: Representar al jugador PC.
  13. //
  14. ============================================================*/
  15.  
  16. using System;
  17.  
  18. namespace Triqui.Modelo
  19. {
  20.     /// <summary>
  21.     /// Clase que representa el jugador PC.
  22.     /// </summary>
  23.     public class JugadorPC
  24.     {
  25.         #region Campos
  26.         /// <summary>
  27.         /// Marca del jugador PC.
  28.         /// </summary>
  29.         private char marca;
  30.         /// <summary>
  31.         /// Referencia al juego de triqui que juega el jugador PC.
  32.         /// </summary>
  33.         private Triqui triqui;
  34.         #endregion
  35.  
  36.         #region Constructores
  37.         /// <summary>
  38.         /// Crea una instancia del jugador PC.
  39.         /// </summary>
  40.         /// <param name="juegoTriqui">Juego de triqui que juega el jugador PC.</param>
  41.         /// <param name="marca">Marca a asignar al jugador PC.</param>
  42.         public JugadorPC(Triqui juegoTriqui, char marca)
  43.         {
  44.             triqui = juegoTriqui;
  45.             this.marca = marca;
  46.         }
  47.         #endregion
  48.  
  49.         #region Métodos
  50.         /// <summary>
  51.         /// El jugador PC realiza una jugada.
  52.         /// </summary>
  53.         /// <returns>true si el jugador PC pudo realizar la jugada; false, en caso contrario.</returns>
  54.         public bool Jugar()
  55.         {
  56.             PosicionCasilla casillaJuego = PosicionCasilla.Ninguna;
  57.            
  58.             if (triqui.CasillaVacia(PosicionCasilla.SuperiorIzquierda))
  59.             {
  60.                 casillaJuego = PosicionCasilla.SuperiorIzquierda;
  61.             }
  62.             else if (triqui.CasillaVacia(PosicionCasilla.SuperiorCentro))
  63.             {
  64.                 casillaJuego = PosicionCasilla.SuperiorCentro;
  65.             }
  66.             else if (triqui.CasillaVacia(PosicionCasilla.SuperiorDerecha))
  67.             {
  68.                 casillaJuego = PosicionCasilla.SuperiorDerecha;
  69.             }
  70.             else if (triqui.CasillaVacia(PosicionCasilla.MedioIzquierda))
  71.             {
  72.                 casillaJuego = PosicionCasilla.MedioIzquierda;
  73.             }
  74.             else if (triqui.CasillaVacia(PosicionCasilla.MedioCentro))
  75.             {
  76.                 casillaJuego = PosicionCasilla.MedioCentro;
  77.             }
  78.             else if (triqui.CasillaVacia(PosicionCasilla.MedioDerecha))
  79.             {
  80.                 casillaJuego = PosicionCasilla.MedioDerecha;
  81.             }
  82.             else if (triqui.CasillaVacia(PosicionCasilla.InferiorIzquierda))
  83.             {
  84.                 casillaJuego = PosicionCasilla.InferiorIzquierda;
  85.             }
  86.             else if (triqui.CasillaVacia(PosicionCasilla.InferiorCentro))
  87.             {
  88.                 casillaJuego = PosicionCasilla.InferiorCentro;
  89.             }
  90.             else if (triqui.CasillaVacia(PosicionCasilla.InferiorDerecha))
  91.             {
  92.                 casillaJuego = PosicionCasilla.InferiorDerecha;
  93.             }
  94.  
  95.             if (casillaJuego == PosicionCasilla.Ninguna)
  96.             {
  97.                 return false;
  98.             }
  99.             else
  100.             {
  101.                 triqui.MarcarCasilla(casillaJuego, marca);
  102.                 return true;
  103.             }
  104.         }
  105.         #endregion
  106.     }
  107. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement