1.首先新建一个叫mod_Block的类,代码如下
- package net.minecraft.src;
- public class mod_Block extends BaseMod
- {
- public static final Block Namehere = new BlockNamehere(160, 0).setBlockName("anynamehere").setHardness(3F).setResistance(4F).setLightValue(1F);
- public void load()
- {
- Namehere.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/image.png");
- ModLoader.registerBlock(Namehere);
- ModLoader.addName(Namehere, "In-Game Name Here");
- ModLoader.addRecipe(new ItemStack(Namehere, 1), new Object [] {"#", Character.valueOf('#'), Block.dirt});
- }
- public String getVersion()
- {
- return "1.2.5";
- }
- }
复制代码- (160,0)是在terrain.png里的位置
- 方块ID不可以高于255,125-255可以用
- Namehere.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/image.png");
复制代码 上面代码里的images.png放在mcp/lib目录下,这是这个方块的贴图,16像素x16像素大,至于images.png在哪里请自行脑补- setBlockName("anynamehere").setHardness(3F).setResistance(4F).setLightValue(1F);
复制代码 setBlockName后的括号填这个方块在游戏里显示的名字,setHardness是硬度(1-10以内,地基是-1,刷怪笼是11),setResistance是抗炸度,setLightValue是亮度(注意:亮度设置得太高MC会崩溃)每个数字后面都记得要加F哟- ModLoader.registerBlock(Namehere);
- ModLoader.addName(Namehere, "In-Game Name Here");
- ModLoader.addRecipe(new ItemStack(Namehere, 1), new Object [] {"#", Character.valueOf('#'), Block.dirt});
复制代码 registerBlock是在游戏里注册这个方块,addName后的括号内的In-Game Name Here是方块的里名字,就是你在箱子,合成台等里看见的名字,new Object后面的代码的意思是用一个泥土合成一个方块,你可以在后面的章节获得更多信息。
2.然后再新建一个类,名字取你想要的名字
- package net.minecraft.src;
- import java.util.Random;
- public class BlockNamehere extends Block
- {
- public BlockNamehere(int i, int j)
- {
- super(i, j, Material.wood);
- }
- public int idDropped(int i, Random random, int j)
- {
- return mod_Block.Namehere.blockID;
- }
- public int quantityDropped(Random random)
- {
- return 1;
- }}
复制代码- Material这个不用多说,你可以在Material.java看到所有的材料
- 你可以在idDroopped里修改破坏后掉落的物品,如果你想掉落多种物品,if可以帮到你
- quantityDropped设置掉落数量,修改return后的数字就行了
|