コード例 #1
0
 /// <summary>
 /// Cambia los portales de casilla cuando cae en una casilla especial
 /// </summary>
 /// <param name="portalesRecibidos">lista de portales creados</param>
 public void CambiarPortales(ServidorJuegoSE.Portal[] portalesRecibidos)
 {
     for (int i = 0; i < Portales.Count; i++)
     {
         var casillaDelPortal  = Casillas.Find(x => x.Id == Portales[i].IdCasilla);
         var imagenesEnCasilla = grid_Tablero.Children.Cast <UIElement>().Where
                                     (x => x is Image && Grid.GetColumn(x) == casillaDelPortal.Columna &&
                                     Grid.GetRow(x) == casillaDelPortal.Fila).Cast <Image>();
         var portal       = imagenesEnCasilla.FirstOrDefault(x => x.Name.Equals(Portales[i].Color + Portales[i].ZonaTablero));
         var nuevaCasilla = Casillas.Find(x => x.Id == portalesRecibidos[i].IdCasilla);
         Grid.SetRow(portal, nuevaCasilla.Fila);
         Grid.SetColumn(portal, nuevaCasilla.Columna);
     }
     Portales = portalesRecibidos.ToList();
 }
コード例 #2
0
        /// <summary>
        /// Coloca los portales
        /// </summary>
        private void ColocarPortales()
        {
            ServidorJuegoSE.Casilla casilla;
            Image imagenPortal;

            for (int i = 0; i < Portales.Count; i++)
            {
                casilla             = Casillas.Find(x => x.Id == Portales[i].IdCasilla);
                imagenPortal        = new Image();
                imagenPortal.Source = new BitmapImage(new Uri(Portales[i].UriPortal, UriKind.Relative));
                imagenPortal.HorizontalAlignment = HorizontalAlignment.Left;
                imagenPortal.VerticalAlignment   = VerticalAlignment.Bottom;
                imagenPortal.Height = 90;
                imagenPortal.Name   = Portales[i].Color + Portales[i].ZonaTablero;
                Grid.SetRow(imagenPortal, casilla.Fila);
                Grid.SetColumn(imagenPortal, casilla.Columna);
                grid_Tablero.Children.Add(imagenPortal);
            }
        }