ActuallyAdditions/src/main/java/de/ellpeck/actuallyadditions/mod/items/base/ItemSeed.java

62 lines
1.8 KiB
Java
Raw Normal View History

package de.ellpeck.actuallyadditions.mod.items.base;
2015-05-20 22:39:43 +02:00
import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
2016-01-05 04:47:35 +01:00
import de.ellpeck.actuallyadditions.mod.blocks.base.BlockPlant;
2016-03-18 18:38:39 +01:00
import de.ellpeck.actuallyadditions.mod.util.ItemUtil;
2015-05-20 22:39:43 +02:00
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState;
2015-06-28 03:12:32 +02:00
import net.minecraft.init.Blocks;
2015-05-20 22:39:43 +02:00
import net.minecraft.item.EnumRarity;
import net.minecraft.item.Item;
2015-05-22 17:48:50 +02:00
import net.minecraft.item.ItemSeeds;
2015-05-20 22:39:43 +02:00
import net.minecraft.item.ItemStack;
2016-03-18 23:47:22 +01:00
import net.minecraft.util.math.BlockPos;
2015-05-20 22:39:43 +02:00
import net.minecraft.world.IBlockAccess;
2019-05-02 09:10:29 +02:00
public class ItemSeed extends ItemSeeds {
2015-05-20 22:39:43 +02:00
2016-05-19 20:05:12 +02:00
public final Block plant;
public final String name;
public final String oredictName;
2015-05-20 22:39:43 +02:00
2019-05-02 09:10:29 +02:00
public ItemSeed(String name, String oredictName, Block plant, Item returnItem, int returnMeta) {
2016-04-20 21:39:03 +02:00
super(plant, Blocks.FARMLAND);
2015-05-20 22:39:43 +02:00
this.name = name;
this.oredictName = oredictName;
2015-05-20 22:39:43 +02:00
this.plant = plant;
2015-12-20 23:38:24 +01:00
2019-05-02 09:10:29 +02:00
if (plant instanceof BlockPlant) {
((BlockPlant) plant).doStuff(this, returnItem, returnMeta);
2015-12-20 23:38:24 +01:00
}
this.register();
}
2019-05-02 09:10:29 +02:00
private void register() {
2016-03-18 18:38:39 +01:00
ItemUtil.registerItem(this, this.getBaseName(), this.shouldAddCreative());
this.registerRendering();
}
2019-05-02 09:10:29 +02:00
protected String getBaseName() {
return this.name;
2015-05-20 22:39:43 +02:00
}
2019-05-02 09:10:29 +02:00
public boolean shouldAddCreative() {
2015-12-19 10:30:39 +01:00
return true;
}
2019-05-02 09:10:29 +02:00
protected void registerRendering() {
2018-05-10 11:38:58 +02:00
ActuallyAdditions.PROXY.addRenderRegister(new ItemStack(this), this.getRegistryName(), "inventory");
2016-02-01 17:49:55 +01:00
}
2015-05-20 22:39:43 +02:00
@Override
2019-05-02 09:10:29 +02:00
public EnumRarity getRarity(ItemStack stack) {
return EnumRarity.RARE;
2015-05-20 22:39:43 +02:00
}
2015-10-03 10:19:40 +02:00
@Override
2019-05-02 09:10:29 +02:00
public IBlockState getPlant(IBlockAccess world, BlockPos pos) {
return this.plant.getDefaultState();
2015-05-20 22:39:43 +02:00
}
2015-05-22 17:48:50 +02:00
}