写在前面

想要在 MonoGame 用更方便的方法保存游戏的各种数据? XML !

具体步骤

首先假设已经创建好了一个 MonoGame 工程。然后向解决方案中添加一个类库项目用于储存数据结构。类库有许多种,可以根据自己的需要选择不同的类型,这里咱选的是 .NET Stander 。

创建成功后,项目结构应该如下图所示。

你可以对 Class1.cs 重新命名,但是因为这里仅作测试用途所以保留它的默认名字。然后编辑 Class1.cs ,编辑好后项目的结构大概如下所示。

namespace testdata
{
    public class Class1
    {
        public int ttl;
    }
}

然后添加测试用的 XML 文件。创建方法有几种,其中咱比较喜欢的就是直接用 MCBG 管理器生成新的 XML 文件。

接着,通过 VS 打开并编辑刚刚创建的 XML 文件,将

<Asset Type="Object">

中的 Object 改为自己定义的类名。最后, test2.xml 文件内容如下。

<?xml version="1.0" encoding="utf-8"?>
<XnaContent xmlns:ns="Microsoft.Xna.Framework">
  <Asset Type="testdata.Class1">
    <ttl>300</ttl>
  </Asset>
</XnaContent>

接着返回 MGCB 编辑器,点击左边目录树的根目录 Content ,编辑其属性中的引用,添加对 testdata 的引用。

然后重新生成 MGCB ,至此,大功告成!

测试

在 LoadContent 中输入测试代码。

testdata.Class1 aa = Content.Load<testdata.Class1>("test2");
Debug.WriteLine(aa.ttl);

真不错!

发表评论

邮箱地址不会被公开。 必填项已用*标注