第六十七章 更高級(jí)的locate
?。ù苏鹿?jié)于2022年7月13日重寫)
近日,Mojang在Minecraft Java1.19.1版本中添加的Player Reporting System(玩家舉報(bào)系統(tǒng))引起了軒然大波,許多Minecraft玩家認(rèn)為這是Minecraft將要走向下坡路的前兆。
但這和我們暫時(shí)沒有關(guān)系,相反,1.19荒野更新中的一些關(guān)于指令的更新更需要得到我們的注意。比如1.19版本中,Mojang對(duì)指令/locate的更新。
在第二十一章,我們了解到了/locate指令的用法,也就是如下:
Java1.19版本前
/locate <結(jié)構(gòu)名>
基巖1.19.10版本前
/locate <結(jié)構(gòu)名>[僅在未生成的區(qū)塊中查找:布爾值]
看起來相當(dāng)?shù)暮?jiǎn)單,Mojang也這么認(rèn)為。但Mojang不只是認(rèn)為這條指令簡(jiǎn)單,他們還認(rèn)為這條指令簡(jiǎn)單到過于簡(jiǎn)陋。于是,在Minecraft Java1.19和Minecraft Bedrock Edition 1.19.10更新中,Mojan對(duì)/locate指令進(jìn)行了大更新,變成了如下模樣:
Java1.19及之后版本
/locate biome <生物群系ID>
/locate poi <興趣點(diǎn)ID>
/locate structure <結(jié)構(gòu)ID>
基巖版1.19.10及之后版本
/locate biome <生物群系ID>
/locate structure <結(jié)構(gòu)ID>[僅在未生成的區(qū)塊中查找:布爾值]
(注:基巖版的locate尚在更新中,有可能會(huì)發(fā)生變化)
看起來仍然相當(dāng)?shù)暮?jiǎn)單。
首先,/locate原來的功能,也就是『定位特殊的建筑(結(jié)構(gòu))』,被移植到了structure子命令中,這里我們就不細(xì)講了。然后,Mojang將/locatebiome這條指令合并到了/locate,變成了biome子命令。最后,Mojang添加了一個(gè)新的子命令,叫做poi,可以用于查找興趣點(diǎn)。
唉,什么是興趣點(diǎn)?它有什么用?為什么會(huì)讓我們興趣?
待會(huì)我們會(huì)講到,先讓我們來看看這個(gè)/locatebiome命令又是什么。
/locatebiome
作用:尋找指定生物群系
存在版本:Java1.16-1.19快照
需要權(quán)限等級(jí):2
需要作弊:否
格式:
/locatebiome <生物群系ID>
/locatebiome這條指令添加于1.16版本,其功能類似于當(dāng)時(shí)的/locate指令,可以查找最近的生物群系并返回其位置。
也是很簡(jiǎn)單,但功能由于和locate太類似,Mojang就讓它合并過來了。
現(xiàn)在我們?cè)賮砜纯磒oi子命令。
上面說了,poi子命令可以查找興趣點(diǎn)。興趣點(diǎn)是什么?
興趣點(diǎn)(point of interest),是在Minecraft Java 1.14加入的一個(gè)東西,主要指的是能被村民或其他生物認(rèn)領(lǐng)的方塊(注:這是作者自己的定義,官方目前沒有給出定義)。也就是說,并不(只)是你會(huì)對(duì)這東西感興趣,而是村民以及其他的一些生物會(huì)對(duì)這東西感興趣。
有哪些方塊是興趣點(diǎn)呢?
截止目前(Java1.19.1),有如下興趣點(diǎn):
\\能被村民認(rèn)領(lǐng)的\\
高爐(armorer)
煙熏爐(butcher)
制圖臺(tái)(cartographer)
釀造臺(tái)(cleric)
堆肥桶(farmer)
木桶(fisherman)
制箭臺(tái)(fletcher)
床(home)
煉藥鍋(leatherworker)
講臺(tái)(librarian)
切石機(jī)(mason)
鐘(meeting)
織布機(jī)(shepherd)
鍛造臺(tái)(toolsmith)
砂輪(weaponsmith)
\\跟蜜蜂有關(guān)的\\
蜂巢(bee_nest)
蜂箱(beehive)
\\跟玩家有關(guān)的\\
避雷針(lightning_rod)
磁石(lodestone)
下界傳送門(nether_portal)
舉個(gè)例子。比如我們要尋找最近的下界傳送門,就可以運(yùn)行如下指令:
/locate poi minecraft:nether_portal
蠻簡(jiǎn)單的,這個(gè)興趣點(diǎn)看起來好像很高大上,實(shí)際上也沒什么嘛。
現(xiàn)在,新版本的/locate算是介紹完了。但還有一些問題:
在Java新版本中,各種村莊的ID被拆分了,雖然這對(duì)我們搜索特定種類的村莊有很大幫助,但萬一我們僅僅只是想找個(gè)村莊該怎么辦?
答案很簡(jiǎn)單:用標(biāo)簽。
還記得我們?cè)凇罕緯谝淮未笮扌略稣垄佟恢刑岬降臉?biāo)簽吧?在Minecraft Java 1.18.2更新中,Mojang開始允許/locate和/locatebiome指令使用標(biāo)簽進(jìn)行查找,就算/locate經(jīng)過了如此大的更新,這個(gè)功能也沒砍。
那有哪些標(biāo)簽,怎么使用呢?
對(duì)于結(jié)構(gòu)來說:
cats_spawn_as_black(會(huì)生成黑色的貓)
cats_spawn_in(會(huì)生成貓)
dolphin_located(會(huì)有海豚)
eye_of_ender_located(會(huì)有末地傳送門)
mineshaft(是礦井)
ocean_ruin(位于海里的廢墟)
on_ocean_explorer_maps(在海洋探險(xiǎn)家地圖上的)
on_treasure_maps(在寶藏地圖上的)
on_woodland_explorer_maps(在林地探險(xiǎn)家地圖上的)
ruined_portal(是破敗的傳送門)
shipwreck(是船的廢墟)
village(是村莊)
對(duì)于生物群系來說:
非常多,不列了,自己去Minecraft Wiki上查
對(duì)于興趣點(diǎn)來說:
acquirable_job_site(村民的工作站)
bee_home(蜜蜂的家)
village(跟村莊有關(guān)的)
比如,我們要查找最近的村莊,我們可以這么做:
/locate #minecraft:village (Java1.18.2)
/locate structure #minecraft:village (Java1.19及之后)
我們要查找最近的山地類生物群系,我們可以這么做
/locatebiome #minecraft:is_mountain (Java1.18.2)
/locate biome #minecraft:is_mountain (Java1.19及之后)
那么本章就到這里了。接下來,我們將正式開始學(xué)習(xí)execute的使用。