2.6
This commit is contained in:
229
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/1-我的世界原版命令.md
Normal file
229
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/1-我的世界原版命令.md
Normal file
@@ -0,0 +1,229 @@
|
||||
---
|
||||
front: https://mc.163.com/dev/mcmanual/mc-dev/assets/img/01.0461bbf4.png
|
||||
hard: 入门
|
||||
time: 15分钟
|
||||
selection: true
|
||||
---
|
||||
# 我的世界原版命令
|
||||
|
||||
## 认识命令
|
||||
|
||||
<iframe src="https://cc.163.com/act/m/daily/iframeplayer/?id=62ce430de6c041f257897fc2" width="800" height="600" allow="fullscreen"/>
|
||||
|
||||
|
||||
|
||||
命令是指在我的世界原版游戏中自带的控制台命令,这些命令可以在游戏的聊天窗口中、命令方块中被执行。
|
||||
|
||||
各种命令相互搭配,也可以实现一些类似模组的玩法。
|
||||
|
||||
### 命令功能展示
|
||||
|
||||
发送一个游戏内标题
|
||||
|
||||

|
||||
|
||||
修改游戏时间
|
||||
|
||||

|
||||
|
||||
击杀所有僵尸
|
||||
|
||||

|
||||
|
||||
召唤一道闪电
|
||||
|
||||

|
||||
|
||||
如此功能繁多的命令,可以和模组SDK进行互补。也可以不借助模组SDK来完成很多游戏玩法。
|
||||
|
||||
所以学习我的世界原版命令,也是玩法开发中一项非常重要的内容。
|
||||
|
||||
## 命令执行方法
|
||||
|
||||
### 聊天框
|
||||
|
||||
我们随意进入一个游戏存档之后,可以按下回车进入聊天框。
|
||||
|
||||
随后在聊天框内输入/开头的任意字符,即使用控制台指令。
|
||||
|
||||
例如我们需要设置游戏时间为白天,可以输入```/time set 0```并回车,来修改游戏时间
|
||||
|
||||

|
||||
|
||||
同时可以看到命令的参数提示,要求/time set 的最后一个数字是数量,类型为int。
|
||||
|
||||
### 命令方块
|
||||
|
||||
命令也可以在命令方块中执行。命令方块默认不出现在创造物品栏中,需要使用命令来获取。
|
||||
|
||||
使用同样的方法打开聊天框,在聊天框内输入```/give @s command_block```即可获取命令方块。
|
||||
|
||||
然后将它放在地上,即可进行设置。
|
||||
|
||||
在左侧默认设置不改变的情况下,我们输入命令```tp @p ~ ~20 ~```,然后使用红石信号激活这个命令方块。
|
||||
|
||||

|
||||
|
||||
命令方块就会执行这个命令,并把我们的y高度提高20格。
|
||||
|
||||

|
||||
|
||||
## 命令参数
|
||||
|
||||
命令会根据命令参数来修改执行的结果。
|
||||
|
||||
就比如```/give @s command_block```这个命令,@s 和 command_block 都是这个命令的参数。
|
||||
|
||||
参数通常使用空格进行分隔。
|
||||
|
||||
在聊天框内输入/give 即可查看该命令的帮助
|
||||
|
||||

