Advertisement
Guest User

Untitled

a guest
Apr 9th, 2017
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.60 KB | None | 0 0
  1. package thatmartinguy.thedarkness.util;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5.  
  6. import javax.annotation.Nullable;
  7.  
  8. import net.minecraft.init.Items;
  9. import net.minecraft.item.Item;
  10. import net.minecraft.item.ItemStack;
  11. import scala.Int;
  12. import thatmartinguy.thedarkness.item.ModItems;
  13.  
  14. public class DarkPortalCrafting
  15. {
  16.     private static List<Item[]> darkPortalIngredients;
  17.     private static List<ItemStack> darkPortalOutputs;
  18.    
  19.     public static void init()
  20.     {
  21.         darkPortalIngredients = new ArrayList<Item[]>();
  22.         darkPortalOutputs = new ArrayList<ItemStack>();
  23.        
  24.         addDarkPortalRecipe(new ItemStack(ModItems.itemShadowHead), ModItems.itemHumanHeart, Items.DIAMOND_HELMET);
  25.     }
  26.    
  27.     private static void addDarkPortalRecipe(ItemStack output, Item... inputs)
  28.     {
  29.         darkPortalIngredients.add(inputs);
  30.         darkPortalOutputs.add(output);
  31.     }
  32.    
  33.     @Nullable
  34.     public static ItemStack getOutput(ItemStack... inputs)
  35.     {
  36.         for(int i = 0; i < inputs.length; i++)
  37.         {
  38.             System.out.println(inputs[i].toString());
  39.         }
  40.         if(matches(inputs) != Int.MinValue())
  41.         {
  42.             return darkPortalOutputs.get(matches(inputs));
  43.         }
  44.        
  45.         return null;
  46.     }
  47.    
  48.     private static int matches(ItemStack[] inputs)
  49.     {
  50.         int matchingItems = 0;
  51.         for(int i = 0; i < darkPortalIngredients.size(); i++)
  52.         {
  53.             for(int j = 0; i < inputs.length; j++)
  54.             {
  55.                 System.out.print(inputs[i].toString());
  56.                 if(darkPortalIngredients.get(i)[i] == inputs[j].getItem())
  57.                 {
  58.                     matchingItems++;
  59.                 }
  60.                 if(matchingItems == darkPortalIngredients.get(i).length)
  61.                 {
  62.                     return i;
  63.                 }
  64.             }
  65.         }
  66.         return Int.MinValue();
  67.     }
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement