Add creative frequencies to the entangled blocks.
Adds the uility of being able to generate "infinite" (Integer.MAX_VALUE) amounts of fluids or gases.
This commit is contained in:
parent
0bab2c21e6
commit
84c13e098c
3 changed files with 49 additions and 1 deletions
|
@ -163,6 +163,14 @@ public class GasTank
|
|||
return maxGas;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the maximum amount of gas this tank can hold
|
||||
*/
|
||||
public void setMaxGas(int capacity)
|
||||
{
|
||||
maxGas = capacity;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the GasStack held by this GasTank.
|
||||
* @return - GasStakc held by this tank
|
||||
|
|
|
@ -125,7 +125,6 @@ public class GuiEntangledBlock extends GuiMekanism
|
|||
String prevFreq = frequencyField != null ? frequencyField.getText() : "";
|
||||
|
||||
frequencyField = new GuiTextField(fontRendererObj, guiWidth + 75, guiHeight + 55, 96, 11);
|
||||
frequencyField.setMaxStringLength(10);
|
||||
frequencyField.setText(prevFreq);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,15 @@
|
|||
package mekanism.common.teleportation;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
|
||||
import mekanism.api.gas.GasRegistry;
|
||||
import mekanism.api.gas.GasStack;
|
||||
|
||||
import net.minecraftforge.fluids.FluidRegistry;
|
||||
import net.minecraftforge.fluids.FluidRegistry.FluidRegisterEvent;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
public class SharedInventoryManager
|
||||
{
|
||||
|
@ -22,6 +31,38 @@ public class SharedInventoryManager
|
|||
inventories.put(frequency, inv);
|
||||
}
|
||||
|
||||
if(frequency.startsWith("creative."))
|
||||
{
|
||||
Iterator<String> creativeFreqs = Arrays.asList(frequency.substring(9).split("\\.")).iterator();
|
||||
while(creativeFreqs.hasNext())
|
||||
{
|
||||
String type = creativeFreqs.next();
|
||||
if(type.equals("energy"))
|
||||
{
|
||||
inv.MAX_ENERGY = Integer.MAX_VALUE;
|
||||
inv.setEnergy(Integer.MAX_VALUE);
|
||||
}
|
||||
else if(type.equals("fluid") && creativeFreqs.hasNext())
|
||||
{
|
||||
String fluidType = creativeFreqs.next();
|
||||
if(FluidRegistry.isFluidRegistered(fluidType))
|
||||
{
|
||||
inv.storedFluid.setCapacity(Integer.MAX_VALUE);
|
||||
inv.storedFluid.setFluid(new FluidStack(FluidRegistry.getFluid(fluidType), Integer.MAX_VALUE));
|
||||
}
|
||||
}
|
||||
else if(type.equals("gas") && creativeFreqs.hasNext())
|
||||
{
|
||||
String gasType = creativeFreqs.next();
|
||||
if(GasRegistry.containsGas(gasType))
|
||||
{
|
||||
inv.storedGas.setMaxGas(Integer.MAX_VALUE);
|
||||
inv.storedGas.setGas(new GasStack(GasRegistry.getGas(gasType), Integer.MAX_VALUE));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return inv;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue