我的世界函数系统与进度系统联动 函数系统的基础使用攻略

  发布时间:2025-04-10 06:13:11   作者:玩站小弟   我要评论
我的世界函数系统与进度系统的联动怎么样呢?下面99小编就给大家带来我的世界函数系统于进度系统的联动,函数系统的基础使用攻略。函数系统与进度系统的联动advancement,亦简称adv,目前wiki翻 。

  我的世度系动函世界函数系统与进度系统的联动怎么样呢?下面99小编就给大家带来我的世界函数系统于进度系统的联动,函数系统的界函基础基础使用攻略。

我的数系数系使用<strong></strong>世界函数系统与进度系统联动 函数系统的基础使用攻略

  函数系统与进度系统的联动

  advancement,亦简称adv,统进统联统目前wiki翻译叫进度。攻略这里就不多作介绍了。世度系动函在17w17b中MOJANG允许进度返回指令作为达成进度的界函基础奖励,让不少玩家发现了新大陆。数系数系使用随后在17w18b中,统进统联统MOJANG进一步完善进度系统,攻略使其可以完全独立于命令方块而建立起一个命令系统;在1.12 pre1中,世度系动函MOJANG又作出了修改,界函基础将进度系统中的数系数系使用命令部分拿出来做成了如今的函数系统。

  但是统进统联统这并不意味着进度系统就不可以参与到命令系统中来,因为如今的攻略进度系统可以返回函数作为达成进度的奖励。

  相信很多人已经知道进度系统的结构了,但仍有相当一部分朋友还没有了解,在这里我们不妨来温习一下。

  自定义的进度,所有文件都保存在存档目录/data/advancements/下,在这里新建的文件夹同样都称为命名空间,命名空间下存放各种进度文件。进度文件使用 json 格式。这里展示一个用于进度命令系统的例子

  所涉及的两个文件分别是data/advancements/system/HelloTitle.json和data/functions/system/HelloTitle.mcfunction,这里进度和函数都用同样的命名空间和文件名方便记忆和管理,可以看到函数文件是 .mcfunction,而进度文件是 .json

  system:HelloTitle.json

  {

  "criteria":{

  "custom_name":{

  "trigger":"minecraft:tick"

  }

  },

  "rewards":{

  "function":"system:hellotitle"

  }

  }

  system:HelloTitle.mcfunction

  #revoke adv,用于下次再激活

  advancement revoke @s only system:hellotitle

  #命令部分

  scoreboard objectives add helloTitle stat.leaveGame

  scoreboard players tag @s[tag=HelloTitle,score_helloTitle_min=1] remove HelloTitle

  tellraw @s[tag=!HelloTitle] ["",{ "text":"Hello ","color":"yellow"},{ "selector":"@s"},{ "text":"! Welcome to Minecraft!","color":"yellow"}]

  scoreboard players tag @s[tag=!HelloTitle] add HelloTitle

  scoreboard players reset @s[score_helloTitle_min=1] helloTitle

  这个进度会在下一个游戏刻达成,对象是全体在线玩家,达成进度后会执行HelloTitle.mcfunction中的指令。其实现的效果是,当玩家进入这个世界时,会在聊天框看见问候语(其他人看不到)。

  可以看到,相比于以前命令方块高频,这里采用了进度系统的 tick 触发器和@s选择器。如果单纯用命令方块高频或者函数系统,那么只需要这样

  scoreboard objectives add helloTitle stat.leaveGame

  scoreboard players tag @a[tag=HelloTitle,score_helloTitle_min=1] remove HelloTitle

  execute @a[tag=!HelloTitle] ~ ~ ~ tellraw @s ["",{ "text":"Hello ","color":"yellow"},{ "selector":"@s"},{ "text":"! Welcome to Minecraft!","color":"yellow"}]

  scoreboard players tag @a[tag=!HelloTitle] add HelloTitle

  scoreboard players reset @a[score_helloTitle_min=1] helloTitle

  区别就是选择器上的不一样。如果大家觉得进度系统很麻烦,可以不去使用,但是接下来我们会看到一个使用进度系统的其他触发器来调用函数的例子。例如,要让所有冒险模式玩家入水即死。

  rules:DieInWater.json

  {

  "criteria":{

  "1":{

  "trigger":"enter_block",

  "condition":{

  "block":"water"

  }

  }

  },

  "rewards":{

  "function":"rules:dieinwater"

  }

  }

  rules:DieInWater.mcfunction

  #revoke

  advancement revoke @s only rules:dieinwater

  #commands

  scoreboard players tag @p[m=2,r=0] add waterKill

  execute @s[tag=waterKill] ~ ~ ~ tellraw @a [{ "selector":"@s"},{ "color":"white","text":" 被水淹没了"}]

  execute @s[tag=waterKill] ~ ~ ~ gamerule showDeathMessages false

  kill @s[tag=waterKill]

  execute @s[tag=waterKill] ~ ~ ~ gamerule showDeathMessages true

  scoreboard players tag @s[tag=waterKill] remove waterKill

  当玩家踏入水中时,我们要给玩家加上一个tag,然后杀掉他。至于为什么用@p而不用@s呢?因为@p不能选中死人,而@s可以,如果不想看到聊天框刷屏,就不要选择用@s。

  以上是利用进度系统的 enter_block(玩家进入方块) 这一触发器来实现落水即死功能的,如果单纯依靠函数,不依靠进度系统去实现的话,可以这样写

  rules:DieInWater_FUNCONLY.mcfunction

  execute @a[m=2] ~ ~ ~ detect ~ ~ ~ water -1 scoreboard players tag @p[r=0] add waterKill

  execute @a[tag=waterKill] ~ ~ ~ tellraw @a [{ "selector":"@s"},{ "color":"white","text":" 被水淹没了"}]

  execute @a[tag=waterKill] ~ ~ ~ gamerule showDeathMessages false

  kill @a[tag=waterKill]

  execute @a[tag=waterKill] ~ ~ ~ gamerule showDeathMessages true

  scoreboard players tag @a[tag=waterKill] remove waterKill

  然后将这个函数扔进主进程中高频执行即可。

  我们讲完了函数系统与进度系统的联动部分。道理而言已经讲完了函数系统的基础使用,那么在最后,我们来聊聊函数系统与命令方块系统的对比吧,看看它们各自的优缺点。

  • Tag:

