ActuallyAdditions/src/main/java/de/ellpeck/actuallyadditions/util/Util.java

97 lines
4.1 KiB
Java
Raw Normal View History

2015-08-29 14:33:25 +02:00
/*
* This file ("Util.java") is part of the Actually Additions Mod for Minecraft.
* It is created and owned by Ellpeck and distributed
* under the Actually Additions License to be found at
2016-01-03 16:05:51 +01:00
* http://ellpeck.de/actaddlicense/
2015-08-29 14:33:25 +02:00
* View the source code at https://github.com/Ellpeck/ActuallyAdditions
*
2016-01-03 16:05:51 +01:00
* © 2016 Ellpeck
2015-08-29 14:33:25 +02:00
*/
2015-12-30 22:02:15 +01:00
package de.ellpeck.actuallyadditions.util;
import cpw.mods.fml.common.FMLCommonHandler;
2015-12-30 22:02:15 +01:00
import de.ellpeck.actuallyadditions.items.lens.LensNoneRecipeHandler;
import de.ellpeck.actuallyadditions.recipe.CrusherRecipeRegistry;
2015-07-01 21:32:48 +02:00
import net.minecraft.block.BlockDispenser;
import net.minecraft.dispenser.BehaviorDefaultDispenseItem;
import net.minecraft.item.EnumRarity;
2015-07-01 21:32:48 +02:00
import net.minecraft.item.Item;
2015-08-28 21:17:09 +02:00
import net.minecraft.item.crafting.CraftingManager;
import net.minecraft.item.crafting.IRecipe;
import net.minecraft.util.EnumChatFormatting;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.common.util.EnumHelper;
import net.minecraftforge.oredict.OreDictionary;
import java.util.ArrayList;
2015-08-28 21:17:09 +02:00
import java.util.List;
2015-11-22 18:52:11 +01:00
import java.util.Random;
2015-08-28 21:17:09 +02:00
@SuppressWarnings("unused")
2014-12-20 21:34:07 +01:00
public class Util{
2015-11-22 18:52:11 +01:00
public static final Random RANDOM = new Random();
public static final int WILDCARD = OreDictionary.WILDCARD_VALUE;
public static final EnumRarity CRYSTAL_RED_RARITY = EnumHelper.addRarity(ModUtil.MOD_ID_LOWER+"crystalRed", EnumChatFormatting.DARK_RED, ModUtil.NAME+" Red Crystal");
public static final EnumRarity CRYSTAL_BLUE_RARITY = EnumHelper.addRarity(ModUtil.MOD_ID_LOWER+"crystalBlue", EnumChatFormatting.DARK_BLUE, ModUtil.NAME+" Blue Crystal");
public static final EnumRarity CRYSTAL_LIGHT_BLUE_RARITY = EnumHelper.addRarity(ModUtil.MOD_ID_LOWER+"crystalLightBlue", EnumChatFormatting.BLUE, ModUtil.NAME+" Light Blue Crystal");
public static final EnumRarity CRYSTAL_BLACK_RARITY = EnumHelper.addRarity(ModUtil.MOD_ID_LOWER+"crystalBlack", EnumChatFormatting.DARK_GRAY, ModUtil.NAME+" Black Crystal");
public static final EnumRarity CRYSTAL_GREEN_RARITY = EnumHelper.addRarity(ModUtil.MOD_ID_LOWER+"crystalGreen", EnumChatFormatting.DARK_GREEN, ModUtil.NAME+" Green Crystal");
public static final EnumRarity CRYSTAL_WHITE_RARITY = EnumHelper.addRarity(ModUtil.MOD_ID_LOWER+"crystalWhite", EnumChatFormatting.GRAY, ModUtil.NAME+" White Crystal");
public static final EnumRarity FALLBACK_RARITY = EnumHelper.addRarity(ModUtil.MOD_ID_LOWER+".fallback", EnumChatFormatting.STRIKETHROUGH, ModUtil.NAME+" Fallback");
public static void registerEvent(Object o){
MinecraftForge.EVENT_BUS.register(o);
2015-03-31 20:37:55 +02:00
FMLCommonHandler.instance().bus().register(o);
}
2015-07-01 21:32:48 +02:00
public static boolean isDevVersion(){
return ModUtil.VERSION.equals("@VERSION@");
}
2015-07-01 21:32:48 +02:00
public static void registerDispenserHandler(Item item, BehaviorDefaultDispenseItem handler){
BlockDispenser.dispenseBehaviorRegistry.putObject(item, handler);
2015-07-01 21:32:48 +02:00
}
2015-08-28 21:17:09 +02:00
public static int arrayContains(Object[] array, Object obj){
if(obj != null){
for(int i = 0; i < array.length; i++){
if(array[i] != null && (obj == array[i] || array[i].equals(obj))){
return i;
}
}
}
return -1;
}
public static int arrayContains(int[] array, int num){
for(int i = 0; i < array.length; i++){
if(num == array[i]){
return i;
}
}
return -1;
}
public static class GetRecipes{
public static LensNoneRecipeHandler.Recipe lastReconstructorRecipe(){
ArrayList<LensNoneRecipeHandler.Recipe> list = LensNoneRecipeHandler.recipes;
return list.get(list.size()-1);
}
public static CrusherRecipeRegistry.CrusherRecipe lastCrusherRecipe(){
ArrayList<CrusherRecipeRegistry.CrusherRecipe> list = CrusherRecipeRegistry.recipes;
return list.get(list.size()-1);
}
public static IRecipe lastIRecipe(){
List list = CraftingManager.getInstance().getRecipeList();
Object recipe = list.get(list.size()-1);
return recipe instanceof IRecipe ? (IRecipe)recipe : null;
}
}
}