aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/xmod/sc2/modules/ModuleExoticSeeds.java
diff options
context:
space:
mode:
authorDavid Vierra <codewarrior@hawaii.rr.com>2018-03-31 16:27:45 -1000
committerDavid Vierra <codewarrior@hawaii.rr.com>2018-03-31 18:17:38 -1000
commit805bb5c06ebb22361f56d3d769945d7062bc34cc (patch)
tree7fd6cd6632dff3c1bbf7502a861918ce84fbd476 /src/Java/gtPlusPlus/xmod/sc2/modules/ModuleExoticSeeds.java
parent01a27512f6abce74ae21ad769a4235b50cc21b3e (diff)
downloadGT5-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.java53
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