Minecraft 模組製作教學 for 1.7 – Part 5 方塊進階設定!
2014 年 09 月 21 日 19:09:43 · Fetching Views...
如果你還沒設置Forge、JDK和Eclipse的話你可以到這裡看看。
前言
這篇教學研究的有點久,讓大家久等了!
影片
新增貼圖
*提醒 : 建議大家搭配影片觀看文字教學。
新增完貼圖的圖片後,請在Basic.java中
方塊變數 = new 方塊class().setBlockName("方塊變數")
的後面加上這段內碼(詳細位置請見影片) :
.setBlockTextureName(Basic.modid + ":" + "不含附檔名的圖檔名稱");
完成這一步之後,你的Basic.java應該長得像這樣 :
Basic.java
package lecraft.Basic; import lecraft.Block.Bauxite; import net.minecraft.block.Block; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraftforge.common.MinecraftForge; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.registry.GameRegistry; @Mod(modid = Basic.modid, version = Basic.version) public class Basic { public static final String modid = "light_energy_craft"; public static final String version = "beta 0v1a"; //Blocks public static Block Bauxite; //Creative Tabs public static CreativeTabs LEcraftTabs = new CreativeTabs("LEcraftTab"){ public Item getTabIconItem() { return Items.glowstone_dust; } @EventHandler public void preInit(FMLPreInitializationEvent e){ //blocks Bauxite = new Bauxite().setBlockName("Bauxite").setBlockTextureName(Basic.modid + ":" + "bauxite"); GameRegistry.registerBlock(Bauxite, "Bauxite"); } @EventHandler public void init(FMLInitializationEvent event) { } }
更多設定
打開上一集建立的方塊專屬的Class檔,並且在
public class檔名() { }
之中加入以下程式碼
super(Material.iron); //設定質地為鐵礦 setCreativeTab(Basic.創造模式標籤名); //設定創造模式標籤 setHardness(3); //設定硬度為3 setHarvestLevel("pickaxe", 2);
要特別說明的是setHarvestLevel
setHarvestLevel指定方塊能用甚麼工具開採,shovel代表鏟子、pickaxe代表十字鎬。
後面的數字代表等級: 0:木製,1:石製,2:鐵製,3:鑽石製
補充
影片中提到所謂的「來源資料夾名稱」指的是下圖所標示的文字
Minecraft Wiki 方塊硬度表 : http://minecraft-zh.gamepedia.com/%E6%8C%96%E6%8E%98#.E6.96.B9.E5.9D.97.E7.A1.AC.E5.BA.A6