Skip to content
This repository has been archived by the owner on Oct 20, 2024. It is now read-only.

Commit

Permalink
Update zh-cn (#22)
Browse files Browse the repository at this point in the history
* Update Commands.md

* context, not situation 1

* context, not situation 2

* Update Commands.md

* context, not situation 4
  • Loading branch information
Rad586 authored Jun 3, 2024
1 parent 5dd1d45 commit 89c98cf
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 11 deletions.
2 changes: 1 addition & 1 deletion docs/zh-cn/BrigadierCommands.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

## `cmd:arithmetica`

这个命令可以让你在聊天栏中运行表达式。情境`minecraft:level`(存档),`minecraft:origin`(维度)和可选的 `minecraft:this_entity`(实体)。这个命令需要一个字符串类型的表达式,以及可选的数据类型转换。
这个命令可以让你在聊天栏中运行表达式。上下文`minecraft:level`(存档),`minecraft:origin`(维度)和可选的 `minecraft:this_entity`(实体)。这个命令需要一个字符串类型的表达式,以及可选的数据类型转换。

```
cmd:arithmetica ->
Expand Down
21 changes: 18 additions & 3 deletions docs/zh-cn/Commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,32 @@

命令相当于 JSON 文件中的对象。事件被触发时,`type` 字段将决定哪些命令被执行。

`condition` 字段可以应用于所有类型的命令,它能够在当下事件的情境中执行。这一字段使用了原版的条件系统,这个工具 [misode.github.io](https://misode.github.io/predicate/) 可以帮你快速创建条件。
`condition` 字段可以应用于所有类型的命令,它能够在当下事件的上下文中执行。这一字段使用了原版的条件系统,这个工具 [misode.github.io](https://misode.github.io/predicate/) 可以帮你快速创建条件。

部分种类的命令有额外形式参数。

尽管本模组尽量避免在事件外使用命令,其他的项目还是可能把命令整合到其他情境中。这就不在支持范围内了。
你还可以在成就的奖励中使用本模组的命令:

```json
{
"rewards": {
"commander:commands": [
{
"type": "commander:print",
"text": "42"
}
]
}
}
```

其他模组也能将命令集成到其他的上下文中!

[[toc]]

## 选择器

一些命令需要你指定“选择器”。选择器用于选择执行者,它可以是一个位置,也可以(可选)是一个实体。一些例外除外,选择器模仿了原版的战利品情境。你可以在[内置选择器](https://github.com/constellation-mc/commander/blob/main/src/main/java/me/melontini/commander/impl/builtin/BuiltInSelectors.java)页面,了解所有的内置选择器:。
一些命令需要你指定“选择器”。选择器用于选择执行者,它可以是一个位置,也可以(可选)是一个实体。一些例外除外,选择器模仿了原版战利品的上下文。你可以在[内置选择器](https://github.com/constellation-mc/commander/blob/main/src/main/java/me/melontini/commander/impl/builtin/BuiltInSelectors.java)页面,了解所有的内置选择器:。

## 内置命令
本模组内置了少量命令,因为游戏内交互应该交给 `/` 样式的命令,或者函数。
Expand Down
6 changes: 3 additions & 3 deletions docs/zh-cn/Expressions.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,15 +49,15 @@

:::

## 读取情境数据
## 读取上下文数据

因为算术以游戏的战利品功能为情境,你可以通过一种叫"提取"的特殊句法来读取源数据。
因为算术的上下文为原版的战利品系统,你可以通过一种叫"提取"的特殊句法来读取源数据。
```
标识符.字段
标识符.方法
标识符.方法.字段.方法
```
注意,你的用到的字段与情境**必须**存在,不然表达式是无效的。
注意,你的用到的字段与上下文**必须**存在,不然表达式是无效的。

示例:
```
Expand Down
4 changes: 2 additions & 2 deletions docs/zh-cn/develop/Commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,9 @@ public CommandType type() {
}
```

## 事件情境
## 事件的上下文

你可以通过事件情境,检索与事件类型一起传递的 `LootContext`。
你可以通过事件的上下文,检索与事件类型一起传递的 `LootContext`。

```java
context.lootContext().getWorld(); //返回服务端世界
Expand Down
4 changes: 2 additions & 2 deletions docs/zh-cn/develop/Events.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ EventType.builder()

如果你没有指定扩展,或选择返回 `List<Command.Conditioned>`,你可以使用附带的 `EventExecutors` 辅助单元。

为了使用这一辅助单元,你需要传递:事件类型、执行的世界,以及战利品情境提供者
为了使用这一辅助单元,你需要传递:事件类型、执行的世界,以及战利品的上下文提供者

```java
CustomEvent.EVENT.register((world, entity) -> runVoid(CUSTOM_EVENT, world, () -> makeContext(world, entity, entity.getPos())));
Expand All @@ -57,7 +57,7 @@ private static LootContext makeContext(ServerWorld world, Entity entity, Vec3d o

```java
EventContext context = EventContext.builder(type)
.addParameter(EventKey.LOOT_CONTEXT, /*战利品情境的实例*/)
.addParameter(EventKey.LOOT_CONTEXT, /*战利品的上下文的实例*/)
.build();
for (Command.Conditioned subscriber : subscribers) subscriber.execute(context);
```
Expand Down

0 comments on commit 89c98cf

Please sign in to comment.