|
||||
|
||||
在这里,<>括号所表示的内容为必填参数,[]括号所表示的内容为可选参数。
|
||||
|
||||
括号内分别是参数的含义和类型。
|
||||
|
||||
比如```player: target```即玩家参数,参数类型是一个目标,即目标选择器。
|
||||
|
||||
所以我们的命令```/give @s command_block```的含义就是给@s这个目标一个command_block。
|
||||
|
||||
@s为目标选择器的命令执行者,选择器会在下面介绍。
|
||||
|
||||
## 目标选择器
|
||||
|
||||
在很多命令中,都有一个类型为target的参数。比如刚刚的/give命令。
|
||||
|
||||
大多数以实体或玩家作为参数的命令,可以通过某些限定条件来选择一个或多个实体或玩家,而不必指定实体名、玩家名或UUID。要用条件来选择实体或玩家,应先输入一个**目标选择器变量**,如有需要,还可再使用一个或多个**目标选择器参数**以制定具体的条件(可选)。
|
||||
|
||||
### 目标选择器汇总表
|
||||
|
||||
| 变量 | 功能 |
|
||||
| ---- | -------------- |
|
||||
| `@p` | 距离最近的玩家 |
|
||||
| `@r` | 随机玩家 |
|
||||
| `@a` | 所有玩家 |
|
||||
| `@e` | 所有实体 |
|
||||
| `@s` | 命令的执行者 |
|
||||
|
||||
使用这些选择器,就可以限制这个命令将会对谁执行。
|
||||
|
||||
同时还可以使用目标选择器搭配目标选择器参数,来筛选实体。
|
||||
|
||||
例如需要筛选出所有僵尸,则目标选择器为`@e[type=zombie]`,如果需要筛选出2个僵尸,则为`@e[type=zombie,c=2]`
|
||||
|
||||
这里的`type=`筛选实体类型,`c=`限制了选择的数量。
|
||||
|
||||
## 坐标
|
||||
|
||||
坐标在数字上反映了实体在世界中的位置。
|
||||
|
||||
坐标基于一个由互相垂直且交于一点(即原点)的三条坐标轴形成的网格,即一个空间直角坐标系。
|
||||
|
||||
- X轴的正方向为东,其坐标反映了玩家距离原点在东(+)西(-)方向上的距离。
|
||||
- Z轴的正方向为南,其坐标反映了玩家距离原点在南(+)北(-)方向上的距离。
|
||||
- Y轴的正方向为上,其坐标反映了玩家位置的高低程度。
|
||||
- 坐标系的单位长度为一个方块长,每一方块为1立方米。
|
||||
|
||||
因此,三条坐标轴形成了右手坐标系(拇指为X轴,食指为Y轴,中指为Z轴),通过这样可以更为简单地记住各坐标轴。
|
||||
|
||||

|
||||
|
||||
### 绝对坐标
|
||||
|
||||
在游戏中,可以通过游戏设置打开显示坐标,来查看自己的位置。这里显示的坐标就是绝对坐标。
|
||||
|
||||

|
||||
|
||||
### 相对坐标和局部坐标
|
||||
|
||||
在命令中,你不仅可以使用绝对坐标(即具体的坐标值),还可以使用相对坐标和局部坐标来表示位置。
|
||||
|
||||
#### 相对坐标
|
||||
|
||||
相对坐标使用`~`来表示,例如刚刚输入命令方块的`/tp @p ~ ~10 ~`就是一个使用相对坐标来表示的位置。
|
||||
|
||||
首先我们来看一下tp的命令参数定义。
|
||||
|
||||

