用C#编写脚本

这个文档页面仍是正在建设中的工作,因此本指南尚未完成!

Setting up our environment

在创建第一个C#资源之前,您需要安装Visual Studio 2017 (社区/免费版本可以正常工作)。

Creating your project

  1. 打开Visual Studio,然后单击文件>新建>项目。 应该弹出一个窗口,看起来像下面的窗口: screenshot-1
  2. 确保在左侧面板中选择 Visual C# ,然后选择“类库(.NET Framework)”。
    选择正确的项目类型非常重要,否则您的资源将“无法运行”。
  3. 选择项目类型后,请确保将Framework版本设置为**.NET Framework 4.5.2**(在窗口底部的某个位置,请参见上面屏幕快照中突出显示的区域)。 是的,这不是最新版本,但是此特定版本是您的资源正常工作所必需的。
  4. 一旦选择了所有这些内容并指定了正确的框架版本,就可以为该项目输入名称了。
  • 如果这将是一个客户端脚本,则将其命名为MyResourceNameClient
  • 如果它将是服务器脚本,则将其命名为MyResourceNameServer
  • 如果它将同时用作服务器和客户端的脚本,我们现在将其视为客户端脚本,因为稍后将为该资源创建Server项目。

  1. 选择适当的名称后,单击“浏览…”以选择要保存该项目的文件夹,或者如果要将其保存在默认位置,请单击“确定”。 ###附加项目 如果仅创建服务器或客户端项目,则可以跳过这些步骤,但是如果同时需要客户端和服务器项目,则可以继续阅读。
  2. 因此,您刚刚创建了一个客户端项目,但是您还需要一个服务器端项目。 要将其添加到解决方案中,请在屏幕右侧的解决方案资源管理器中右键单击"解决方案'<解决方案名称>’(1个项目)”项,然后单击“添加>新建项目”。 所有设置应与用于客户端项目的设置相同。 这次,将名称更改为"MyResourceNameServer”,然后单击“确定”。
  3. 现在,您的“解决方案’MyResourceName’“解决方案中应该有2个项目(同样,您可以在右侧的解决方案资源管理器中查看此项目)。

Configuring some project settings

为了能够构建这些项目并为FXServer做准备,我们需要在项目设置中更改一些设置(如果您在客户端/服务器上使用多个项目,则在两个项目中都更改这些设置)。

  1. 在右侧的解决方案资源管理器中,右键单击您的项目(不是解决方案),然后选择“属性”。
  2. 然后转到左侧的“应用程序”选项卡,然后在“程序集名称”的末尾添加.net。 现在按CTRL + S保存此更改。 screenshot-2 这是非常重要的一步,如果您不在程序集名称的末尾添加.net,则您的资源将NOT(因为在.NET.dll中不会以.net.dll为后缀) 输出-重命名即可,但您可能不想这样做)。

Setting up the required dependencies

完成所有设置后,就该获取我们对资源的依赖关系了。
根据您要创建的资源的类型,我们要么需要服务器CitizenFX.Core.dll依赖关系(用于需要在服务器端运行的资源),要么需要客户端CitizenFX.Core.dll依赖关系(对于那些需要在服务器端运行的资源)。 需要在客户端上运行)。 如果您希望能够同时在服务器和客户端上运行脚本,则需要获取所有这些依赖关系,并且我们将在资源解决方案中创建两个单独的项目。

Client dependency

获取客户端依赖性非常容易。 只需转到您的FiveM的本地安装文件夹,然后遵循以下路径并复制CitizenFX.Core.dll文件。 然后转到保存Visual Studio项目的文件夹,然后将DLL文件粘贴到该文件夹中。

FiveM Application Data\citizen\clr2\lib\mono\4.5\CitizenFX.Core.dll

现在,返回Visual Studio,并在右侧的解决方案资源管理器中转到您的项目。 右键单击您的(客户端)项目,然后单击“添加>参考”。 应出现以下窗口:screenshot-3 在该窗口中,单击“浏览…”,然后转到您的项目文件夹。 找到CitizenFX.Core.dll文件,将其选中,然后按“添加”。 现在,您应该看到该DLL已添加到“浏览>最近”列表中。 确保选中引用**前面的复选框,然后单击右下角的“确定”。

C恭喜,您现在已将客户端依赖项添加到您的项目中。 在实际开始编码之前,仅需再执行一步。 如果您有服务器端项目,也请执行下一步。 否则,请跳过下一步并继续执行“让我们编写一些代码”部分。

Server dependency

服务器项目的依赖关系与客户端非常相似。 一个主要更改是您从中获取依赖项的位置。 您实际上需要从服务器文件中获取它,而不是从客户端文件中获取它。

转到服务器文件中的以下文件夹:

citizen\clr2\lib\mono\4.5\

进入该目录后,复制CitizenFX.Core.dll文件并将其粘贴到C#服务器项目文件夹中。

现在,返回Visual Studio,并在右侧的解决方案资源管理器中转到您的项目。 右键单击您的(服务器)项目,然后单击“添加>参考”。 出现与上一节相同的窗口。

在该窗口中,单击“浏览…”,然后转到服务器项目文件夹。 找到CitizenFX.Core.dll文件,将其选中,然后按“添加”。 现在,您应该看到该DLL已添加到“浏览>最近”列表中。 确保选中引用**前面的复选框,然后单击右下角的“确定”。

恭喜,您现在已将服务器依赖项添加到项目中。

Let’s write some code

It’s finally time to actually start writing some code! 🎉

上次修改 2020-03-15: 1911.3.15 (a4b5a3b)