diff --git a/src/main/java/com/glodblock/github/FluidCraft.java b/src/main/java/com/glodblock/github/FluidCraft.java index 2db5bdbb..5f1d0240 100644 --- a/src/main/java/com/glodblock/github/FluidCraft.java +++ b/src/main/java/com/glodblock/github/FluidCraft.java @@ -78,7 +78,7 @@ public class FluidCraft { } if (!ModAndClassUtil.NEW_HORIZONS_CORE_MOD) { RecipeLoader.addTerminalCards(); - RecipeLoader.addRecipesIfDreamCoreNotExist(); + RecipeLoader.addInfiniteWaterCell(); } RecipeLoader.runTerminalRecipe(); diff --git a/src/main/java/com/glodblock/github/common/item/ItemBaseInfinityStorageCell.java b/src/main/java/com/glodblock/github/common/item/ItemBaseInfinityStorageCell.java index dabc1320..c29de581 100644 --- a/src/main/java/com/glodblock/github/common/item/ItemBaseInfinityStorageCell.java +++ b/src/main/java/com/glodblock/github/common/item/ItemBaseInfinityStorageCell.java @@ -4,26 +4,21 @@ import java.util.List; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import net.minecraft.util.StatCollector; -import com.glodblock.github.api.FluidCraftAPI; import com.glodblock.github.common.storage.IFluidCellInventory; import com.glodblock.github.common.storage.IFluidCellInventoryHandler; -import com.glodblock.github.common.storage.IStorageFluidCell; import com.glodblock.github.util.NameConst; import appeng.api.AEApi; -import appeng.api.config.FuzzyMode; import appeng.api.storage.IMEInventoryHandler; import appeng.api.storage.StorageChannel; import appeng.api.storage.data.IAEFluidStack; import appeng.items.AEBaseItem; -import appeng.items.contents.CellUpgrades; import appeng.tile.inventory.AppEngInternalInventory; -public abstract class ItemBaseInfinityStorageCell extends AEBaseItem implements IStorageFluidCell { +public abstract class ItemBaseInfinityStorageCell extends AEBaseItem { protected static class InfinityConfig extends AppEngInternalInventory { @@ -36,65 +31,6 @@ public abstract class ItemBaseInfinityStorageCell extends AEBaseItem implements public void markDirty() {} } - @Override - public long getBytes(ItemStack cellItem) { - return Integer.MAX_VALUE; - } - - @Override - public int getBytesPerType(ItemStack cellItem) { - return 1; - } - - @Override - public boolean isBlackListed(ItemStack cellItem, IAEFluidStack requestedAddition) { - return requestedAddition == null || requestedAddition.getFluid() == null - || FluidCraftAPI.instance().isBlacklistedInStorage(requestedAddition.getFluid().getClass()); - } - - @Override - public abstract IInventory getConfigInventory(ItemStack is); - - @Override - public boolean storableInStorageCell() { - return false; - } - - @Override - public boolean isStorageCell(ItemStack i) { - return true; - } - - @Override - public double getIdleDrain(ItemStack is) { - return 0; - } - - @Override - public int getTotalTypes(ItemStack cellItem) { - return 0; - } - - @Override - public boolean isEditable(ItemStack is) { - return false; - } - - @Override - public IInventory getUpgradesInventory(ItemStack is) { - return new CellUpgrades(is, 0); - } - - @Override - public FuzzyMode getFuzzyMode(ItemStack is) { - return null; - } - - @Override - public void setFuzzyMode(ItemStack is, FuzzyMode fzMode) { - - } - @Override public void addCheckedInformation(final ItemStack stack, final EntityPlayer player, final List lines, final boolean displayMoreInfo) { diff --git a/src/main/java/com/glodblock/github/common/item/ItemCreativeFluidStorageCell.java b/src/main/java/com/glodblock/github/common/item/ItemCreativeFluidStorageCell.java index f417fca6..f3365de4 100644 --- a/src/main/java/com/glodblock/github/common/item/ItemCreativeFluidStorageCell.java +++ b/src/main/java/com/glodblock/github/common/item/ItemCreativeFluidStorageCell.java @@ -6,14 +6,17 @@ import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import com.glodblock.github.FluidCraft; +import com.glodblock.github.api.FluidCraftAPI; import com.glodblock.github.common.storage.IStorageFluidCell; import com.glodblock.github.common.tabs.FluidCraftingTabs; import com.glodblock.github.loader.IRegister; import com.glodblock.github.util.NameConst; import appeng.api.config.FuzzyMode; +import appeng.api.storage.data.IAEFluidStack; import appeng.core.features.AEFeature; import appeng.items.contents.CellConfig; +import appeng.items.contents.CellUpgrades; import appeng.util.Platform; import cpw.mods.fml.common.registry.GameRegistry; @@ -59,4 +62,46 @@ public class ItemCreativeFluidStorageCell extends ItemBaseInfinityStorageCell setCreativeTab(FluidCraftingTabs.INSTANCE); return this; } + + @Override + public long getBytes(ItemStack cellItem) { + return 0; + } + + @Override + public int getBytesPerType(ItemStack cellItem) { + return 0; + } + + @Override + public boolean isBlackListed(ItemStack cellItem, IAEFluidStack requestedAddition) { + return requestedAddition == null || requestedAddition.getFluid() == null + || FluidCraftAPI.instance().isBlacklistedInStorage(requestedAddition.getFluid().getClass()); + } + + @Override + public boolean storableInStorageCell() { + return false; + } + + @Override + public boolean isStorageCell(ItemStack i) { + return true; + } + + @Override + public double getIdleDrain(ItemStack is) { + return 0; + } + + @Override + public int getTotalTypes(ItemStack cellItem) { + return 0; + } + + @Override + public IInventory getUpgradesInventory(ItemStack is) { + return new CellUpgrades(is, 0); + } + } diff --git a/src/main/java/com/glodblock/github/common/item/ItemInfinityWaterStorageCell.java b/src/main/java/com/glodblock/github/common/item/ItemInfinityWaterStorageCell.java index 3308b8f0..c87d726c 100644 --- a/src/main/java/com/glodblock/github/common/item/ItemInfinityWaterStorageCell.java +++ b/src/main/java/com/glodblock/github/common/item/ItemInfinityWaterStorageCell.java @@ -8,12 +8,16 @@ import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import com.glodblock.github.FluidCraft; +import com.glodblock.github.api.FluidCraftAPI; import com.glodblock.github.common.storage.IStorageFluidCell; import com.glodblock.github.common.tabs.FluidCraftingTabs; import com.glodblock.github.loader.IRegister; import com.glodblock.github.util.NameConst; +import appeng.api.config.FuzzyMode; +import appeng.api.storage.data.IAEFluidStack; import appeng.core.features.AEFeature; +import appeng.items.contents.CellUpgrades; import cpw.mods.fml.common.registry.GameRegistry; public class ItemInfinityWaterStorageCell extends ItemBaseInfinityStorageCell @@ -38,4 +42,58 @@ public class ItemInfinityWaterStorageCell extends ItemBaseInfinityStorageCell setCreativeTab(FluidCraftingTabs.INSTANCE); return this; } + + @Override + public boolean isEditable(ItemStack is) { + return false; + } + + @Override + public long getBytes(ItemStack cellItem) { + return 0; + } + + @Override + public int getBytesPerType(ItemStack cellItem) { + return 0; + } + + @Override + public boolean isBlackListed(ItemStack cellItem, IAEFluidStack requestedAddition) { + return requestedAddition == null || requestedAddition.getFluid() == null + || FluidCraftAPI.instance().isBlacklistedInStorage(requestedAddition.getFluid().getClass()); + } + + @Override + public boolean storableInStorageCell() { + return false; + } + + @Override + public boolean isStorageCell(ItemStack i) { + return true; + } + + @Override + public double getIdleDrain(ItemStack is) { + return 0; + } + + @Override + public int getTotalTypes(ItemStack cellItem) { + return 0; + } + + @Override + public IInventory getUpgradesInventory(ItemStack is) { + return new CellUpgrades(is, 0); + } + + @Override + public FuzzyMode getFuzzyMode(ItemStack is) { + return FuzzyMode.IGNORE_ALL; + } + + @Override + public void setFuzzyMode(ItemStack is, FuzzyMode fzMode) {} } diff --git a/src/main/java/com/glodblock/github/common/storage/CreativeFluidCellInventory.java b/src/main/java/com/glodblock/github/common/storage/CreativeFluidCellInventory.java index e7e53839..a41001d8 100644 --- a/src/main/java/com/glodblock/github/common/storage/CreativeFluidCellInventory.java +++ b/src/main/java/com/glodblock/github/common/storage/CreativeFluidCellInventory.java @@ -61,7 +61,7 @@ public class CreativeFluidCellInventory extends FluidCellInventory { if (fs == null) continue; IAEFluidStack iaeFluidStack = Util.FluidUtil.createAEFluidStack(fs); if (this.cellFluids.findPrecise(iaeFluidStack) == null) { - iaeFluidStack.setStackSize(Long.MAX_VALUE); + iaeFluidStack.setStackSize(Integer.MAX_VALUE); this.cellFluids.add(iaeFluidStack); } } diff --git a/src/main/java/com/glodblock/github/loader/RecipeLoader.java b/src/main/java/com/glodblock/github/loader/RecipeLoader.java index a3f69e1d..04c4a28b 100644 --- a/src/main/java/com/glodblock/github/loader/RecipeLoader.java +++ b/src/main/java/com/glodblock/github/loader/RecipeLoader.java @@ -700,7 +700,7 @@ public class RecipeLoader implements Runnable { AE2_WIRELESS_RECEIVER)); } - public static void addRecipesIfDreamCoreNotExist() { + public static void addInfiniteWaterCell() { GameRegistry.addRecipe( new ShapedOreRecipe( INFINITY_WATER_CELL,