我的世界命令方块记分板教程

时间:2016-04-05 来源:88130安卓下载 作者:佚名

记分板系统其实已经出了挺久了,但是我看还没有一个比较系统的应用方面的教程,很多教程都是只列出了命令以及相应的效果什么的,特别是我前几天还看到有人还在用经验值来当RPG地图里的金钱……

所以我决定写篇教程,详细地讲下记分板这个系统和它在各方面的应用。

在阅读此教程之前,请确保你会使用命令方块的基础功能

记分板是什么

记分板是一个以/scoreboard 为首的一系列命令的组合

记分板中的项目其实就是一个变量

变量……嘛能理解吧 如果理解不了的话就把它看成一个未知数x

而这个x的值可以通过各种操作来改变

换句话说,记分板可以设定一个未知数x,改变它的值,然后再根据这个x的大小来作出相应的反应

这里举个例子

如果我想要用记分板来做个任务的话【RPG地图】

我可以设定一个未知数x,起个名字叫【任务】,这时x=0

然后在完成任务时【比如交出某一物品,触发某个机关】时,把这个x的值改成1

然后再做一个机关,当触发时判定x的值是否是1,如果是的话就发出完成任务的信息

那么就是这样,一个任务就做好了

当然这只是一个非常简单的例子

下面我就会详细地说这个例子是怎么实现的

首先我们需要创建一个变量【也就是那个未知数x

/scoreboard objectives add RenWu dummy

这里的RenWu是BL的名字

而那个dummy则是判定条件,这里的dummy是虚拟变量

也就是说,这个变量是不受任何因素影响,只会被其他命令改变

左下角可以看到,我创建了一个变量

这个命令可以改变特定变量的值

而这里我是将RenWu变量的值改成了1

相对的,如果我把set改成:

add=》加一

remove=>减一

而后面的1则是代表相应的值

而另外一个命令则可以检测某个变量是否达到了某个值

比如如果我需要做出像是例子中的效果

【当变量=1时,输出信号】

就可以这样做:

/testfor @p[score_RenWu_min=1]

使用这个命令可以在命令方块被通入信号时,判断变量[RenWu]的值是否等于1

如果是的话,则向旁边的比较器输出信号

从而点亮红石灯

而对于一开始的那个做任务的例子,现在也可以很轻松地做出来了

这是接受任务的地方

触发机关时,创建【RenWu】这个变量,同时说一声balabala=L=【没错我没装中文补丁……

而当我们的英雄费尽千辛万苦来到了任务的终点时,他丢下了火把,触发了机关

此时将那个变量的值改为1

而这个就是接收器了

用高频的脉冲不断地判断变量的值

当它【终于】等于1时,向旁边的比较器输出信号

从而激发接下来的机关

比如123456啊什么的对吧【恩

有的小伙伴就会说啦【你丫根本没人在看吧喂

“LZSB,我直接在完成任务那里做完成任务的机关不就好了,完爆LZ”

=L=……怎么说呢

如果任务的完成条件不是1,而是3,4,5,6之类的呢?

也就是说,如果这个任务有多个完成的条件呢?

再或者,如果这个任务有很多的完成条件,但是完成任务时根本就不需要全部做完呢?

又或者,如果这个任务的每个目标加的分不一样,而完成任务只是要求达到特定的分数呢?

这样的情况下,用传统的红石电路是难以达到的【恩

而且别忘了,记分板不仅可以用来做任务

比如……等级系统?

没错=L=

就是传统RPG中的等级系统

杀怪升级啊,升一级属性会增强啊什么的

这里呢,就要用到另一种任务的判定条件【杀敌】了

这是wiki的解释:

"击杀数量 (totalKillCount)": 当玩家杀死其他生物时分数会自动增加。

而我们就可以尝试用这个系统做一个打怪/做任务升级的系统

/scoreboard objectives add Level totalKillCount

这个命令可以创建一个名为Level的变量

细心的小伙伴们可能会注意到

现在是晚上啦!!

————不闹了

这里的dummy改成了totalKillCount

而这个意味着

这个变量会随着你击杀其他生物而上升

/scoreboard objectives setdisplay sidebar Level

这个变量可以在你的视窗右边持续地显示这个变量的值

也就是说

你可以持续地在右边看到你的经验

没错我刚刚杀了一只鸡=L=

然后可以看到,我现在的经验值是1

=L=又杀了一只

现在是2了

testfor @p[score_Level_min=15]

喜闻乐见的升级判定

而这里的命令则是代表,当你的经验值在15以上时,触发升级的电路

而这四个则分别代表不同的等级

他们要求的经验值也不同,左下角可以看到

——注意这里的经验值指的是Level的值,而不是你正下方的那个经验条……

通到一个按钮上面

这里不用高频电路的原因呢……

艾玛太卡了=L=

在我跑出去杀了一堆怪以后呢

回来这里,右击按钮

leveled up!

没错我血条增加了噗咩哈哈哈【深井冰

哈啊啊~再来做个金钱系统吧

没错就是金钱

=L=用经验条当货币的你们弱爆了

交易东西啊什么的我就不说了……用售货机,然后在输出端设定给作为钱的变量增加特定的数值就好

这里来讲讲怎么把打怪得到的经验换成钱

也就是说怎样把一个变量的值移到另一个变量上面

差不多就是这样子的结构了

首先,创建Money和level这两个变量【Level就是前面提到的那个等级系统的变量

最左边的命令方块是

/testfor @p[score_Level_min=10]

判定玩家的经验值是否大于10

如果是的话则激发右边的两个命令方块

分别是:

/scoreboard players add @p Money 3000

/scoreboard players remove @p Level 10

这里的意义是,

减掉玩家的十点经验,

然后给玩家3000块钱

恩就是这样

热门搜索

手游排行榜

  • 最新排行
  • 最热排行
  • 评分最高