首頁(yè) 游戲

Minecraft指令手冊(cè)

第一百零九章 掉落物的NBT 下

Minecraft指令手冊(cè) 你好MC 820 2020-05-26 20:53:30

 ?。ù苏鹿?jié)內(nèi)容不怎么重要,可跳過(guò)此章節(jié))

  眾所周知,使用/give指令可以讓你獲得指定的物品。

  比如指令『/give @s command_block』的作用就是讓你獲得一個(gè)命令方塊。

  但你知道你是怎么獲得這個(gè)命令方塊的嗎?

  在你運(yùn)行該指令的那一刻,這條指令會(huì)被游戲進(jìn)行處理,然后你就獲得了這個(gè)命令方塊。奇妙的是,在Java版,你似乎并不是直接獲得命令方塊,而是撿起了一個(gè)命令方塊掉落物。

  如果那真的是一個(gè)掉落物的話,那么這個(gè)掉落物的屬性是什么呢?

  PickupDelay標(biāo)簽的值肯定為0,Age標(biāo)簽很有可能是6000。

  但此時(shí)又有一個(gè)新的問(wèn)題出現(xiàn)了:如果是在服務(wù)器中,你站在茫茫人海,但這個(gè)掉落物仍然被你精準(zhǔn)地?fù)炱鹆?,這是為什么呢?(說(shuō)實(shí)話還沒(méi)等你撿起你家寬帶以及你的電腦就要主機(jī)火苗萬(wàn)丈高了)

  因?yàn)榈袈湮锏腘BT還有一個(gè)可能不存在的標(biāo)簽:Owner

  Owner標(biāo)簽的數(shù)據(jù)類(lèi)型是復(fù)合標(biāo)簽,在Java1.16及以上版本是Int整型數(shù)組。它的值本質(zhì)上是一個(gè)玩家的UUID,用來(lái)決定這個(gè)掉落物可以被哪個(gè)玩家撿起。

  舉個(gè)栗子,假設(shè)有這么一個(gè)叫做『Liu_HuaQiang』的玩家,如果你要生成一個(gè)只能夠被它撿起的掉落物,那Owner標(biāo)簽就得這樣子填:

  {Owner:{UUIDMost:2332601084025456724L,UUIDLeast:-8594334449601351938L}}

  \\Java1.16版本以下\\

  {Owner:[I;543101011,-939046828,-2001024422,1385950974]}

  \\Java1.16及以上版本\\

  其中,UUIDMost和UUIDLeast這兩個(gè)標(biāo)簽填的是這名玩家的UUID高位和UUID低位。我們會(huì)在下一章講到UUID。

  這就是Owner標(biāo)簽的用法,只不過(guò)你現(xiàn)在其實(shí)并不需要急著去用,因?yàn)榈袈湮镞€可能會(huì)有一個(gè)標(biāo)簽。

  假設(shè)你在礦洞挖礦,剛剛挖到8顆鉆石,你很興奮,然后聽(tīng)到后面有一個(gè)........

  “嘶~~~”

  你轉(zhuǎn)頭一看:“Creeper?”

  “BOOOOOM!”

  恭喜你,你的鉆石成為了一個(gè)掉落物。

  這顆鉆石掉落物的NBT也值得研究。

  它的NBT除了上一章所說(shuō)的,還有一個(gè)你從未見(jiàn)過(guò)的NBT標(biāo)簽:

  Thrower——這個(gè)物品本來(lái)是誰(shuí)的

  和Owner一樣,它的值也是一個(gè)玩家的UUID信息。當(dāng)某名玩家把這個(gè)物品以某種形式丟掉了,這個(gè)物品的Thrower標(biāo)簽就會(huì)存儲(chǔ)該名玩家的UUID。

  Thrower的用法和上面的Owner一模一樣,這里就不細(xì)講了。

  這一章到此為止。

  EaseCation真好玩——唉,好像作業(yè)還沒(méi)做唉。

  附錄:歷史

  Java

  1.16——為適應(yīng)新版本的UUID,Owner和Thrower標(biāo)簽的數(shù)據(jù)類(lèi)型從復(fù)合標(biāo)簽改成Int整型數(shù)組。

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