diff options
author | Detrav <witalyezep@gmail.com> | 2016-10-02 20:52:09 +0300 |
---|---|---|
committer | Detrav <witalyezep@gmail.com> | 2016-10-02 20:52:09 +0300 |
commit | 50b1a61db43acb9e50506119a5a3861affa5a414 (patch) | |
tree | 45c6f01280d1b92a086f21054bcdafea0e01e5c8 /src/main/java/com/detrav/events/DetravCraftingEventHandler.java | |
parent | 2c6380276338c912a44697aa183028e655e8b01c (diff) | |
download | GT5-Unofficial-50b1a61db43acb9e50506119a5a3861affa5a414.tar.gz GT5-Unofficial-50b1a61db43acb9e50506119a5a3861affa5a414.tar.bz2 GT5-Unofficial-50b1a61db43acb9e50506119a5a3861affa5a414.zip |
WTF!!!
Diffstat (limited to 'src/main/java/com/detrav/events/DetravCraftingEventHandler.java')
-rw-r--r-- | src/main/java/com/detrav/events/DetravCraftingEventHandler.java | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/main/java/com/detrav/events/DetravCraftingEventHandler.java b/src/main/java/com/detrav/events/DetravCraftingEventHandler.java new file mode 100644 index 0000000000..0350b9b7b7 --- /dev/null +++ b/src/main/java/com/detrav/events/DetravCraftingEventHandler.java @@ -0,0 +1,46 @@ +package com.detrav.events; + +import com.detrav.utils.DetravRepairRecipe; +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import cpw.mods.fml.common.gameevent.PlayerEvent; +import gregtech.api.util.GT_Utility; +import net.minecraft.inventory.InventoryCrafting; +import net.minecraft.item.ItemStack; +import net.minecraftforge.common.MinecraftForge; + +/** + * Created by Detrav on 02.10.2016. + */ +public class DetravCraftingEventHandler { + @SubscribeEvent + public void onCrafting(PlayerEvent.ItemCraftedEvent e) { + if(DetravRepairRecipe.INSTANCE == null) return; + if(!(e.craftMatrix instanceof InventoryCrafting)) return; + if(DetravRepairRecipe.INSTANCE.matches((InventoryCrafting) e.craftMatrix,null)) + { + if(!GT_Utility.areStacksEqual(e.crafting, e.craftMatrix.getStackInSlot(4),true)) return; + for(int i =0; i<e.craftMatrix.getSizeInventory(); i++) { + ItemStack stack = e.craftMatrix.getStackInSlot(i); + if(stack == null) continue; + if (stack.stackSize < 2) + e.craftMatrix.setInventorySlotContents(i, null); + else { + //stack.stackSize -= 1; + //e.craftMatrix.setInventorySlotContents(i,stack); + } + } + } + } + + static boolean inited = false; + + public static void register() { + if (!inited) { + inited = true; + DetravCraftingEventHandler handler = new DetravCraftingEventHandler(); + MinecraftForge.EVENT_BUS.register(handler); + FMLCommonHandler.instance().bus().register(handler); + } + } +} |