首頁(yè) 游戲

Minecraft指令手冊(cè)

第九十一章 紅石比較器

Minecraft指令手冊(cè) 你好MC 2664 2020-03-19 12:56:12

 ?。ù苏鹿?jié)原為『循環(huán)裝置-牛頓的棺材板快要按不住了?。。?!』,于2022年7月26日改為『紅石比較器』)

 ?。ù苏鹿?jié)有用到本章說(shuō)來(lái)插入圖片,因此最好在起點(diǎn)中文網(wǎng)上閱讀本章)

  現(xiàn)在我們已經(jīng)了解了很多指令,但是僅僅知道各種指令如何使用,最多也就稱得上是一個(gè)『會(huì)用指令的玩家』而已。那該怎么辦呢?我們現(xiàn)在要做的是,將各個(gè)指令和游戲特性互相聯(lián)系起來(lái),這也就是這一卷的主要內(nèi)容。

  紅石比較器(Redstone Comparator),你應(yīng)該知道這是個(gè)什么東西吧?作為紅石電路的重要組成部分之一,它有許許多多的的用途。

  作者的紅石并不怎么好,所以這邊并不會(huì)講什么特別高深的紅石相關(guān)內(nèi)容(我也不會(huì)講)。但基礎(chǔ)的一些特性我們還是要了解了解。

  讓我們拿出一個(gè)紅石比較器,放在地上,你應(yīng)該注意到了這東西上面插著三個(gè)看起來(lái)像是紅石火把的東西(其實(shí)就是紅石火把),并組成了一個(gè)三角形(△)。這個(gè)三角形的一邊平行于紅石比較器的一側(cè),另一頭指向另一側(cè)(見(jiàn)插圖91-1)。

  這個(gè)三角形意味著什么呢?讓我們換一個(gè)方式來(lái)看待紅石比較器:

  ┏━┓北

  ┃△┃↑(插圖:91-2)

  ┗━┛

  (長(zhǎng)方形的紅石比較器?)

 ?。~,就這樣子將就看吧,能夠看配圖的話那更好)

  這是一個(gè)朝向正北(Z-)的紅石比較器,這個(gè)紅石比較器有三個(gè)輸入口和一個(gè)輸出口:

  ┏O┓

  B△C(插圖:91-3)

  ┗A┛

  A······后側(cè)輸入口

  B······左側(cè)輸入口

  C······右側(cè)輸入口

  O······輸出口

  其中,A后側(cè)輸入口是很重要的一個(gè)輸入口,你可以向這個(gè)輸入口輸入紅石信號(hào)。當(dāng)然,單純的輸入紅石信號(hào)并不會(huì)發(fā)生什么事情,因?yàn)槲覀儧](méi)有在O輸出口放置一些能夠接收紅石信號(hào)的東西。讓我們?cè)贏側(cè)放置一個(gè)紅石塊,O側(cè)放置一個(gè)紅石粉看看:

  亮起來(lái)的紅石粉

  ┏O┓

  B△C(插圖:91-4)

  ┗A┛

  紅石塊

  你會(huì)發(fā)現(xiàn)O側(cè)的紅石粉亮起來(lái)了。這是為什么?

  因?yàn)榧t石比較器在A側(cè)收到了紅石塊產(chǎn)生的紅石信號(hào),于是就從O側(cè)輸出來(lái)了。那么問(wèn)題來(lái)了:我們都知道紅石信號(hào)有強(qiáng)度等級(jí)之分,在普通的紅石線中傳遞的紅石信號(hào)每過(guò)一格就會(huì)衰減一級(jí),直到完全沒(méi)有信號(hào)。那么紅石信號(hào)在穿過(guò)紅石比較器的過(guò)程中會(huì)發(fā)生衰減嗎?

  由于紅石塊能夠產(chǎn)生出15級(jí)的紅石信號(hào),因此我們只需要測(cè)試O側(cè)輸出的紅石信號(hào)是否為15級(jí)即可。我們當(dāng)然可以通過(guò)延長(zhǎng)O側(cè)的紅石線路,觀察紅石信號(hào)是否傳遞了15格。但別忘了本書(shū)是一個(gè)指令教程,因此我們干脆直接用指令對(duì)O側(cè)的紅石粉進(jìn)行方塊狀態(tài)測(cè)試:

  /execute if block ~~~ minecraft:redstone_wire[power=15]——Java1.13及之后版本

  /testforblock ~~~ minecraft:redstone_wire [power=15]——Java1.12.2-1.11

  /testforblock ~~~ minecraft:redstone_wire [“redstone_signal“:15]——基巖版

  雖然方塊狀態(tài)我們并沒(méi)有了解過(guò),但也快了,這邊先預(yù)習(xí)一下也無(wú)妨。上面的指令的作用是:探測(cè)指令執(zhí)行地點(diǎn)(也就是你的位置)的方塊是否是紅石線,且power(redstone_signal)方塊狀態(tài)的值為15。其中,power(redstone_signal)方塊狀態(tài)的作用就是儲(chǔ)存該紅石粉的紅石信號(hào)強(qiáng)度等級(jí)。

  站在O側(cè)的紅石粉上,根據(jù)你的版本選擇性運(yùn)行上面的指令。如果指令運(yùn)行成功,那么就代表著這個(gè)紅石粉具有15級(jí)的紅石信號(hào),也就驗(yàn)證了我們上述的猜想。那么實(shí)際情況怎么樣呢?

  指令確實(shí)運(yùn)行成功了。

  這意味著什么呢?這意味著,紅石比較器不會(huì)導(dǎo)致紅石信號(hào)的衰減。但隨之而來(lái)就有另一個(gè)問(wèn)題——紅石比較器會(huì)像紅石中繼器一樣增強(qiáng)信號(hào)嗎?

  讓我們?cè)贉y(cè)試一下,將上面的結(jié)構(gòu)改成下面這樣:

  ┊——究竟是14級(jí)還是15級(jí)?

  ┏O┓

  B△C(插圖:91-5)

  ┗A┛

  ┊——14級(jí)紅石信號(hào)

  ┊——15級(jí)紅石信號(hào)

  ?

  圖例

  ┊······紅石線

  ?······紅石塊

  然后還是老樣子,對(duì)O側(cè)的紅石線進(jìn)行方塊狀態(tài)測(cè)試,只需要把『15』改成『14』就行。那么結(jié)果如何呢?

  指令也是成功運(yùn)行!

  如果你不放心,你還可以重新測(cè)試一下『15』的值,然后你就會(huì)發(fā)現(xiàn)指令執(zhí)行失敗。

  所以說(shuō),總結(jié)下來(lái),紅石比較器并不會(huì)導(dǎo)致紅石信號(hào)衰減,也不會(huì)增強(qiáng)紅石信號(hào)。借此原理,紅石比較器的第一個(gè)重要用途就出來(lái)了:

  保持信號(hào)強(qiáng)度(插圖:91-6)

  我們上面的討論都僅僅基于A后側(cè)輸入口和O輸出口,但紅石比較器還有兩個(gè)輸入口:B左側(cè)輸入口和C右側(cè)輸入口。這兩個(gè)輸入口有什么用呢?

  說(shuō)到這兩個(gè)輸入口,就不得不提——紅石比較器的模式。

  紅石比較器具有兩種模式,可以通過(guò)觀察靠近O輸出口的那個(gè)紅石火把的開(kāi)關(guān)狀態(tài)來(lái)判斷此時(shí)比較器處于哪種模式:

  比較模式——O輸出口的紅石火把關(guān)閉

  作差模式——O輸出口的紅石火把開(kāi)啟

  先來(lái)講講比較模式。當(dāng)紅石比較器處于比較模式時(shí),B或C輸入口輸入的紅石信號(hào)強(qiáng)度會(huì)和A輸入口的紅石信號(hào)強(qiáng)度作比較,如果B或C>A則O不輸出,B或C≤A則O輸出,也就是像下面這樣子:

  ┊——0級(jí)

  ┏O┓(插圖:91-7)

  B△C?

  ┗A┛

  ┊——14級(jí)

  ┊——15級(jí)

  ?

  ∵C=15,A=14

  ∴C>A

  ∴O=0(不輸出)

  ——————————

  ┊——14級(jí)

  ┏O┓(插圖:91-8)

  B△C┈┈┈?(這里有3格的紅石線)

  ┗A┛

  ┊——14級(jí)

  ┊——15級(jí)

  ?

  ∵C=13,A=14

  ∴C<A

  ∴O=14(輸出)

  懂了吧?需要注意的是,如果B和C都有輸入,那么游戲會(huì)先比較B和C,拿強(qiáng)度最大的和A比較:

  空空┊——15級(jí)

  空空┏O┓(插圖:91-9)

  ?┈┈B△C┈┈┈?

  空空┗A┛

  空空┊——15級(jí)

  空空?

  ∵B=14,C=13

  ∴B>C

  ∵A=15

  ∴B<A

  ∴O=15(輸出)

  紅石比較器的這個(gè)比較模式就是這樣,同時(shí)這可以引出比較器第二個(gè)重要用途:

  比較信號(hào)強(qiáng)度

  當(dāng)紅石比較器靠近O輸出口的紅石火把開(kāi)啟時(shí),紅石比較器就進(jìn)入了『作差模式』。作差模式的紅石比較器會(huì)將A輸入口的紅石信號(hào)強(qiáng)度和B或C的紅石信號(hào)強(qiáng)度相減,并將相減后的紅石信號(hào)強(qiáng)度從O側(cè)輸出:

  空空┊——1級(jí)

  空空┏O┓(插圖:91-10)

  ?┈┈B△C┈┈┈?

  空空┗A┛

  空空┊——15級(jí)

  空空?

  ∵B=14,C=13

  ∴B>C

  ∵A=15

  ∴O=A-B=15-14=1(輸出)

  不難發(fā)現(xiàn),不管是在哪個(gè)模式,紅石比較器都會(huì)先比較B和C輸入口的信號(hào)強(qiáng)度,將最大的信號(hào)強(qiáng)度抽出來(lái)之后再操作A輸入口的信號(hào)強(qiáng)度。

  這個(gè)『作差模式』也就是這樣,同時(shí)這也引出比較器第三個(gè)重要用途:

  信號(hào)強(qiáng)度作差

  那么比較器就這么講完了嗎?

  No,因?yàn)榧t石比較器還有第四個(gè)重要用途:

  檢測(cè)方塊狀態(tài)、方塊實(shí)體和物品展示框

  我們知道,紅石比較器可以檢測(cè)命令方塊上一次的執(zhí)行成功次數(shù),然后將次數(shù)轉(zhuǎn)化為紅石信號(hào)強(qiáng)度進(jìn)行輸出。還可以檢測(cè)許多容器,以及各種東西,然后輸出特定的紅石信號(hào)。對(duì)于隔壁紅石來(lái)說(shuō),紅石比較器常常用來(lái)檢測(cè)容器內(nèi)物品數(shù)量,甚至是通過(guò)不可堆疊和可堆疊的物品不斷在漏斗內(nèi)運(yùn)動(dòng),然后使用紅石比較器檢測(cè),來(lái)達(dá)到『隨機(jī)數(shù)運(yùn)算』的目的。只不過(guò)我們這邊不需要用到這么復(fù)雜的東西(其實(shí)那也沒(méi)多復(fù)雜),我們只需要能夠用紅石比較器檢測(cè)命令方塊的成功次數(shù)就行了:

  ┊——13級(jí)

  ┏O┓(插圖:91-11)

  B△C

  ┗A┛

  ?

  圖例

  ?······命令方塊,上次成功運(yùn)行次數(shù)為13次

  上面是一個(gè)簡(jiǎn)易的例子——一個(gè)上次運(yùn)行指令成功次數(shù)為13次的命令方塊,通過(guò)比較器成功將成功次數(shù)轉(zhuǎn)化為信號(hào)強(qiáng)度。

  所以這就是本章的全部?jī)?nèi)容了。

  附錄:紅石比較器歷史

  Java

  1.5——加入了紅石比較器

  1.6——能檢測(cè)末地傳送門(mén)框架和煉藥鍋了

  1.8——能檢測(cè)物品展示框和蛋糕了

  1.9——比較器現(xiàn)在能夠輸入紅石塊的紅石信號(hào)

  1.14——能檢測(cè)講臺(tái)和堆肥桶

  1.15——能檢測(cè)蜂巢和蜂箱

  1.16——能檢測(cè)重生錨

  1.17——能檢測(cè)幽匿感測(cè)體

  攜帶/基巖版

  Alpha0.14.0——加入了紅石比較器

  1.0.0——可檢測(cè)末地傳送門(mén)框架

  1.0.5——可檢測(cè)命令方塊

  1.1.0——可檢測(cè)潛影貝

  1.2.0——可檢測(cè)唱片機(jī)

  1.11.0——可檢測(cè)煙熏爐、高爐、講臺(tái)和堆肥桶

  ......

  ......

  ......

  ......

  我們知道,紅石信號(hào)等級(jí)上限為15,所以當(dāng)命令方塊的執(zhí)行成功次數(shù)等于甚至大于15時(shí),紅石比較器就沒(méi)作用了。

  真的嗎?

  讓我們來(lái)看一個(gè)例子:

  ┊——6級(jí)

  ┏O┓(插圖:91-12)

  B△C?

  ┗A┛

  ?

  圖例

  ?······命令方塊,上次執(zhí)行成功次數(shù)為21次

  ?······紅石塊

  這是一個(gè)處于『作差模式』的紅石比較器,不難發(fā)現(xiàn)它的O=6,C=15。所以它的A為多少呢?

  A=O+C=21,也就是命令方塊執(zhí)行成功的次數(shù)

  等等,不是說(shuō)好紅石信號(hào)等級(jí)上限為15的嗎?怎么跑21去了?

  嚴(yán)格來(lái)說(shuō),并不是說(shuō)紅石信號(hào)等級(jí)上限為15,而是『紅石線的承載能力最大為15級(jí)』。所以如果我們不使用紅石線,也就不會(huì)把命令方塊的輸出壓到15級(jí)。

  但是不使用紅石線我們?cè)撛鯓觽鲗?dǎo)大于15級(jí)的紅石信號(hào)呢?

  用紅石比較器。

  由于篇幅限制,我們這邊就不詳細(xì)展開(kāi),接下來(lái)就請(qǐng)你自行研究去吧!

按 “鍵盤(pán)左鍵←” 返回上一章  按 “鍵盤(pán)右鍵→” 進(jìn)入下一章  按 “空格鍵” 向下滾動(dòng)
目錄
目錄
設(shè)置
設(shè)置
書(shū)架
加入書(shū)架
書(shū)頁(yè)
返回書(shū)頁(yè)
指南