Пример #1
0
    public void Save()
    {
        PrismMap map = new PrismMap(FileStructureVersion);
        Dictionary <TextureSet.Tile, PrismTexture.Tile> tileList = new Dictionary <TextureSet.Tile, PrismTexture.Tile>();

        foreach (TextureSet s in textureSetList)
        {
            PrismTexture set = new PrismTexture(s.Name, s.Bitmap);
            foreach (TextureSet.Tile t in s)
            {
                PrismTexture.Tile tile = new PrismTexture.Tile(t.Name, t.UV, set);
                tileList.Add(t, tile);
                set.AddTile(tile);
            }

            map.AddTexture(set);
        }

        map.RootLayerNode = rootLayer.GetPrismNode(null, tileList);

        if (filename == null)
        {
            SaveFileDialog dialog = new SaveFileDialog();
            dialog.Filter = "Prism Map (*.pm)|*.pm";

            if (dialog.ShowDialog() == DialogResult.OK)
            {
                filename = dialog.FileName;
            }
            else
            {
                return;
            }
        }

        PrismFile.SaveMapTo(map, filename);
    }