diff --git a/java/net/universe_factory/minecraft/test/Test.java b/java/net/universe_factory/minecraft/test/Test.java index 3b8a635..06de7ad 100644 --- a/java/net/universe_factory/minecraft/test/Test.java +++ b/java/net/universe_factory/minecraft/test/Test.java @@ -2,12 +2,15 @@ package net.universe_factory.minecraft.test; import java.util.ArrayList; +import net.minecraft.init.Blocks; import net.minecraft.item.Item; import net.minecraft.item.ItemFood; +import net.minecraft.item.ItemSeeds; import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.terraingen.BiomeEvent.CreateDecorator; +import net.universe_factory.minecraft.test.generic.GenericCrops; import net.universe_factory.minecraft.test.generic.GenericWood; import cpw.mods.fml.common.Mod; 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 public void preInit(FMLInitializationEvent event) { MinecraftForge.TERRAIN_GEN_BUS.register(new TerrainGenHandler()); GameRegistry.registerItem(cherries, "cherries"); - cherryTree.register(); + + GameRegistry.registerItem(saladSeeds, "seeds_salad"); + GameRegistry.registerItem(salad, "salad"); + GameRegistry.registerBlock(saladField, null, "salad"); } public class TerrainGenHandler { diff --git a/java/net/universe_factory/minecraft/test/generic/GenericCrops.java b/java/net/universe_factory/minecraft/test/generic/GenericCrops.java new file mode 100644 index 0000000..384dae3 --- /dev/null +++ b/java/net/universe_factory/minecraft/test/generic/GenericCrops.java @@ -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(); +} diff --git a/resources/assets/neoraider_test/lang/en_US.lang b/resources/assets/neoraider_test/lang/en_US.lang index c72e490..f7ed057 100644 --- a/resources/assets/neoraider_test/lang/en_US.lang +++ b/resources/assets/neoraider_test/lang/en_US.lang @@ -6,3 +6,7 @@ tile.leavesCherry.name=Cherry Tree Leaves tile.saplingCherry.name=Cherry Tree Sapling tile.woodSlabCherry.name=Cherry Tree Wood Slab tile.stairsWoodCherry.name=Cherry Tree Wood Stairs + +item.salad.name=Salad +item.seedsSalad.name=Salad Seeds +tile.salad.name=Salad