Minecraft 模組製作教學 for 1.7 – Part 6 新增物品和物品名稱!
2014 年 09 月 28 日 15:09:35 · Fetching Views...
影片
新增物品
*提醒 : 建議大家搭配影片觀看文字教學。
進入Basic.java之後,請在模組訊息下方輸入
//Items public static Item 物品名稱參數;
這個參數可以隨意命名,不過為了管理方便,我建議直接命名成你想要的物品英文名稱(不要出現空格)
新增貼圖
請開啟繪圖軟體,製作一張16*16的圖片,並且存放在影片中敘述的位置
設定Gameregistry
回到eclipse的Basic.java,請在
@EventHandler
public void preInit(FMLPreInitializationEvent e){
下方輸入
//Items
物品名稱參數 = new Item().setUnlocalizedName("物品名稱").setCreativeTab(創造模式標籤名稱).setTextureName("來源資料夾名稱" + ":" + "不含副檔名的圖片檔名");
GameRegistry.registerItem(Aluminium_ingot, "Aluminium_ingot");第二行的「物品名稱」是給Forge讀的,不能有空格。至於給玩家看的名稱會在下面介紹。
設定貼圖部分和上一篇教學是一模一樣的。
完成之後,你的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;
//Items
public static Item Aluminium_ingot;
public static Item Rocket_Fuel;
public static Item Aluminium_dust_20;
//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");
//Items
Aluminium_ingot = new Item().setUnlocalizedName("Aluminium_ingot").setCreativeTab(LEcraftTabs).setTextureName("light_energy_craft" + ":" + "aluminium_ingot");
GameRegistry.registerItem(Aluminium_ingot, "Aluminium_ingot");
Aluminium_dust_20 = new Item().setUnlocalizedName("Aluminium_dust_20").setCreativeTab(LEcraftTabs).setTextureName("light_energy_craft" + ":" + "aluminium_dust");
GameRegistry.registerItem(Aluminium_dust_20, "Aluminium_dust_20");
Rocket_Fuel = new Item().setUnlocalizedName("Rocket_Fuel").setCreativeTab(LEcraftTabs).setTextureName("light_energy_craft" + ":" + "rocket_fuel");
GameRegistry.registerItem(Rocket_Fuel, "Rocket_Fuel");
}
@EventHandler
public void init(FMLInitializationEvent event)
{
}
}
設定給玩家看的物品名稱
方法和第三篇教學雷同
細節部分就請參照第三篇教學和影片了(偷懶中…)
