diff options
Diffstat (limited to 'src/Java/gtPlusPlus/RoadMap.java')
-rw-r--r-- | src/Java/gtPlusPlus/RoadMap.java | 35 |
1 files changed, 27 insertions, 8 deletions
diff --git a/src/Java/gtPlusPlus/RoadMap.java b/src/Java/gtPlusPlus/RoadMap.java index 11714ef2cb..47a0116192 100644 --- a/src/Java/gtPlusPlus/RoadMap.java +++ b/src/Java/gtPlusPlus/RoadMap.java @@ -1,12 +1,5 @@ package gtPlusPlus; -import java.util.Iterator; -import java.util.LinkedHashMap; - -import gregtech.api.util.GT_Utility; -import gtPlusPlus.api.objects.data.ObjMap; -import net.minecraft.item.ItemStack; - /** * This Class purely exists to note down ideas and or plans to (re)implement things. * @@ -70,6 +63,32 @@ public class RoadMap { return false; }*/ - +/* private static final LinkedHashMap<String, ObjMap<Integer, Boolean>>mCachedResults = new LinkedHashMap<String, ObjMap<Integer, Boolean>>(); + + public boolean contains(ItemStack aStack) { + if (aStack == null){ + return false; + } + ObjMap<Integer, Boolean> aCurrentSet = mCachedResults.get(this.toString().toUpperCase()); + if (aCurrentSet == null){ + aCurrentSet = new ObjMap<Integer, Boolean>((mPrefixedItems != null && mPrefixedItems.size() > 0 ? mPrefixedItems.size() : 1000), 0.5f); + mCachedResults.put(this.toString().toUpperCase(), aCurrentSet); + } + int mainHash = Objects.hashCode(aStack.getItem(), aStack.getItemDamage()); + Boolean result = aCurrentSet.get(mainHash); + if (result != null){ + return result; + } + else { + for (ItemStack tStack : mPrefixedItems){ + if (GT_Utility.areStacksEqual(aStack, tStack, !tStack.hasTagCompound())){ + aCurrentSet.put(Objects.hashCode(tStack.getItem(), tStack.getItemDamage()), true); + return true; + } + } + } + aCurrentSet.put(mainHash, false); + return false; + }*/ } |