package mods.recipear; import java.util.ArrayList; public class BannedRecipes { private static ArrayList<BannedRecipe> BannedRecipes = new ArrayList<BannedRecipe>(); private static ArrayList<String> BannedRecipeTypes = new ArrayList<String>(); public static ArrayList<String> getBannedRecipeTypes() { return BannedRecipeTypes; } public static void setBannedRecipes(ArrayList<BannedRecipe> bannedRecipes) { BannedRecipes = bannedRecipes; } public static ArrayList<BannedRecipe> getBannedRecipes() { return BannedRecipes; } public static boolean Check(String NAME, String TYPE) { NAME = NAME.replaceAll("\\s+","").toLowerCase(); if(NAME.equals("unknown")) { return false; } BannedRecipe bannedrecipe = new BannedRecipe(NAME, "DEFAULT"); if(BannedRecipes.contains(bannedrecipe)) return true; bannedrecipe.type = TYPE; if(BannedRecipes.contains(bannedrecipe)) return true; return false; } public static boolean Check(int ID, int METADATA, String TYPE) { // this method will always check ITEMID no matter what (kinda obvious) // Check if the BannedRecipe have ITEMID:METADATA(set):DEFAULT(not set) BannedRecipe bannedrecipe = new BannedRecipe(ID, METADATA, "DEFAULT"); if(BannedRecipes.contains(bannedrecipe)) return true; // Check if the BannedRecipe have ITEMID:METADATA(set):TYPE(set) bannedrecipe.type = TYPE; if(BannedRecipes.contains(bannedrecipe)) return true; //Check if BannedRecipe have ITEMID:-1(not set):DEFAULT(not set) bannedrecipe.type = "DEFAULT"; bannedrecipe.metadata = -1; if(BannedRecipes.contains(bannedrecipe)) return true; // Check if BannedRecipe have ITEMID:-1(not set):TYPE(set) bannedrecipe.type = TYPE; if(BannedRecipes.contains(bannedrecipe)) return true; return false; } public static boolean CheckSpecifically(int ID, int METADATA, String TYPE) { BannedRecipe bannedrecipe = new BannedRecipe(ID, METADATA, TYPE); if(BannedRecipes.contains(bannedrecipe)) { return true; } return false; } public static boolean CheckSpecifically(int ID, String TYPE) { BannedRecipe bannedrecipe = new BannedRecipe(ID, -1, TYPE); if(BannedRecipes.contains(bannedrecipe)) { return true; } return false; } public static boolean CheckSpecifically(String NAME, String TYPE) { BannedRecipe bannedrecipe = new BannedRecipe(NAME, TYPE); if(BannedRecipes.contains(bannedrecipe)) { return true; } return false; } public static void AddBannedRecipe(String name, String type) { AddBannedRecipe(new BannedRecipe(name, type)); } public static void AddBannedRecipe(int id, int metadata, String type) { AddBannedRecipe(new BannedRecipe(id, metadata, type)); } public static void AddBannedRecipe(BannedRecipe bannedrecipe) { BannedRecipes.add(bannedrecipe); } public static int GetBannedRecipeAmount() { return BannedRecipes.size(); } public static int GetBannedRecipeAmountByType(String type) { int count = 0; for (BannedRecipe bannedrecipe : BannedRecipes) if(bannedrecipe.type.equals(type)) count++; return count; } public static void AddBannedRecipeType(String... types) { for(String type : types){ BannedRecipeTypes.add(type); } } }