npm 包 @open-screeps/is-my-room 使用教程

阅读时长 4 分钟读完

简介

@open-screeps/is-my-room 是一个用于 Screeps 游戏的开源项目,可以辅助你识别当前你的物理位置是否在 Screeps 中的房间内。

如果你正在开发 Screeps 相关的项目,那么 @open-screeps/is-my-room 可以让你更方便的管理房间,并且减少因为错误的房间管理带来的问题。

本文将详细介绍 @open-screeps/is-my-room 的使用方法,包括安装、配置以及使用示例。

安装

通过 npm 安装即可:

使用前请先阅读项目的文档并确保你填写了 Screeps 账户相关的配置。

配置

@open-screeps/is-my-room 需要使用 config 配置管理 Screeps 账户以及配置文件,配置文件可以在应用打包部署前配置。

  • location: 表示你所在的位置,使用 RoomPosition 对象进行配置。
  • options: 表示房间相关的配置,包括 roomNamesradius 两个参数。

其中:

  • roomNames: 你需要创建的房间名称列表,如果你需要在 W1N1W2N2 两个房间内启用该工具,将该参数配置为 ["W1N1", "W2N2"] 即可。

  • radius: 当前位置到房间边缘的距离,当你的物理位置距离房间边缘小于等于该参数时,你被视为在房间内。

使用

通过简单的调用即可完成验证:

上述代码中,如果当前位置在 Screeps 中的某个房间内,那么将打印出当前所在的房间名称,反之将打印出当前在房间外。

如果你需要获取你当前所在的房间,请使用 Game.rooms[Game.screeps.myRoomName] 获取。

示例

接下来,我们将通过实例来演示 @open-screeps/is-my-room 的使用方法。

-- -------------------- ---- -------
----- -------- - ------------------------------------

----- -------- - --- ---------------- --- ----------

----- --------- - ---------- --------- ----------
----- ------ - --

------------------------ - ---------
--------------------------------- - ----------
------------------------------ - -------

-- ------------ -
  -------------- -- -- -----------------------------------------
- ---- -
  -------------- -- ------- -- --- --------
-

上述代码中,我们设置了当前的位置为 (39, 24) 即在 W12N92 中,然后将接下来的搜索半径设置为 1,表示如果我们距离房间边缘不超过 1 的话,我们就视为在房间内。

然后我们将需要搜索的房间列表设置为 ["W12N92", "W11N92", "W11N91"],表示只有在这三个房间中,我们才会被视为在房间内。

最后通过调用 isMyRoom() 就可以判断我们当前是不是在房间内了。

总结

本文介绍了 @open-screeps/is-my-room 的使用方法,其中包括了安装、配置以及使用示例。即便对于没有使用习惯的人也是非常好上手的,希望能够帮助你更好的管理 Screeps 中的房间。

如果你在使用该工具的过程中遇到了任何问题,可以通过项目的 GitHub 页面发起任何问题报告,开发者会给予尽快的回复。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005726c81e8991b448e8a18

纠错
反馈