ctjs

ctjs

正在进行的ChatTriggers模组在Fabric 1.21中的重写版

注意事项

本项目是原模组的分支。如需原始 GitHub 仓库,请访问 https://github.com/ChatTriggers/ctjs

ChatTriggers(CT) 是一个 Minecraft 框架,支持使用 JavaScript 进行实时脚本编写和客户端修改。我们提供库、包装器、对象等,尽可能简化模组开发者的工作。即使我们未提供你所需的功能,你仍可访问任意 Java 类以及原生字段和方法。

使用 CT,您将拥有完整的模组开发环境能力,同时享受易用语言带来的便利,且可以在不重启游戏的情况下重载脚本。CT 还提供了一种自定义 Mixins 的机制!

CT 目前支持 Fabric 1.21.x。旧版的 Forge 1.8.9 版本请参见此仓库。

示例

想要隐藏每次进入世界时都会看到的烦人服务器公告?

register('chat', event => {
    cancel(event);
}).setCriteria("Check out our store at www.some-mc-server.com for 50% off!");

或者将一系列常见命令自动化合成一个?

register('command', () => {
    ChatLib.command('command1');
    ChatLib.command('command2');
    ChatLib.command('command3');
}).setName('commandgroup');

甚至像计算器这样的简单命令也可以实现

register('command', (...args) => {
    // 计算用户输入的所有参数...
    const result = new Function('return ' + args.join(' '))();

    // ...并以漂亮的绿色显示结果
    ChatLib.chat(`&a结果: ${result}`);
}).command('calc');

借助 CT 的注册系统,你可以监听我们发出的自定义事件并对其做出反应。例如,当你在世界间切换、点击 GUI、破坏方块、悬停物品查看提示工具等场景,我们均会发出事件!你甚至可以为其他模块作者提供自定义事件使用。

快速开始

首先,为受支持的版本下载并安装 Fabric,然后访问我们的发布页面下载最新版本。本模组的安装方式与其他模组相同,只需将其拖入您的 mods 文件夹即可。安装完成后,可在游戏中输入 /ct import <模块名> 来导入模块,其中 <模块名> 为模块的名称。您可以在我们的网站浏览可用的模块。

编写模块

如果您在网站上找不到完全符合需求的模块——这很可能发生——那么您就需要自行编写!以下是您需要采取的步骤:

  1. 导航至 .minecraft/config/ChatTriggers/modules 文件夹。如果您不清楚位置,也可以执行 /ct files,将自动打开正确目录。

  2. 创建一个以您模块名命名的新目录。

  3. 在该目录中,创建名为 metadata.json 的文件,并在其中写入以下内容:

    {
        "name": "<模块名>",
        "entry": "index.js"
    }
    

    这意味着当模块首次运行时,CT 将会执行 index.js 文件。

    注意,<模块名> 必须与您的文件夹名称完全一致!

  4. 创建 index.js 文件,并写入一些代码。具体内容取决于您希望 CT 做什么。要了解更多可用 API,请参阅 Slate。

    • Slate 中的部分内容可能已过时,我们正在持续改进

文档