protected override void OnKeyUp(KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { mode = mode + 1; } if (mode == Mode.MAX) { mode = 0; } Text = mode.ToString(); if (e.KeyCode == Keys.S) { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "WMap files (*.wmap)|*.wmap|All Files (*.*)|*.*"; if (sfd.ShowDialog() != DialogResult.Cancel) { WorldMapExporter.Export(tiles, sfd.FileName); } } else if (e.KeyCode == Keys.R) { tiles = (RealmTile[, ])tilesBak.Clone(); bmp = RenderColorBmp(tiles); pic.Image = pic2.Image = bmp; } base.OnKeyUp(e); }
public byte[] SaveWorld() { var tiles = new TerrainTile[Map.Width, Map.Height]; for (int y = 0; y < Map.Height; y++) { for (int x = 0; x < Map.Width; x++) { var mTile = Map[x, y]; tiles[x, y] = new TerrainTile { TileId = mTile.TileId, TileObj = GetObjIdAt(x, y), Name = mTile.Name, Terrain = (TerrainType)Enum.Parse(typeof(TerrainType), mTile.Terrain.ToString()), Region = (TileRegion)Enum.Parse(typeof(TileRegion), mTile.Region.ToString()) }; } } return(WorldMapExporter.Export(tiles)); }