來源:我的世界中文論壇
作者:PotatoMaster101
大家好,今天教大家如何用指令方塊刷出帶有自訂物品的箱子。這個的用處是可以放到冒險地圖裡。箱子裡的物品越多,指令就會越長。這個是MC1.7或以上版本才能用的。做這個有兩種辦法:用/summon或/setblock做。/setblock的較簡單。
OK,首先教大家用/setblock的做。第一步是如何刷出一個空箱子。指令是:
/setblock ~ ~1 ~ minecraft:chest 0 replace
這條指令可以打到指令方塊裡,啟動後會在指令方塊的頂上刷一個空箱子。講解下/setblock指令:
setblock是1.7的新指令,用處是在一個地方放置一個方塊。指令裡的 ~ ~1 ~ 就是座標。如果座標前面加了個 ~ 的話,就代表為指令方塊為中心。所以我這裡打 ~ ~1 ~ ,就代表在指令方塊的y+1的地方放一個箱子。大家看到X和Z的地方都是~,也就是代表 X和Z沒有漂移,所以只會在指令方塊的上面刷出。另一種方法是 ~0 ~1 ~0。之後minecraft:chest就是箱子的ID了。我這裡打的是名字,大家可以打數位ID,比如54。再後面的0就是方塊資訊了。由於是刷出的普通的箱子,所以沒有資訊,就寫成0。這個的用處是在刷不同顏色的羊毛,各個顏色的羊毛都有單獨的資訊。之後是replace,就是把指令方塊上面的方塊替換成一個空箱子。這個也是舊房塊處理,分別有:
replace:替換
destroy:刪除前面的方塊,換成新的方塊
keep:和replace差不多
本人大多數還是用replace,比較簡單。
OK,下面教大家如何刷出帶有自訂物品的箱子,因為刷出個空箱子沒任何意義。這裡就要用到NBT了。自訂物品的NBT是 {Items}。指令是:
setblock ~ ~1 ~ minecraft:chest 0 replace
{Items:[{id:264,Slot:0,Count:5}]}
大家看到,第一行還是和剛才的/setblock一樣。第二行出了點新的東西。來說下第二行:
Items:一個NBT,告訴指令方塊這個箱子裡需要有自訂物品。要自訂物品的話一定要打
id:自訂物品的ID,用數位ID就可以了。箱子裡想要什麼就打什麼的ID。
Slot:這個是自訂物品在箱子裡放置的位置。0就是第一格,1就是第二格,以此類推。
Count:每個物品的數量。這個可以隨便填寫。要一個物品就打1
之後大家看到這些ID,Slot,Count都是在同一個括弧裡的,這說明這些資訊都是在同一個物品上起效。所以如果把這條指令打進指令方塊 (setblock ~ ~1 ~ minecraft:chest 0 replace {Items:[{id:264,Slot:0,Count:5}]}),啟動後會刷出一個箱子,打開後箱子裡的第一格會刷出5個鑽石。
有些玩家會問如何刷出多個物品,這很簡單,直接把多個物品用括弧分開就可以了,例子:
/setblock ~ ~1 ~ minecraft:chest 0 replace
{Items:[{id:364,Count:5,Slot:0},
{id:311,Slot:1,Count:1},
{id:95,Count:64,Slot:2,Damage:5}]}
這條指令用處就是在一個箱子裡刷:5塊牛排,一個鑽石裝備和64個綠色玻璃。大家看到在指令的最後一行會出現一個新的NBT:Damage。這個就像前面說的方塊資訊一樣。由於玻璃有很多顏色,但是ID都是一樣的。他們唯一不同的就是資訊。所以Damage:5的話,就是ID=玻璃,資訊=5,也就是一個綠色玻璃。這個可以隨便調,比如Damage:7就是一個灰色玻璃。
接下來教大家如何用 /summon 來做自訂物品箱子。這個比/setblock複雜點,因為/summon的用處是刷生物,而不是直接的刷方塊。如果要刷方塊的話,要多加幾個NBT。首先教大家如何刷出個空箱子:
summon FallingSand ~ ~1 ~
{Time:1,Tile:54}
指令方塊裡打進這條指令後會在正上方刷一個空箱子。來講解下指令:/summon就是一個新的指令,用來刷生物。後面的 FallingSand 就是刷出一個掉落沙,掉落沙就是沙子掉落時候的狀態。只有用掉落沙才可以讓/summon刷出一個方塊。之後的~ ~1 ~就是座標,前面說過了。第二行有2個NBT:分別是Time和Tile,用處是:
Tile:刷出掉落沙的ID,比如箱子就是54,打57的話會刷出一個掉落沙鑽石塊
Time:掉落沙的時間。掉落沙一定要有時間,沒的話刷出來的掉落沙會瞬間被系統刷沒。最起碼1
OK,之後指令方塊會在頭頂上刷出一個掉落沙的箱子。因為時間調成了1,掉落沙著落後就變成了箱子。如果不打時間(Time)的話掉落沙一刷出就會被系統刷沒。
之後來教大家如何在箱子裡刷物品,用/summon。指令是:
/summon FallingSand ~ ~1 ~
{Tile:54,Time:1,TileEntityData:{Items:[{id:264,Slot:1,Count:5}]}}
大家看到,這條指令裡的一部分和前面的/setblock完全一樣。也就是 {Items},但是Items這個NBT前面又加了一個NBT:TileEntityData,這個就是掉落沙資料。因為掉落沙剛刷出的時候,還並不是一種方塊,就像點燃的TNT一樣。所以要加TileEntityData,也就是給掉落沙資訊,掉落後會釋放出資訊,也就是箱子裡出現了自訂物品。打完這條指令後效果會和前面的一樣,箱子裡第一格有5個鑽石。如果要加多個物品的話,那和前面的完全一樣。例子:
/summon FallingSand ~ ~1 ~
{Tile:54,Time:1,TileEntityData:{Items:
[{id:57,Slot:1,Count:64},
{id:159,Slot:0,Count:32,Damage:15},
{id:276,Slot:2,Count:1}]}}
這條指令會刷出一個箱子,裡面有:32個黑粘土,64個鑽石塊和一把鑽石劍。NBT也和之前的一樣,我就不多說了。之後就差不多完工了。如果要再加東西的話也很簡單,多加幾個括弧和逗號就好了。但是要注意的是打NBT時,方括號和彎括弧一定要打對,而且都要平衡掉。所以開幾個括弧就要關閉幾個括弧,否則指令方塊會出錯。