需要帮助保存地图

本文关键字:地图 保存 帮助 | 更新日期: 2023-09-27 18:02:39

我需要帮助我的地图编辑器,我被困在保存它。当我保存时,在地图上放一些草之后,地图文件中到处都是草。变量:

mapMaximumX: X中映射的最大值(设置为500)

mapMaximumY: Y中映射的最大值(也设置为500)

mapTiles[index]:这是一个带有类的列表,每个类都有ID(0 =空,1 =草,2 =水),X和Y

        if (Keyboard.GetState().IsKeyDown(Keys.F1))
        {
            for(int y = 0; y < mapMaximumY; y++) 
            {
                for (int x = 0; x < mapMaximumX; x++)
                {
                    if (MapTiles[i3].X == x && MapTiles[i3].Y == y)
                    {
                    }
                    else
                    {
                        MapTiles.Add(new Class1(0, x * 32, y * 32));
                    }
                    if (i3 < MapTiles.Count)
                    {
                        i3++;
                    }
                }
            }
            TextWriter file = new StreamWriter("map1.MAP");
            for (int y = 0; y < mapMaximumY; y++)
            {
                for (int x = 0; x < mapMaximumX; x++)
                {
                    file.Write(MapTiles[i2].ID + ", ");
                }
                file.Write(file.NewLine);
            }
            i2 = 0;
            System.Windows.Forms.MessageBox.Show("Saved!");
            file.Close();
        }

完整代码在这里,如果你需要它:

http://pastebin.com/qrWbuPtb

谢谢。

需要帮助保存地图

file.Write(MapTiles[i2].ID + ", ");

i2在你的循环中永远不会改变,所以不管i2是什么,它总是用来写你的输出的。

您需要使用循环中的X和Y来确定要写入哪个单元格