diff options
author | David Vierra <codewarrior@hawaii.rr.com> | 2018-03-31 16:27:45 -1000 |
---|---|---|
committer | David Vierra <codewarrior@hawaii.rr.com> | 2018-03-31 18:17:38 -1000 |
commit | 805bb5c06ebb22361f56d3d769945d7062bc34cc (patch) | |
tree | 7fd6cd6632dff3c1bbf7502a861918ce84fbd476 /src/Java/gtPlusPlus/xmod/sc2/modules/ModuleExoticSeeds.java | |
parent | 01a27512f6abce74ae21ad769a4235b50cc21b3e (diff) | |
download | GT5-Unofficial-805bb5c06ebb22361f56d3d769945d7062bc34cc.tar.gz GT5-Unofficial-805bb5c06ebb22361f56d3d769945d7062bc34cc.tar.bz2 GT5-Unofficial-805bb5c06ebb22361f56d3d769945d7062bc34cc.zip |
Rewrite Exotic Seed Farmer as Exotic Seed Module
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/sc2/modules/ModuleExoticSeeds.java')
-rw-r--r-- | src/Java/gtPlusPlus/xmod/sc2/modules/ModuleExoticSeeds.java | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/Java/gtPlusPlus/xmod/sc2/modules/ModuleExoticSeeds.java b/src/Java/gtPlusPlus/xmod/sc2/modules/ModuleExoticSeeds.java new file mode 100644 index 0000000000..0add3fcb9b --- /dev/null +++ b/src/Java/gtPlusPlus/xmod/sc2/modules/ModuleExoticSeeds.java @@ -0,0 +1,53 @@ +package gtPlusPlus.xmod.sc2.modules; + +import gtPlusPlus.core.lib.LoadedMods; +import gtPlusPlus.core.util.reflect.ReflectionUtils; +import net.minecraft.block.Block; +import net.minecraft.block.BlockCrops; +import net.minecraft.item.Item; +import net.minecraft.item.ItemSeeds; +import net.minecraft.item.ItemStack; +import vswe.stevescarts.Carts.MinecartModular; +import vswe.stevescarts.Modules.ICropModule; +import vswe.stevescarts.Modules.Addons.ModuleAddon; + +public class ModuleExoticSeeds extends ModuleAddon implements ICropModule { + + public ModuleExoticSeeds(MinecartModular cart) { + super(cart); + } + + private synchronized Block getBlockFromItemSeeds(ItemStack seed) { + try { + + Item seedItem = seed.getItem(); + if (!(seedItem instanceof ItemSeeds)) return null; + + Block cropBlock = (Block) ReflectionUtils.getField(ItemSeeds.class, "field_150925_a").get(seedItem); + + return cropBlock; + } catch (Throwable t) { + + } + return null; + } + + @Override + public boolean isSeedValid(ItemStack seed) { + return getBlockFromItemSeeds(seed) != null; + } + + @Override + public Block getCropFromSeed(ItemStack seed) { + return getBlockFromItemSeeds(seed); + } + + @Override + public boolean isReadyToHarvest(int x, int y, int z) { + Block b = getCart().worldObj.getBlock(x, y, z); + int m = getCart().worldObj.getBlockMetadata(x, y, z); + + return b instanceof BlockCrops && m == 7; + } + +}
\ No newline at end of file |