示例#1
0
 /* Genera un archivo con los datos del tablero de la partida que es serializable
  * a partir de un tablero no serializable.
  */
 private static void generarTableroSerializable(Casilla[,] tablero, ref CasillaSerializable[,] tableroSerializable)
 {
     tableroSerializable = new CasillaSerializable[tablero.GetLength(0), tablero.GetLength(1)];
     for (int i = 0; i < tablero.GetLength(0); i++)
     {
         for (int j = 0; j < tablero.GetLength(1); j++)
         {
             CasillaSerializable temp = new CasillaSerializable();
             temp.coordsTexX  = tablero[i, j].coordsTex.x;
             temp.coordsTexY  = tablero[i, j].coordsTex.y;
             temp.coordsVertX = tablero[i, j].coordsVert.x;
             temp.coordsVertY = tablero[i, j].coordsVert.y;
             temp.coordsVertZ = tablero[i, j].coordsVert.z;
             temp.elementos   = tablero[i, j].elementos;
             temp.habitat     = tablero[i, j].habitat;
             if (tablero[i, j].pinceladas != null)
             {
                 temp.pinceladas = new float[tablero[i, j].pinceladas.Length * 2];
                 for (int k = 0; k < tablero[i, j].pinceladas.Length; k++)
                 {
                     temp.pinceladas[k * 2]     = tablero[i, j].pinceladas[k].x;
                     temp.pinceladas[k * 2 + 1] = tablero[i, j].pinceladas[k].y;
                 }
             }
             tableroSerializable[i, j] = temp;
         }
     }
 }
示例#2
0
 /* Genera un archivo con los datos del tablero de la partida que es serializable
  * a partir de un tablero no serializable.
  */
 private static void generarTableroSerializable(Casilla[,] tablero, ref CasillaSerializable[,] tableroSerializable)
 {
     tableroSerializable = new CasillaSerializable[tablero.GetLength(0), tablero.GetLength(1)];
     for (int i = 0; i < tablero.GetLength(0); i++) {
         for (int j = 0; j < tablero.GetLength(1); j++) {
             CasillaSerializable temp = new CasillaSerializable();
             temp.coordsTexX = tablero[i,j].coordsTex.x;
             temp.coordsTexY = tablero[i,j].coordsTex.y;
             temp.coordsVertX = tablero[i,j].coordsVert.x;
             temp.coordsVertY = tablero[i,j].coordsVert.y;
             temp.coordsVertZ = tablero[i,j].coordsVert.z;
             temp.elementos = tablero[i,j].elementos;
             temp.habitat = tablero[i,j].habitat;
             if (tablero[i,j].pinceladas != null) {
                 temp.pinceladas = new float[tablero[i,j].pinceladas.Length * 2];
                 for (int k = 0; k < tablero[i,j].pinceladas.Length; k++) {
                     temp.pinceladas[k * 2] = tablero[i,j].pinceladas[k].x;
                     temp.pinceladas[k * 2 + 1] = tablero[i,j].pinceladas[k].y;
                 }
             }
             tableroSerializable[i,j] = temp;
         }
     }
 }
示例#3
0
 /* Construye un tablero usable con los datos del tablero serializado.
  */
 private static void rehacerTablero(CasillaSerializable[,] tableroSerializable, ref Casilla[,] tablero)
 {
     tablero = new Casilla[tableroSerializable.GetLength(0), tableroSerializable.GetLength(1)];
     for (int i = 0; i < tablero.GetLength(0); i++) {
         for (int j = 0; j < tablero.GetLength(1); j++) {
             Casilla temp = new Casilla();
             Vector2 vect = new Vector2(tableroSerializable[i,j].coordsTexX, tableroSerializable[i,j].coordsTexY);
             temp.coordsTex = vect;
             Vector3 vect3 = new Vector3(tableroSerializable[i,j].coordsVertX, tableroSerializable[i,j].coordsVertY, tableroSerializable[i,j].coordsVertZ);
             temp.coordsVert = vect3;
             temp.elementos = tableroSerializable[i,j].elementos;
             temp.habitat = tableroSerializable[i,j].habitat;
             if (tableroSerializable[i,j].pinceladas != null) {
                 temp.pinceladas = new Vector2[tableroSerializable[i,j].pinceladas.Length / 2];
                 for (int k = 0; k < temp.pinceladas.Length; k++) {
                     Vector2 vect2 = new Vector2(tableroSerializable[i,j].pinceladas[k * 2], tableroSerializable[i,j].pinceladas[k * 2 + 1]);
                     temp.pinceladas[k] = vect2;
                 }
             }
             tablero[i,j] = temp;
         }
     }
 }