Implement GenericCrops class and add salad
This commit is contained in:
parent
c9cdc60c05
commit
035b35d528
3 changed files with 86 additions and 1 deletions
|
@ -2,12 +2,15 @@ package net.universe_factory.minecraft.test;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
import net.minecraft.init.Blocks;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemFood;
|
import net.minecraft.item.ItemFood;
|
||||||
|
import net.minecraft.item.ItemSeeds;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.common.MinecraftForge;
|
import net.minecraftforge.common.MinecraftForge;
|
||||||
import net.minecraftforge.event.terraingen.BiomeEvent.CreateDecorator;
|
import net.minecraftforge.event.terraingen.BiomeEvent.CreateDecorator;
|
||||||
|
import net.universe_factory.minecraft.test.generic.GenericCrops;
|
||||||
import net.universe_factory.minecraft.test.generic.GenericWood;
|
import net.universe_factory.minecraft.test.generic.GenericWood;
|
||||||
import cpw.mods.fml.common.Mod;
|
import cpw.mods.fml.common.Mod;
|
||||||
import cpw.mods.fml.common.Mod.EventHandler;
|
import cpw.mods.fml.common.Mod.EventHandler;
|
||||||
|
@ -56,13 +59,36 @@ public class Test {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
public static final GenericCrops saladField = new GenericCrops() {
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return "salad";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Item itemCrops() {
|
||||||
|
return salad;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Item itemSeeds() {
|
||||||
|
return saladSeeds;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
public static final Item saladSeeds = new ItemSeeds(saladField, Blocks.farmland).setTextureName(MODID + ":seeds_salad")
|
||||||
|
.setUnlocalizedName("seedsSalad");
|
||||||
|
public static final Item salad = new ItemFood(3, 0.8f, false).setTextureName(MODID + ":salad").setUnlocalizedName("salad");
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void preInit(FMLInitializationEvent event) {
|
public void preInit(FMLInitializationEvent event) {
|
||||||
MinecraftForge.TERRAIN_GEN_BUS.register(new TerrainGenHandler());
|
MinecraftForge.TERRAIN_GEN_BUS.register(new TerrainGenHandler());
|
||||||
|
|
||||||
GameRegistry.registerItem(cherries, "cherries");
|
GameRegistry.registerItem(cherries, "cherries");
|
||||||
|
|
||||||
cherryTree.register();
|
cherryTree.register();
|
||||||
|
|
||||||
|
GameRegistry.registerItem(saladSeeds, "seeds_salad");
|
||||||
|
GameRegistry.registerItem(salad, "salad");
|
||||||
|
GameRegistry.registerBlock(saladField, null, "salad");
|
||||||
}
|
}
|
||||||
|
|
||||||
public class TerrainGenHandler {
|
public class TerrainGenHandler {
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
package net.universe_factory.minecraft.test.generic;
|
||||||
|
|
||||||
|
import net.minecraft.block.BlockCrops;
|
||||||
|
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||||
|
import net.minecraft.item.Item;
|
||||||
|
import net.minecraft.util.IIcon;
|
||||||
|
import net.universe_factory.minecraft.test.Test;
|
||||||
|
import cpw.mods.fml.relauncher.Side;
|
||||||
|
import cpw.mods.fml.relauncher.SideOnly;
|
||||||
|
|
||||||
|
public abstract class GenericCrops extends BlockCrops {
|
||||||
|
@SideOnly(Side.CLIENT)
|
||||||
|
private IIcon[] icons;
|
||||||
|
|
||||||
|
protected GenericCrops() {
|
||||||
|
setBlockName(getName());
|
||||||
|
setBlockTextureName(Test.MODID + ":" + getName().toLowerCase());
|
||||||
|
}
|
||||||
|
|
||||||
|
@SideOnly(Side.CLIENT)
|
||||||
|
public IIcon getIcon(int side, int meta) {
|
||||||
|
if (meta < 7) {
|
||||||
|
if (meta == 6) {
|
||||||
|
meta = 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.icons[meta >> 1];
|
||||||
|
} else {
|
||||||
|
return this.icons[3];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Item func_149866_i() {
|
||||||
|
return itemSeeds();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Item func_149865_P() {
|
||||||
|
return itemCrops();
|
||||||
|
}
|
||||||
|
|
||||||
|
@SideOnly(Side.CLIENT)
|
||||||
|
public void registerBlockIcons(IIconRegister iconRegister) {
|
||||||
|
this.icons = new IIcon[4];
|
||||||
|
|
||||||
|
for (int i = 0; i < this.icons.length; ++i) {
|
||||||
|
this.icons[i] = iconRegister.registerIcon(this.getTextureName() + "_stage_" + i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public abstract String getName();
|
||||||
|
|
||||||
|
public abstract Item itemCrops();
|
||||||
|
|
||||||
|
public abstract Item itemSeeds();
|
||||||
|
}
|
|
@ -6,3 +6,7 @@ tile.leavesCherry.name=Cherry Tree Leaves
|
||||||
tile.saplingCherry.name=Cherry Tree Sapling
|
tile.saplingCherry.name=Cherry Tree Sapling
|
||||||
tile.woodSlabCherry.name=Cherry Tree Wood Slab
|
tile.woodSlabCherry.name=Cherry Tree Wood Slab
|
||||||
tile.stairsWoodCherry.name=Cherry Tree Wood Stairs
|
tile.stairsWoodCherry.name=Cherry Tree Wood Stairs
|
||||||
|
|
||||||
|
item.salad.name=Salad
|
||||||
|
item.seedsSalad.name=Salad Seeds
|
||||||
|
tile.salad.name=Salad
|
||||||
|
|
Reference in a new issue