|
||||
|
||||
这里我们的命令对应的是红框所划出的参数。
|
||||
|
||||
相对坐标的波浪号后面可以跟一个数字,代表坐标的偏移量。例如`~ ~10 ~`就代表目标当前位置的y坐标+10。同样`~`就是`~0`的简写。
|
||||
|
||||
#### 局部坐标
|
||||
|
||||
局部坐标使用`^`来表示,如果输入命令`/tp @p ^ ^ ^3`就会使玩家向前移动3格。
|
||||
|
||||
这里的局部坐标表示和相对坐标类似,和相对坐标不同的是,局部坐标的坐标原点是以玩家的坐标为中心,以玩家面朝方向为z轴正方向。
|
||||
|
||||
即无论玩家视角面朝什么方向,使用`/tp @p ^ ^ ^3`都会使玩家朝他面朝的方向进行移动。
|
||||
|
||||
> **绝对坐标**可以和**相对坐标**或**局部坐标**混合使用,而**相对坐标**和**局部坐标**不能混合使用。
|
||||
|
||||
## 原始文本
|
||||
|
||||
原始文本是一串由Json构成的文本。
|
||||
|
||||
可以在`/tellraw`,`/titleraw`命令中使用。
|
||||
|
||||
原始文本的Json的基本结构如下:
|
||||
|
||||
```json
|
||||
{
|
||||
"rawtext": [ # 包含所有文本对象的列表
|
||||
{
|
||||
"text": "", # 文本原始内容,和translate不能共存
|
||||
"translate": "", # 使用玩家所选择的语言显示的翻译识别符,即zh_CN.lang语言文件中的key
|
||||
"selector": "", # 在文本中直接将"@a","@s"等选择器会被转换
|
||||
"with": [] # 包含translate中的聊天字符串参数的列表
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
我们分别执行下面命令
|
||||
|
||||
```
|
||||
/tellraw @a { "rawtext": [ { "translate" : "commands.op.success", "with": [ "开发者" ] } ] }
|
||||
/tellraw @a { "rawtext": [ { "translate" : "commands.op.success", "with": { "rawtext": [ { "translate" : "item.apple.name" } ] } } ] }
|
||||
```
|
||||
|
||||
可以查看命令的效果。
|
||||
|
||||

|
||||
|
||||
这里就是将`command.op.success`对应的"已将 %%s 设置为管理员"语言文本设置,使用with中的参数,进行了替换。
|
||||
|
||||
同样我们可以自己编写一个消息,例如
|
||||
|
||||
```
|
||||
/tellraw @a { "rawtext": [ { "translate" : "你好 %%s , %%s", "with": { "rawtext" : [ { "translate" : "%%s", "with" : { "rawtext" : [ { "selector" : "@s" } ] } }, { "translate" : "item.apple.name" } ] } } ] }
|
||||
```
|
||||
|
||||
可以看到执行效果。
|
||||
|
||||

|
||||
|
||||
但是这样的提示文本颜色非常单一,我们可以使用格式化代码来对其添加颜色和格式。
|
||||
|
||||
格式化代码由一个小节号(§)和一个数字构成。
|
||||
|
||||
例如§a,代表从这里开始的文本都变成绿色。我们加上格式化代码后再次尝试命令
|
||||
|
||||
```
|
||||
/tellraw @a { "rawtext": [ { "translate" : "§a你好 %%s , %%s", "with": { "rawtext" : [ { "translate" : "%%s", "with" : { "rawtext" : [ { "selector" : "@s" } ] } }, { "translate" : "item.apple.name" } ] } } ] }
|
||||
```
|
||||
|
||||

|
||||
|
||||
可以看到文字已经变成了绿色。
|
||||
|
||||
所有可用的颜色和格式对应图如下。
|
||||
|
||||
<img src="./images/13.gif" style="zoom: 150%;" />
|
||||
|
||||
> **如何快速使用键盘打出小节符**
|
||||
>
|
||||
> 按住键盘的`Alt`键不松,依次在小键盘按下`1`、`6`、`7`,按完后松开`Alt`,即可打出小节号
|
||||
|
||||
131
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/2-常用命令.md
Normal file
131
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/2-常用命令.md
Normal file
@@ -0,0 +1,131 @@
|
||||
---
|
||||
front:
|
||||
hard: 入门
|
||||
time: 10分钟
|
||||
---
|
||||
# 常用命令
|
||||
|
||||
在上一节学习了命令的基本使用方法之后,我们就可以开始来学习一些常用的命令啦!
|
||||
|
||||
## /title
|
||||
|
||||
发送一个游戏内标题
|
||||
|
||||

|
||||
|
||||
上图效果是使用命令`/title @s title §6欢迎来到我的世界`来实现的。
|
||||
|
||||
使用帮助
|
||||
|
||||
`title <*玩家:目标*> clear`(移除屏幕标题)
|
||||
|
||||
`title <*玩家:目标*> reset`(将各选项复位至默认值)
|
||||
|
||||
`title <*玩家:目标*> title <*标题文字:字符串*>`(将文字显示为主标题)
|
||||
|
||||
`title <*玩家:目标*> subtitle <*标题文字:字符串*>`(将文字显示为副标题)
|
||||
|
||||
`title <*玩家:目标*> actionbar <*标题文字:字符串*>`(在快捷栏上方显示的标题)
|
||||
|
||||
`title <*玩家:目标*> times <*渐入:整数*> <*保持:整数*> <*渐出:整数*>`(设置渐入、保持和渐出的持续时间)
|
||||
|
||||
## /kill
|
||||
|
||||
杀死/清除实体
|
||||
|
||||

|
||||
|
||||
上图效果是使用命令`/kill @e[type=zombie]`来实现的。
|
||||
|
||||
使用帮助
|
||||
|
||||
`kill [target: target]`
|
||||
|
||||
## /ride
|
||||
|
||||
用于使实体骑乘其他实体、停止实体的骑乘/使坐骑逐出自己的骑手、召唤坐骑/骑手。
|
||||
|
||||
使用方法
|
||||
|
||||
```
|
||||
ride <骑手:目标> start_riding <坐骑(单个):目标> [传送规则:传送规则] [骑乘方式:骑乘方式]
|
||||
```
|
||||
|
||||
让指定的骑手骑乘指定的坐骑。
|
||||
|
||||
```
|
||||
ride <骑手:目标> stop_riding
|
||||
```
|
||||
|
||||
让指定的骑手停止骑乘。
|
||||
|
||||
```
|
||||
ride <坐骑:目标> evict_riders
|
||||
```
|
||||
|
||||
让指定的坐骑逐出它的骑手。
|
||||
|
||||
```
|
||||
ride <坐骑:目标> summon_rider <实体类型:实体类型> [生成事件:字符串] [命名标签:字符串]
|
||||
```
|
||||
|
||||
在每个没有被骑乘也没有骑乘别的实体的坐骑的位置召唤一个实体,然后让它们骑乘到坐骑上。
|
||||
|
||||
```
|
||||
ride <骑手:目标> summon_ride <实体类型:实体类型> [骑乘规则:骑乘规则] [生成事件:字符串] [命名标签:字符串]
|
||||
```
|
||||
|
||||
在每个骑手的位置召唤一个实体,然后让骑手骑乘它们。
|
||||
|
||||
## /tp
|
||||
|
||||
将实体传送到指定位置
|
||||
|
||||
具体使用方法已经在[上一节](./1-我的世界原版命令.html#相对坐标)介绍过
|
||||
|
||||
## /summon
|
||||
|
||||
召唤一个实体
|
||||
|
||||

|
||||
|
||||
上图效果是使用命令`/summon lightning_bolt ~ ~ ~`来实现的。
|
||||
|
||||
使用方法
|
||||
|
||||
```
|
||||
summon <entityType: EntityType> [spawnPos: x y z] [spawnEvent: string] [nameTag: string]
|
||||
```
|
||||
|
||||
```
|
||||
summon <entityType: EntityType> <nameTag: string> [spawnPos: x y z]
|
||||
```
|
||||
|
||||
## /execute
|
||||
|
||||
`/execute`可以在改变执行者、执行位置和角度,添加限制条件,并储存其输出值的情况下执行另一条命令。
|
||||
|
||||
使用方法
|
||||
|
||||
```
|
||||
execute <origin: target> <position: x y z> <command: command>
|
||||
```
|
||||
|
||||
可以限制在指定方块被检测到时才执行命令:
|
||||
|
||||
```
|
||||
execute <origin: target> <position: x y z> detect <detectPos: x y z> <block: Block> <data: int> <command: command>
|
||||
```
|
||||
|
||||
例如我们需要检测1只苦力怕,并在其位置生成闪电,就可以使用如下命令。
|
||||
|
||||
`/execute @e[type=creeper,c=1] ~ ~ ~ summon lightning_bolt ~ ~ ~`
|
||||
|
||||

|
||||
|
||||
可以看到苦力怕的位置召唤了一道闪电将其劈成了闪电苦力怕。
|
||||
|
||||
## 更多命令
|
||||
|
||||
如果想要了解更多命令,可以访问[维基百科](https://zh.minecraft.wiki/w/%E5%91%BD%E4%BB%A4)。
|
||||
|
||||
43
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/3-课后作业.md
Normal file
43
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/3-课后作业.md
Normal file
@@ -0,0 +1,43 @@
|
||||
---
|
||||
front:
|
||||
hard: 入门
|
||||
time: 5分钟
|
||||
---
|
||||
# 课后作业
|
||||
|
||||
## 要求
|
||||
|
||||
- 使用/ride命令实现一个实体叠叠乐。
|
||||
|
||||
- 使用/execute命令在所有玩家位置处召唤一个苦力怕
|
||||
|
||||
## 操作步骤
|
||||
|
||||
### /ride
|
||||
|
||||
召唤一只僵尸,多次输入指令
|
||||
|
||||
```
|
||||
/ride @e[type=zombie,c=1] summon_ride zombie
|
||||
```
|
||||
|
||||
输入的越多,叠叠乐叠的越高。
|
||||
|
||||

|
||||
|
||||
### /execute
|
||||
|
||||
执行命令
|
||||
|
||||
```
|
||||
/execute @a ~ ~ ~ summon creeper ~ ~ ~
|
||||
```
|
||||
|
||||
命令解释:
|
||||
|
||||
@a 代表所有玩家
|
||||
|
||||
~ ~ ~ 代表玩家当前的位置
|
||||
|
||||
summon creeper ~ ~ ~ 代表筛选出的玩家执行这个命令
|
||||
|
||||
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/01.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/01.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/02.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/02.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/03.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/03.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/04.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/04.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/05.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/05.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/06.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/06.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/07.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/07.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/08.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/08.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/09.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/09.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/10.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/10.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/11.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/11.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/12.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/12.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/13.gif
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/13.gif
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/14.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/14.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/15.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/15.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/16.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/16.png
LFS
Normal file
Binary file not shown.
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/17.png
LFS
Normal file
BIN
docs/mconline/60-我的世界创造营教程/玩法组件基础教程/3-了解我的世界原版命令/images/17.png
LFS
Normal file
Binary file not shown.
Reference in New Issue
Block a user