基础代码

注:本篇主要为编写基础代码,以后的代码都将在此基础上完成


编译器代码准备

打开我们的 Visual Studio 2026 找到我们刚刚创建的C#文件,编写以下基础代码:

using Sandbox.ModAPI.Ingame;
using XFEExtension.SpaceEngineers.ScriptingHelper;

namespace MyProject
{
    internal class Program : MyGridProgram, IProgramBase
    {
        public Program()
        {
        }
    }
}

然后你就会发现,你的编辑器给你报错了

Image

这个时候不要慌,这只是因为我们并没有实现接口1 IProgramBase 里面的抽象方法。现在我们只需要按下 ALt + Enter,就会看到它弹出了一个修复界面

Image

我们按下 Enter 回车确定,就会发现VS 的 IntelliSense2 自动帮我们修复这个问题了

那么你的代码看起来应该是这样的:

using Sandbox.ModAPI.Ingame;
using XFEExtension.SpaceEngineers.ScriptingHelper;

namespace MyProject
{
    internal class Program : MyGridProgram, IProgramBase
    {
        public Program()
        {
        }

        public void Main(string argument, UpdateType updateSource)
        {
            throw new NotImplementedException();
        }

        public void Save()
        {
            throw new NotImplementedException();
        }
    }
}

现在我们删除所有的 throw new NotImplementedException(); 因为他是抛出异常的代码,且 NotImplementedException 不被太空工程师识别

using Sandbox.ModAPI.Ingame;
using XFEExtension.SpaceEngineers.ScriptingHelper;

namespace MyProject
{
    internal class Program : MyGridProgram, IProgramBase
    {
        // 注意,复制到游戏内编程块的时候应当从下面开始复制
        //------------------从此处开始复制------------------//
        public Program()
        {
        }

        public void Main(string argument, UpdateType updateSource)
        {
        }

        public void Save()
        {
        }
        //------------------从此处结束复制------------------//
    }
}

如果你想偷懒的话可以直接复制这段代码到你的编译器里面(虽然可能保不齐会报错?)

这样我们就完成了基础代码的编写,要注意的是后续的介绍以及程序代码基本都是在本篇的基础代码之上编写的


  1. 接口(interface) 是一种只定义“能做什么”,而不包含具体实现的类型规范,它用于规定类必须实现的方法或属性,从而实现统一标准和解耦设计。

  2. IntelliSense 是开发工具(如 Visual Studio)提供的一种智能代码提示功能,它可以在编写代码时自动显示可用的类型、方法、参数说明和文档注释,从而帮助开发者更快、更准确地编写代码并减少语法错误。