相关文章

  • LAVER莱薇尔身段美白泥的美白成果临床下场陈说

    LAVER莱薇尔身段美白泥的美白成果临床下场陈说本文导读:关键词:美白泥;身段美白;人体试验;美白成果测评1 引言常言道“一白遮三丑”,亚洲女性对于美白的谋求就像人类对于黝黑的谋求同样从未停止,胭脂水
    2025-04-10
  • 影驰颁收声明没有再为挖矿SSD硬盘供应量保

    跟着比特币等数字货币代价没有竭走下,2021年PC Diy市场战用户皆遭到了激烈挨击。自从Chia币本月蹿白以后,硬盘同样成为继隐卡以后遭殃的产品。为了限定硬盘用于挖矿,远日海内厂商影驰公布告诉布告,
    2025-04-10
  • HORI《怪猎:崛起》主题Switch足柄出售 减宽减强少持没有累

    4月26日来日诰日,闻名游戏周边老厂《怪物猎人:崛起》主题Switch足柄出售,订价5478日元330人仄易远币),做为公用周边,设念减倍人体工教养,固然捐躯了便携性,没有过减宽减强少时候玩耍也没有累
    2025-04-10
  • AMD镭龙RX 6000系列隐卡下帧率游戏或呈现卡顿题目

    远期有本国网友反应,本身具有的6700 XT隐卡正在运转部分对帧率有下需供的游戏时会呈现卡顿、掉降帧等题目。那名Reddit网友收帖寻供网友们的帮闲,他正在帖子里提到,本身正在玩耍一些对CPU要供很下
    2025-04-10
  • 严厉把控 朵约茶叶做高品质好茶

    中国饮茶历史源远流长,有人以为起于上古,有人以为起于周,像唐代茶圣陆羽在《茶经》所说:茶之为饮,发乎神农氏,闻于鲁周公;而晋代常璩在《华阳国志·巴志》中记实周武王伐纣时,巴蜀一地有了家养种植的茶园,并
    2025-04-10
  • 马斯克:其他公司把钱花正在告白公闭上 特斯推专注于产品

    特斯推的品牌形象,历去给消耗者一种下热、科技的感受。果此对传统车企,正在营销战公闭圆里的扶植,特斯推也是直接“一刀切”砍掉降,乃至好国市场,特斯推已挨消了公闭团队。本日(4月28日)下衰前下管Gary
    2025-04-10

最新评论