Bump Forge version for the build script, break out the NBTHelpers to

their own helper.nbt package (because the classes are getting messy),
and starting work on cleaning up said classes
This commit is contained in:
pahimar 2013-10-29 15:49:16 -04:00
parent c580d70954
commit 16f8c09e32
16 changed files with 347 additions and 75 deletions

Binary file not shown.

View file

@ -7,7 +7,7 @@ import net.minecraft.util.StatCollector;
import org.lwjgl.opengl.GL11;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.inventory.ContainerAlchemicalBag;
import com.pahimar.ee3.lib.Strings;
import com.pahimar.ee3.lib.Textures;
@ -62,8 +62,8 @@ public class GuiAlchemicalBag extends GuiContainer {
if (mc.thePlayer != null) {
for (ItemStack itemStack : mc.thePlayer.inventory.mainInventory) {
if (itemStack != null) {
if (NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
NBTHelper.removeTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
if (GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
GeneralNBTHelper.removeTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
}
}
}

View file

@ -8,7 +8,7 @@ import net.minecraft.world.World;
import org.lwjgl.opengl.GL11;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.inventory.ContainerPortableCrafting;
import com.pahimar.ee3.lib.Strings;
import com.pahimar.ee3.lib.Textures;
@ -66,8 +66,8 @@ public class GuiPortableCrafting extends GuiContainer {
if (mc.thePlayer != null) {
for (ItemStack itemStack : mc.thePlayer.inventory.mainInventory) {
if (itemStack != null) {
if (NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
NBTHelper.removeTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
if (GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
GeneralNBTHelper.removeTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
}
}
}

View file

@ -6,7 +6,7 @@ import net.minecraft.item.ItemStack;
import org.lwjgl.opengl.GL11;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.Strings;
import com.pahimar.ee3.lib.Textures;
@ -49,8 +49,8 @@ public class GuiPortableTransmutation extends GuiContainer {
if (mc.thePlayer != null) {
for (ItemStack itemStack : mc.thePlayer.inventory.mainInventory) {
if (itemStack != null) {
if (NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
NBTHelper.removeTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
if (GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
GeneralNBTHelper.removeTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
}
}
}

View file

@ -5,7 +5,7 @@ import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import com.pahimar.ee3.configuration.ConfigurationSettings;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.Strings;
import cpw.mods.fml.common.ICraftingHandler;
@ -50,7 +50,7 @@ public class CraftingHandler implements ICraftingHandler {
for (ItemStack itemStack : player.inventory.mainInventory) {
if (itemStack != null) {
if (NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
if (GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
openStone = itemStack;
}
}
@ -61,7 +61,7 @@ public class CraftingHandler implements ICraftingHandler {
for (int i = 0; i < craftMatrix.getSizeInventory(); i++) {
itemStack = craftMatrix.getStackInSlot(i);
if (itemStack != null) {
if (NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
if (GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
openStone = itemStack;
}
}

View file

@ -6,7 +6,7 @@ import java.util.Map;
import net.minecraft.nbt.NBTTagCompound;
import com.pahimar.ee3.core.helper.LogHelper;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.emc.EmcBlackList;
import com.pahimar.ee3.emc.EmcValue;
import com.pahimar.ee3.emc.EmcValuesIMC;
@ -53,7 +53,7 @@ public class InterModCommsHandler {
NBTTagCompound encodedRecipe = imcMessage.getNBTValue();
Map<CustomWrappedStack, List<CustomWrappedStack>> decodedRecipe = NBTHelper.decodeRecipeFromNBT(encodedRecipe);
Map<CustomWrappedStack, List<CustomWrappedStack>> decodedRecipe = GeneralNBTHelper.decodeRecipeFromNBT(encodedRecipe);
if (!decodedRecipe.isEmpty()) {
for (CustomWrappedStack key : decodedRecipe.keySet()) {
@ -70,7 +70,7 @@ public class InterModCommsHandler {
NBTTagCompound encodedStack = imcMessage.getNBTValue();
CustomWrappedStack decodedStack = NBTHelper.decodeStackFromNBT(encodedStack);
CustomWrappedStack decodedStack = GeneralNBTHelper.decodeStackFromNBT(encodedStack);
if (decodedStack != null) {
if (EmcBlackList.getInstance().add(decodedStack)) {
@ -86,7 +86,7 @@ public class InterModCommsHandler {
NBTTagCompound encodedStack = imcMessage.getNBTValue();
CustomWrappedStack decodedStack = NBTHelper.decodeStackFromNBT(encodedStack);
CustomWrappedStack decodedStack = GeneralNBTHelper.decodeStackFromNBT(encodedStack);
if (decodedStack != null) {
if (EmcBlackList.getInstance().remove(decodedStack)) {
@ -104,7 +104,7 @@ public class InterModCommsHandler {
NBTTagCompound encodedEmcValueMapping = imcMessage.getNBTValue();
Map<CustomWrappedStack, EmcValue> emcValueMapping = NBTHelper.decodeEmcValueMappings(encodedEmcValueMapping);
Map<CustomWrappedStack, EmcValue> emcValueMapping = GeneralNBTHelper.decodeEmcValueMappings(encodedEmcValueMapping);
if (emcValueMapping != null && emcValueMapping.size() > 0) {
for (CustomWrappedStack stack : emcValueMapping.keySet()) {
@ -128,7 +128,7 @@ public class InterModCommsHandler {
NBTTagCompound encodedEmcValueMapping = imcMessage.getNBTValue();
Map<CustomWrappedStack, EmcValue> emcValueMapping = NBTHelper.decodeEmcValueMappings(encodedEmcValueMapping);
Map<CustomWrappedStack, EmcValue> emcValueMapping = GeneralNBTHelper.decodeEmcValueMappings(encodedEmcValueMapping);
if (emcValueMapping != null && emcValueMapping.size() > 0) {
for (CustomWrappedStack stack : emcValueMapping.keySet()) {

View file

@ -6,7 +6,7 @@ import net.minecraftforge.event.entity.item.ItemTossEvent;
import net.minecraftforge.event.entity.player.EntityItemPickupEvent;
import net.minecraftforge.event.entity.player.PlayerDropsEvent;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.Strings;
/**
@ -23,28 +23,28 @@ public class ItemEventHandler {
@ForgeSubscribe
public void onItemPickup(EntityItemPickupEvent event) {
if (NBTHelper.hasTag(event.item.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
NBTHelper.removeTag(event.item.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
if (GeneralNBTHelper.hasTag(event.item.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
GeneralNBTHelper.removeTag(event.item.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
}
else if (NBTHelper.hasTag(event.item.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
NBTHelper.removeTag(event.item.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
else if (GeneralNBTHelper.hasTag(event.item.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
GeneralNBTHelper.removeTag(event.item.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
}
else if (NBTHelper.hasTag(event.item.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
NBTHelper.removeTag(event.item.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
else if (GeneralNBTHelper.hasTag(event.item.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
GeneralNBTHelper.removeTag(event.item.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
}
}
@ForgeSubscribe
public void onItemToss(ItemTossEvent event) {
if (NBTHelper.hasTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
NBTHelper.removeTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
if (GeneralNBTHelper.hasTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
GeneralNBTHelper.removeTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
}
else if (NBTHelper.hasTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
NBTHelper.removeTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
else if (GeneralNBTHelper.hasTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
GeneralNBTHelper.removeTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
}
else if (NBTHelper.hasTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
NBTHelper.removeTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
else if (GeneralNBTHelper.hasTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
GeneralNBTHelper.removeTag(event.entityItem.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
}
}
@ -52,14 +52,14 @@ public class ItemEventHandler {
public void onPlayerDrop(PlayerDropsEvent event) {
for (EntityItem entityItem : event.drops) {
if (NBTHelper.hasTag(entityItem.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
NBTHelper.removeTag(entityItem.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
if (GeneralNBTHelper.hasTag(entityItem.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
GeneralNBTHelper.removeTag(entityItem.getEntityItem(), Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
}
else if (NBTHelper.hasTag(entityItem.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
NBTHelper.removeTag(entityItem.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
else if (GeneralNBTHelper.hasTag(entityItem.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
GeneralNBTHelper.removeTag(entityItem.getEntityItem(), Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
}
else if (NBTHelper.hasTag(entityItem.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
NBTHelper.removeTag(entityItem.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
else if (GeneralNBTHelper.hasTag(entityItem.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
GeneralNBTHelper.removeTag(entityItem.getEntityItem(), Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
}
}
}

View file

@ -6,7 +6,7 @@ import net.minecraft.block.Block;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.InterModComms;
import com.pahimar.ee3.lib.Reference;
@ -25,12 +25,12 @@ public class AddonIMCVanilla {
public static void init() {
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, NBTHelper.encodeRecipeAsNBT(Item.bucketWater, Arrays.asList(Item.bucketEmpty, Block.waterStill)));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, NBTHelper.encodeRecipeAsNBT(Item.bucketLava, Arrays.asList(Item.bucketEmpty, Block.lavaStill)));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, NBTHelper.encodeRecipeAsNBT(new ItemStack(Block.anvil, 1, 1), Arrays.asList(new ItemStack(Item.ingotIron, 20))));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, NBTHelper.encodeRecipeAsNBT(new ItemStack(Block.anvil, 1, 2), Arrays.asList(new ItemStack(Item.ingotIron, 10))));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, NBTHelper.encodeRecipeAsNBT(Item.horseArmorIron, Arrays.asList(new ItemStack(Item.ingotIron, 6))));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, NBTHelper.encodeRecipeAsNBT(Item.horseArmorGold, Arrays.asList(new ItemStack(Item.ingotGold, 6))));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, NBTHelper.encodeRecipeAsNBT(Item.horseArmorDiamond, Arrays.asList(new ItemStack(Item.diamond, 6))));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, GeneralNBTHelper.encodeRecipeAsNBT(Item.bucketWater, Arrays.asList(Item.bucketEmpty, Block.waterStill)));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, GeneralNBTHelper.encodeRecipeAsNBT(Item.bucketLava, Arrays.asList(Item.bucketEmpty, Block.lavaStill)));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, GeneralNBTHelper.encodeRecipeAsNBT(new ItemStack(Block.anvil, 1, 1), Arrays.asList(new ItemStack(Item.ingotIron, 20))));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, GeneralNBTHelper.encodeRecipeAsNBT(new ItemStack(Block.anvil, 1, 2), Arrays.asList(new ItemStack(Item.ingotIron, 10))));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, GeneralNBTHelper.encodeRecipeAsNBT(Item.horseArmorIron, Arrays.asList(new ItemStack(Item.ingotIron, 6))));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, GeneralNBTHelper.encodeRecipeAsNBT(Item.horseArmorGold, Arrays.asList(new ItemStack(Item.ingotGold, 6))));
FMLInterModComms.sendMessage(Reference.MOD_ID, InterModComms.ADD_RECIPE, GeneralNBTHelper.encodeRecipeAsNBT(Item.horseArmorDiamond, Arrays.asList(new ItemStack(Item.diamond, 6))));
}
}

View file

@ -0,0 +1,272 @@
package com.pahimar.ee3.core.helper.nbt;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.minecraft.nbt.NBTTagCompound;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
import com.pahimar.ee3.emc.EmcType;
import com.pahimar.ee3.emc.EmcValue;
import com.pahimar.ee3.item.CustomWrappedStack;
/**
* Equivalent-Exchange-3
*
* EncodedNBTHelper
*
* @author pahimar
* @license Lesser GNU Public License v3 (http://www.gnu.org/licenses/lgpl.html)
*
*/
public class EncodedNBTHelper {
public static final String TAG_NAME_COUNT = "count";
public static final String TAG_NAME_EMCVALUE = "encodedEmcValue";
public static final String TAG_NAME_STACK = "encodedStack";
public static final String TAG_NAME_STACK_VALUE_MAP = "stackValueMap";
public static final String TEMPLATE_EMCVALUE_COMPONENT_ENTRY = "componentOrdinal_%s";
public static final String TEMPLATE_STACK_VALUE_MAPPING_ENTRY = "stackValueMapping_%s";
/*
* Begin NBT encode/decode helper methods for EmcValue
*/
/**
*
* @param emcValue
* @return
*/
public static NBTTagCompound encodeEmcValue(EmcValue emcValue) {
return encodeEmcValue(TAG_NAME_EMCVALUE, emcValue);
}
/**
*
* @param tagCompoundName
* @param emcValue
* @return
*/
public static NBTTagCompound encodeEmcValue(String tagCompoundName, EmcValue emcValue) {
NBTTagCompound encodedEmcValue = new NBTTagCompound(tagCompoundName);
return encodedEmcValue;
}
/**
*
* @param nbtEncodedEmcValue
* @return
*/
public static EmcValue decodeEmcValue(NBTTagCompound nbtEncodedEmcValue) {
float[] components = new float[EmcType.TYPES.length];
return new EmcValue(components);
}
/*
* Begin NBT encode/decode helpers for CustomWrappedStacks
*/
/**
*
* @param object
* @return
*/
public static NBTTagCompound encodeStack(Object object) {
return encodeStack(TAG_NAME_STACK, object);
}
/**
*
* @param tagCompoundName
* @param object
* @return
*/
public static NBTTagCompound encodeStack(String tagCompoundName, Object object) {
NBTTagCompound encodedStack = new NBTTagCompound(tagCompoundName);
return encodedStack;
}
/**
*
* @param nbtEncodedStack
* @return
*/
public static CustomWrappedStack decodeStack(NBTTagCompound nbtEncodedStack) {
CustomWrappedStack decodedStack = null;
return decodedStack;
}
/*
* Begin NBT encode/decode helpers for Recipe inputs
*/
/**
*
* @param recipeInputs
* @return
*/
public static NBTTagCompound encodeRecipeInputs(List<?> recipeInputs) {
// TODO String constant for tag name
return encodeRecipeInputs("", recipeInputs);
}
/**
*
* @param tagCompoundName
* @param recipeInputs
* @return
*/
public static NBTTagCompound encodeRecipeInputs(String tagCompoundName, List<?> recipeInputs) {
NBTTagCompound encodedRecipeInputs = new NBTTagCompound(tagCompoundName);
return encodedRecipeInputs;
}
/**
*
* @param encodedRecipeInputs
* @return
*/
public static List<CustomWrappedStack> decodeRecipeInputs(NBTTagCompound encodedRecipeInputs) {
List<CustomWrappedStack> decodedRecipeInputs = new ArrayList<CustomWrappedStack>();
return decodedRecipeInputs;
}
/*
* Begin NBT encode/decode helpers for Recipes
*/
/**
*
* @param recipeOutput
* @param recipeInputs
* @return
*/
public static NBTTagCompound encodeRecipe(Object recipeOutput, List<?> recipeInputs) {
// TODO String constant for tag name
return encodeRecipe("", recipeOutput, recipeInputs);
}
/**
*
* @param tagCompoundName
* @param recipeOutput
* @param recipeInputs
* @return
*/
public static NBTTagCompound encodeRecipe(String tagCompoundName, Object recipeOutput, List<?> recipeInputs) {
NBTTagCompound encodedRecipe = new NBTTagCompound(tagCompoundName);
return encodedRecipe;
}
/**
*
* @param nbtEncodedRecipe
* @return
*/
public static Multimap<CustomWrappedStack, List<CustomWrappedStack>> decodeRecipe(NBTTagCompound nbtEncodedRecipe) {
Multimap<CustomWrappedStack, List<CustomWrappedStack>> decodedRecipes = HashMultimap.create();
return decodedRecipes;
}
/*
* Begin NBT encode/decode helpers for CustomWrappedStack:EmcValue mappings
*/
/**
*
* @param object
* @param emcValue
* @return
*/
public static NBTTagCompound encodeStackValueMap(Object object, EmcValue emcValue) {
// TODO String constant for tag name
return encodeStackValueMap("", object, emcValue);
}
/**
*
* @param tagCompoundName
* @param object
* @param emcValue
* @return
*/
public static NBTTagCompound encodeStackValueMap(String tagCompoundName, Object object, EmcValue emcValue) {
NBTTagCompound encodedStackValueMap = new NBTTagCompound(tagCompoundName);
if (CustomWrappedStack.canBeWrapped(object) && (emcValue != null && emcValue.getValue() > 0f)) {
Map<CustomWrappedStack, EmcValue> stackValueMap = new HashMap<CustomWrappedStack, EmcValue>();
stackValueMap.put(new CustomWrappedStack(object), emcValue);
encodedStackValueMap = encodeStackValueMap(tagCompoundName, stackValueMap);
}
return encodedStackValueMap;
}
/**
*
* @param stackValueMap
* @return
*/
public static NBTTagCompound encodeStackValueMap(Map<CustomWrappedStack, EmcValue> stackValueMap) {
// TODO String constant for tag name
return encodeStackValueMap("", stackValueMap);
}
/**
*
* @param tagCompoundName
* @param stackValueMap
* @return
*/
public static NBTTagCompound encodeStackValueMap(String tagCompoundName, Map<CustomWrappedStack, EmcValue> stackValueMap) {
NBTTagCompound encodedStackValueMap = new NBTTagCompound(tagCompoundName);
return encodedStackValueMap;
}
/**
*
* @param encodedStackValueMap
* @return
*/
public static Map<CustomWrappedStack, EmcValue> decodeStackValueMap(NBTTagCompound encodedStackValueMap) {
Map<CustomWrappedStack, EmcValue> decodedStackValueMap = new HashMap<CustomWrappedStack, EmcValue>();
return decodedStackValueMap;
}
}

View file

@ -1,4 +1,4 @@
package com.pahimar.ee3.core.helper;
package com.pahimar.ee3.core.helper.nbt;
import java.util.ArrayList;
import java.util.HashMap;
@ -26,7 +26,7 @@ import com.pahimar.ee3.lib.Strings;
* @license Lesser GNU Public License v3 (http://www.gnu.org/licenses/lgpl.html)
*
*/
public class NBTHelper {
public class GeneralNBTHelper {
public static NBTTagCompound encodeEmcValue(EmcValue emcValue) {
@ -130,8 +130,8 @@ public class NBTHelper {
Map<CustomWrappedStack, EmcValue> decodedEmcValueMapping = new HashMap<CustomWrappedStack, EmcValue>();
if (encodedEmcValueMapping.hasKey(InterModComms.STACK_TAG_NAME) && encodedEmcValueMapping.hasKey(InterModComms.EMC_VALUE_TAG_NAME)) {
CustomWrappedStack stack = NBTHelper.decodeStackFromNBT(encodedEmcValueMapping.getCompoundTag(InterModComms.STACK_TAG_NAME));
EmcValue emcValue = NBTHelper.decodeEmcValue(encodedEmcValueMapping.getCompoundTag(InterModComms.EMC_VALUE_TAG_NAME));
CustomWrappedStack stack = GeneralNBTHelper.decodeStackFromNBT(encodedEmcValueMapping.getCompoundTag(InterModComms.STACK_TAG_NAME));
EmcValue emcValue = GeneralNBTHelper.decodeEmcValue(encodedEmcValueMapping.getCompoundTag(InterModComms.EMC_VALUE_TAG_NAME));
if (stack != null && emcValue != null) {
if (stack.getWrappedStack() != null && emcValue.getValue() > 0) {

View file

@ -6,7 +6,7 @@ import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.Strings;
/**
@ -56,8 +56,8 @@ public class ContainerAlchemicalBag extends Container {
InventoryPlayer invPlayer = player.inventory;
for (ItemStack itemStack : invPlayer.mainInventory) {
if (itemStack != null) {
if (NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
NBTHelper.removeTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
if (GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
GeneralNBTHelper.removeTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN);
}
}
}

View file

@ -6,7 +6,7 @@ import net.minecraft.inventory.ContainerWorkbench;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.Strings;
/**
@ -40,8 +40,8 @@ public class ContainerPortableCrafting extends ContainerWorkbench {
InventoryPlayer invPlayer = player.inventory;
for (ItemStack itemStack : invPlayer.mainInventory) {
if (itemStack != null) {
if (NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
NBTHelper.removeTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
if (GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN)) {
GeneralNBTHelper.removeTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN);
}
}
}

View file

@ -5,7 +5,7 @@ import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.item.ItemStack;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.Strings;
/**
@ -35,8 +35,8 @@ public class ContainerPortableTransmutation extends Container {
InventoryPlayer invPlayer = player.inventory;
for (ItemStack itemStack : invPlayer.mainInventory) {
if (itemStack != null) {
if (NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
NBTHelper.removeTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
if (GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN)) {
GeneralNBTHelper.removeTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
}
}
}

View file

@ -9,7 +9,7 @@ import net.minecraft.world.World;
import com.pahimar.ee3.EquivalentExchange3;
import com.pahimar.ee3.core.helper.ItemHelper;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.Colours;
import com.pahimar.ee3.lib.GuiIds;
import com.pahimar.ee3.lib.Strings;
@ -55,7 +55,7 @@ public class ItemAlchemicalBag extends ItemEE {
public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer entityPlayer) {
if (!world.isRemote) {
NBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN, true);
GeneralNBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN, true);
entityPlayer.openGui(EquivalentExchange3.instance, GuiIds.ALCHEMICAL_BAG, entityPlayer.worldObj, (int) entityPlayer.posX, (int) entityPlayer.posY, (int) entityPlayer.posZ);
}
@ -79,7 +79,7 @@ public class ItemAlchemicalBag extends ItemEE {
public Icon getIcon(ItemStack itemStack, int renderPass) {
// If the bag is open
if (NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
if (GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_ALCHEMICAL_BAG_GUI_OPEN)) {
if (renderPass != 1)
return icons[0];
else

View file

@ -7,8 +7,8 @@ import net.minecraft.world.World;
import com.pahimar.ee3.EquivalentExchange3;
import com.pahimar.ee3.configuration.ConfigurationSettings;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.TransmutationHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.GuiIds;
import com.pahimar.ee3.lib.Strings;
@ -39,7 +39,7 @@ public class ItemMiniumStone extends ItemEE
@SideOnly(Side.CLIENT)
public boolean hasEffect(ItemStack itemStack) {
return NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN) || NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
return GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN) || GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
}
@Override
@ -85,14 +85,14 @@ public class ItemMiniumStone extends ItemEE
@Override
public void openPortableCraftingGUI(EntityPlayer thePlayer, ItemStack itemStack) {
NBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN, true);
GeneralNBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN, true);
thePlayer.openGui(EquivalentExchange3.instance, GuiIds.PORTABLE_CRAFTING, thePlayer.worldObj, (int) thePlayer.posX, (int) thePlayer.posY, (int) thePlayer.posZ);
}
@Override
public void openPortableTransmutationGUI(EntityPlayer thePlayer, ItemStack itemStack) {
NBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN, true);
GeneralNBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN, true);
thePlayer.openGui(EquivalentExchange3.instance, GuiIds.PORTABLE_TRANSMUTATION, thePlayer.worldObj, (int) thePlayer.posX, (int) thePlayer.posY, (int) thePlayer.posZ);
}

View file

@ -7,8 +7,8 @@ import net.minecraft.world.World;
import com.pahimar.ee3.EquivalentExchange3;
import com.pahimar.ee3.configuration.ConfigurationSettings;
import com.pahimar.ee3.core.helper.NBTHelper;
import com.pahimar.ee3.core.helper.TransmutationHelper;
import com.pahimar.ee3.core.helper.nbt.GeneralNBTHelper;
import com.pahimar.ee3.lib.GuiIds;
import com.pahimar.ee3.lib.Sounds;
import com.pahimar.ee3.lib.Strings;
@ -46,7 +46,7 @@ public class ItemPhilosophersStone extends ItemEE
@SideOnly(Side.CLIENT)
public boolean hasEffect(ItemStack itemStack) {
return NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN) || NBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
return GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN) || GeneralNBTHelper.hasTag(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN);
}
@Override
@ -92,14 +92,14 @@ public class ItemPhilosophersStone extends ItemEE
@Override
public void openPortableCraftingGUI(EntityPlayer thePlayer, ItemStack itemStack) {
NBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN, true);
GeneralNBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_CRAFTING_GUI_OPEN, true);
thePlayer.openGui(EquivalentExchange3.instance, GuiIds.PORTABLE_CRAFTING, thePlayer.worldObj, (int) thePlayer.posX, (int) thePlayer.posY, (int) thePlayer.posZ);
}
@Override
public void openPortableTransmutationGUI(EntityPlayer thePlayer, ItemStack itemStack) {
NBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN, true);
GeneralNBTHelper.setBoolean(itemStack, Strings.NBT_ITEM_TRANSMUTATION_GUI_OPEN, true);
thePlayer.openGui(EquivalentExchange3.instance, GuiIds.PORTABLE_TRANSMUTATION, thePlayer.worldObj, (int) thePlayer.posX, (int) thePlayer.posY, (int) thePlayer.posZ);
}
@ -112,30 +112,30 @@ public class ItemPhilosophersStone extends ItemEE
@Override
public short getCharge(ItemStack stack) {
return NBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY);
return GeneralNBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY);
}
@Override
public void setCharge(ItemStack stack, short charge) {
if (charge <= maxChargeLevel) {
NBTHelper.setShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY, charge);
GeneralNBTHelper.setShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY, charge);
}
}
@Override
public void increaseCharge(ItemStack stack) {
if (NBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY) < maxChargeLevel) {
NBTHelper.setShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY, (short) (NBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY) + 1));
if (GeneralNBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY) < maxChargeLevel) {
GeneralNBTHelper.setShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY, (short) (GeneralNBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY) + 1));
}
}
@Override
public void decreaseCharge(ItemStack stack) {
if (NBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY) > 0) {
NBTHelper.setShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY, (short) (NBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY) - 1));
if (GeneralNBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY) > 0) {
GeneralNBTHelper.setShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY, (short) (GeneralNBTHelper.getShort(stack, Strings.NBT_ITEM_CHARGE_LEVEL_KEY) - 1));
}
}