在這個教學,我會教你如何在你的模組加入一個基本的方塊。
我將會由第二章的教學開始,也就是這編碼:
package Tutorial;
import
net.minecraft.block.Block;
import
cpw.mods.fml.common.Mod;
import
cpw.mods.fml.common.Mod.Init;
import
cpw.mods.fml.common.event.FMLInitializationEvent;
import
cpw.mods.fml.common.network.NetworkMod;
@Mod(modid = "Seer_TutorialMod",
name = "TutorialMod", version = "1.0.0")
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
public class Tutorial {
@Init
public void load(FMLInitializationEvent event)
{
}
}
首先第一件事是在@Init的上面加上這句:
public static Block tutorialBlock;
(TutorialBlock可改成其他名字,但不可以有空格)
你也需要import
net.minecraft.src.Block,按下Ctrl+Shift+O,你會看到以下的視窗:
會出現這個東西是因為它有幾個選擇讓你import,
這邊請選擇第一個「net.minecraft.block.Block」。
這句是import的東西:
import net.minecraft.block.Block;
然後你要在public void load(FMLInitializationEvent event)裡面加上這句:
tutorialBlock = new BlockTutorialBlock(250, 0).setBlockName("tutorialBlock");
TutorialBlock,
這個需要和剛剛增加的句子的藍色部分一樣;
BlockTutorialBlock,
這個是方塊本體檔案的名字,建議以Block開頭作分辨。
(250, 0),
這邊有兩個數字,第一個是方塊ID,第二個是材質位置;
材質位置是方塊或物品在材質檔案的位置,
0是左上角,1是左上角的右一格,2是左上角的右二格,
所以16就是右上角,如此類推,
現在還沒設定圖片的話會用遊戲內置terrain.png的圖案,
過幾章會說如何設定自己的材質;
setBlockName("tutorialBlock"),
這個名字基本上沒什麼用,不要和其他東西重覆就好了。
現在你應該會在BlockTutorialBlock有錯誤,因為你還沒弄這個方塊檔案,
這時候點左邊那行的錯誤圖示,應該會出現像這樣的東西:
直接像圖片一樣選擇Create File,然後直接按Finish,不要修改任何東西。
Eclipse會直接幫你創建方塊檔案:
第一件事是要在public class BlockTutorialBlock的後面加上extends Block,
然後一樣import
net.minecraft.block。
做完這個之後就會變成BlockTutorialBlock有錯誤,
你需要加上這句:
public BlockTutorialBlock(int id, int texture)
{
super(id, texture, Material.rock);
}
這句需要在public class BlockTutorialBlock extends Block的方式下面加上。
同樣Ctrl+Shift+O 來增加「import
net.minecraft.block.material.Material; 」。
Material.rock:
物品的質料,也就是用什麼工具才適合採集,還有能不能被活塞推動等等條件。
詳細的質料表會在打了「Material.」之後出現。
BlockTutorialBlock:
改成和你的方塊檔案名一樣。
這時候你的方塊檔案應該就沒有錯誤了。
另一樣你應該會想增加的東西是把物品放到創造模式欄中,
你可以在「super(id, texture, Material.rock); 」的下面加上這行:
this.setCreativeTab(CreativeTabs.tabBlock);
然後一樣用Ctrl+Shift+O」來import。
this:
這個東西和英文解釋一樣,簡單來說就是「這個東西」這意思;
(CreativeTabs.tabBlock) :
這就是設定創造模式的方塊位置的位置,
在打完「CreativeTabs. 」能看到整個列表。
現在方塊自己的檔案就差不多了,這是整個方塊檔案的編碼:
package Tutorial;
import
net.minecraft.block.Block;
import
net.minecraft.block.material.Material;
import
net.minecraft.creativetab.CreativeTabs;
public class BlockTutorialBlock extends Block{
public BlockTutorialBlock(int id, int texture)
{
super(id, texture, Material.rock);
this.setCreativeTab(CreativeTabs.tabBlock);
}
}
別以為這樣就搞定了,讓我們回到主檔案:
(模組的主檔案,也就是我的Tutorial.java)
這時候我們需要在@Init裡面加上這兩句:
GameRegistry.registerBlock(tutorialBlock, "Tutorial_tutorialBlock");
LanguageRegistry.addName(tutorialBlock,
"Tutorial Block");
Import優先處理。
GameRegistry.registerBlock是告訴Forge,這個東西是個方塊,
藍色和淺藍色部分一樣要和public
static Block那邊一樣;
而LanguageRegistry就是設定Minecraft在遊戲中實際顯示出來的名字,
TutorialBlock:
和之前的藍色部分要一樣;
"Tutorial Block":
實際顯示出來的名字。放心,引號不會顯示的。
這邊就可以有空格了,總之取個好聽的名字吧!
當你完成了以上的工作,你的第一個自訂方塊就完成了,歡呼吧!(什麼
以下是主檔案完成後的編碼:
補充:
如果想試一下你的模組運行得如何,你可以點上面一列的這個按鈕:
如果需要選擇,請選「Run client」(類似的東西),就可以測試了。
如果Crash就當然是你哪裡弄錯啦(笑
結束!(喂
You can download the source code over here.
When you are done you should go back to the tutorials list here.




ROBLOX is driven by an ever growing player base of over 300,000 creators who generate an infinite variety of highly immersive experiences.
BeantwoordenVerwijderenThese experiences range from 3D games and competitions, to interactive adventures where friends can take on new avatars to explore what it would be like to be a dinosaur, a miner working a mine or an astronaut out in space.