开启辅助访问     
收藏本站

站内搜索

搜索

Minecraft(我的世界)苦力怕论坛

[BE教程] 附加包教程第六期——.mcfunction文件与命名空间

 发表于 2022-5-3 14:49:31|显示全部楼层|阅读模式 IP:江苏省
本帖最后由 782 于 2022-5-15 13:37 编辑


第一部分:.mcfunction文件

一、.mcfunction文件的简介
.mcfunction文件存储在行为包中,可以添加不超过10000行的功能。
.mcfunction将一组命令组合成一个函数(定义一组功能,不是数学意义上的),可以在游戏中调用。
.mcfunction的每行命令开头不应该有斜杠(/)。
.mcfunction的注释是一个井号(#),和Python语言的注释很像。
示例:
  1. tag @s add dev
  2. gamemode creative
  3. effect @s night_vision 100000 1 true

  4. # 我是注释
复制代码
函数可以通过命令/function 函数名称(.mcfunction文件名称)在游戏中执行,
这将执行.mcfunction文件中的所有命令。
函数文件可以嵌套,例如:行为包/functions/teleport/home.mcfunction将创建一个名为teleport/home新功能,该函数可以在游戏中调用,如/function teleport/home。
函数文件可以在不使用/reload命令离开游戏的情况下重新加载。

二、tick.json
tick.json是一个JSON文件,位于行为包/functions/tick.json,允许执行函数文件。
每个内含的.mcfunction文件将重复执行,就像放置在重复命令方块中一样。
要注意的是,文件名内不能填写后缀名(.mcfunction)
示例:
  1. {
  2.     "values": ["文件名1", "文件名2",...]
  3. }
复制代码
警告:这个文件会在世界加载完全前执行,可能会导致崩溃!
因为这个文件是每游戏刻执行一次,根据20游戏刻=1秒的规律,可以做出计时器。
示例(每10秒执行对应的.mcfunction文件):
  1. # 初始化(创建记分板)
  2. scoreboard objectives add timer dummy

  3. # 循环部分(每1游戏刻将记分板增加1)
  4. scoreboard players add @a timer 1

  5. # 主程序(当记分板分数等于200,运行对应.mcfunction文件
  6. execute @a[scores={timer=200}] ~~~ function 函数(.mcfunction文件)名称

  7. # 计时器更新(当记分板分数大于200,自动清零)
  8. scoreboard players set @a[scores={timer=200..}] timer 0
复制代码


第二部分:命名空间

一、命名空间简介
命名空间是标记内容的标识符,可以把它们看作是文件夹。
命名空间很有帮助,因为它们可以防止命名发生冲突。
附加包创建中的命名空间本质上可以被认为是“前缀”或“冒号左侧的部分”。
例如,“minecraft”是“minecraft:zombie”的命名空间。
命名空间的一般形式是:命名空间:名称。

二、选择一个命名空间
合适的命名空间应该是独特的。
像“mob”、“car”、“content”或“custom”这样的命名空间将是不好的,因为其他附加包开发人员可能会想出相同的命名空间。
合适的命名空间很短,因为以后将会大量编写命名空间。
因此,命名空间越短越好。比方说,“this_is_a_mob_of_my_first_addon”是一个不好的命名空间。
对于个人项目,推荐使用玩家名称的简称,对于商业项目,推荐使用公司名称。
除非编辑原版文件,否则不要使用minecraft作为命名空间。这不仅是一个不好的主意,而且我的世界保留了这个命名空间,可能行不通。

三、在哪里使用命名空间?
简而言之,应该尽可能多使用命名空间。
首先,在向游戏添加自定义实体时,应该使用命名空间。
例如:sirlich:shark比shark更好。
最好也使用组件和事件的命名空间。就像我的世界使用minecraft:pig_saddled一样,您应该使用“命名空间:组件”。
最好在动画控制器、渲染控制器和动画中使用命名空间。
例如:“controller.animation.命名空间.实体名称.动画”比“controller.animation.动画”更好。
但不要在文件夹结构中使用命名空间。

预告:下一期会带领大家实践——制作第一个附加包,也是“基础概念与初步实践”单元的最后一期。

附加包制作教程系列
上一期  下一期

评分

参与人数 2铁粒 +96收起理由
 礼帽*** + 66高产啊!
 挽*** + 30好快 (我打赏跟不上啊)

查看全部评分

苦力怕论坛,感谢有您~
 发表于 2022-5-3 16:37:46 来自手机|显示全部楼层 IP:贵州省
你这速度,我工具生物方块函数地形都搞完了
2#2022-5-3 16:37:46回复收起回复
苦力怕论坛,感谢有您~
 楼主|  发表于 2022-5-3 17:05:08|显示全部楼层 IP:江苏省
泥黑木大跌 发表于 2022-5-3 16:37
你这速度,我工具生物方块函数地形都搞完了

你这什么意思?
你有我做的细致吗
3#2022-5-3 17:05:08回复收起回复
苦力怕论坛,感谢有您~
 发表于 2022-5-3 17:09:58 来自手机|显示全部楼层 IP:贵州省
782 发表于 2022-5-3 17:05
你这什么意思?
你有我做的细致吗

主要你速度慢,但细致点,但我那个节奏快一点,你需要加快速度
4#2022-5-3 17:09:58回复收起回复
苦力怕论坛,感谢有您~
 楼主|  发表于 2022-5-3 17:11:41|显示全部楼层 IP:江苏省
泥黑木大跌 发表于 2022-5-3 17:09
主要你速度慢,但细致点,但我那个节奏快一点,你需要加快速度

今天连更两期,肝累了
5#2022-5-3 17:11:41回复收起回复
苦力怕论坛,感谢有您~
 发表于 2022-5-3 17:12:57 来自手机|显示全部楼层 IP:贵州省
782 发表于 2022-5-3 17:11
今天连更两期,肝累了

嗯,我的物品制作也拖了很久了,接下来我要发一个投票你看看
6#2022-5-3 17:12:57回复收起回复
苦力怕论坛,感谢有您~
 发表于 2023-2-12 16:23:39 来自手机|显示全部楼层 IP:广西
bvvvgvvvvvvvvvv
7#2023-2-12 16:23:39回复收起回复
苦力怕论坛,感谢有您~
 发表于 2023-2-12 16:24:12 来自手机|显示全部楼层 IP:广西
hrhrhfbfbfbfbfbfbnfbfbfn
8#2023-2-12 16:24:12回复收起回复
苦力怕论坛,感谢有您~
 发表于 2023-3-11 16:05:18 来自手机|显示全部楼层 IP:云南省
可以⊙∀⊙!
9#2023-3-11 16:05:18回复收起回复
苦力怕论坛,感谢有您~

本版积分规则

本站
关于我们
联系我们
坛史纲要
官方
哔哩哔哩
技术博客
下载
网易版
安卓版
JAVA
反馈
意见建议
教程中心
更多
捐助本站
QQ群
QQ群

QQ群

访问手机版

访问手机版

手机版|小黑屋|系统状态|klpbbs.com

粤公网安备 44200002445329号 | 由 木韩网络 提供支持 | GMT+8, 2024-11-22 07:03

声明:本站与Mojang以及微软公司没有从属关系

Powered by Discuz! X3.4 粤ICP备2023071842号-3