Ejemplo n.º 1
0
        /// <summary>
        /// 将HexCell实例 转化成用来序列化的 HexCellSerialization实例
        /// </summary>
        /// <param name="cells">HexCell实例数组</param>
        /// <returns>HexCellSerialization实例数组</returns>
        public static HexCellSerialization[] ShiftCells(HexCell[,] cells)
        {
            HexCellSerialization[] result = new HexCellSerialization[cells.GetLength(0) * cells.GetLength(1)];
            int i = 0;

            for (int z = 0; z < cells.GetLength(1); z++)
            {
                for (int x = 0; x < cells.GetLength(0); x++)
                {
                    if (cells[x, z] != null)
                    {
                        result[i] = new HexCellSerialization(cells[x, z]);
                        i++;
                    }
                }
            }

            return(result);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 用序列化地图的中的单元格覆盖游戏场景中的地图单元格
 /// </summary>
 /// <param name="hexCell">游戏场景中的地图单元格</param>
 /// <param name="hexCellSerialization">序列化地图的单元格</param>
 private static void CoverageHexMap(HexCell hexCell, HexCellSerialization serializationCell)
 {
     hexCell.TerrainTypeIndex = (Terrain)serializationCell.TerrainTypeIndex;
 }