天才一秒記住【UU看書】地址:www.uukanshu.co
在序言中,我們提到了一條指令由一個指令名許多指令引數組成。
在學習過程中,你可能已經發現了,許多指令中經常出現以下引數:
實體ID
方塊ID
物品ID
值:Int整形
上面這些引數中,前三者被統一叫做ID引數(名稱空間ID引數)。ID引數實際上不止這三個,還有藥水效果ID(effect指令)、魔咒ID(enchant),但由於這三個最常見,所以這兒就拿它們三研究。
ID引數都有一個特點:都具有名稱空間
什麼是名稱空間?舉個例子,原版鑽石ID名是diamond,但在遊戲裡這個鑽石ID名是:
minecraftdiamond
前面的『minecraft』就是這個ID的名稱空間。
名稱空間有什麼用?還是以鑽石舉例,假設此時有一個模組,其中也有一個ID是diamond的“金剛石”。如果沒有名稱空間,那麼這個模組就會與原版遊戲發生衝突。而有名稱空間的情況下,這個問題就得到了解決,因為這個模組的“金剛石”,在模組中其ID實際上是:
miningindustrydiamond
關於名稱空間更深入的研究以後再來,現在讓我們來看看ID引數普遍的格式:
名稱空間ltIDgt
需要注意的是,部分ID引數名稱空間是必填的,如基岩版summon的生物事件引數。大部分ID引數名稱空間是預設為『minecraft』。
大部分ID引數都是這個格式,但也有少數ID引數在Java113更新後具有更多的格式:
方塊ID引數
名稱空間方塊ID方塊狀態方塊NBT
物品ID引數
名稱空間物品ID物品NBT
關於方塊狀態和物品NBT,我們以後再瞭解。
本章到此為止。