Fixed fluid names with other mods

This commit is contained in:
Calclavia 2014-02-27 20:57:56 +08:00
parent 16500fb538
commit a41cb4998f
5 changed files with 36 additions and 35 deletions

View file

@ -92,25 +92,28 @@ public class TileGenerator extends TileElectrical implements IRotatable
{ {
long torqueRatio = (long) ((gearRatio + 1) / 4d * (extract)); long torqueRatio = (long) ((gearRatio + 1) / 4d * (extract));
final float maxAngularVelocity = extract / (float) torqueRatio; if (torqueRatio > 0)
{
final float maxAngularVelocity = extract / (float) torqueRatio;
final long maxTorque = (long) (((double) extract) / maxAngularVelocity); final long maxTorque = (long) (((double) extract) / maxAngularVelocity);
float setAngularVelocity = maxAngularVelocity; float setAngularVelocity = maxAngularVelocity;
long setTorque = maxTorque; long setTorque = maxTorque;
long currentTorque = Math.abs(mech.getTorque()); long currentTorque = Math.abs(mech.getTorque());
if (currentTorque != 0) if (currentTorque != 0)
setTorque = Math.min(setTorque, maxTorque) * (mech.getTorque() / currentTorque); setTorque = Math.min(setTorque, maxTorque) * (mech.getTorque() / currentTorque);
float currentVelo = Math.abs(mech.getAngularVelocity()); float currentVelo = Math.abs(mech.getAngularVelocity());
if (currentVelo != 0) if (currentVelo != 0)
setAngularVelocity = Math.min(+setAngularVelocity, maxAngularVelocity) * (mech.getAngularVelocity() / currentVelo); setAngularVelocity = Math.min(+setAngularVelocity, maxAngularVelocity) * (mech.getAngularVelocity() / currentVelo);
mech.setTorque(setTorque); mech.setTorque(setTorque);
mech.setAngularVelocity(setAngularVelocity); mech.setAngularVelocity(setAngularVelocity);
energy.extractEnergy((long) Math.abs(setTorque * setAngularVelocity), true); energy.extractEnergy((long) Math.abs(setTorque * setAngularVelocity), true);
}
} }
} }
} }

View file

@ -181,13 +181,13 @@ public abstract class PartConductor extends PartAdvanced implements IConductor
public void save(NBTTagCompound nbt) public void save(NBTTagCompound nbt)
{ {
super.save(nbt); super.save(nbt);
nbt.setLong("savedBuffer", this.getNetwork().getBufferOf(this)); nbt.setLong("savedBuffer", getNetwork().getBufferOf(this));
} }
@Override @Override
public void load(NBTTagCompound nbt) public void load(NBTTagCompound nbt)
{ {
super.load(nbt); super.load(nbt);
this.getNetwork().setBufferFor(this, nbt.getLong("savedBuffer")); getNetwork().setBufferFor(this, nbt.getLong("savedBuffer"));
} }
} }

View file

@ -45,6 +45,7 @@ import calclavia.lib.utility.nbt.SaveManager;
import com.google.common.collect.HashBiMap; import com.google.common.collect.HashBiMap;
import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
@ -120,6 +121,15 @@ public class ResourceGenerator implements IVirtualObject
{ {
// Caps version of the name // Caps version of the name
String nameCaps = LanguageUtility.capitalizeFirst(materialName); String nameCaps = LanguageUtility.capitalizeFirst(materialName);
String localizedName = materialName;
List<ItemStack> list = OreDictionary.getOres("ingot" + materialName.substring(0, 1).toUpperCase() + materialName.substring(1));
if (list.size() > 0)
{
ItemStack type = list.get(0);
localizedName = type.getDisplayName().replace(LanguageUtility.getLocal("misc.resonantinduction.ingot"), "").replaceAll("^ ", "").replaceAll(" $", "");
}
/** Generate molten fluids */ /** Generate molten fluids */
FluidColored fluidMolten = new FluidColored(materialNameToMolten(materialName)); FluidColored fluidMolten = new FluidColored(materialNameToMolten(materialName));
@ -127,6 +137,7 @@ public class ResourceGenerator implements IVirtualObject
fluidMolten.setViscosity(5000); fluidMolten.setViscosity(5000);
fluidMolten.setTemperature(273 + 1538); fluidMolten.setTemperature(273 + 1538);
FluidRegistry.registerFluid(fluidMolten); FluidRegistry.registerFluid(fluidMolten);
LanguageRegistry.instance().addStringLocalization(fluidMolten.getUnlocalizedName(), "Molten " + localizedName);
BlockFluidMaterial blockFluidMaterial = new BlockFluidMaterial(fluidMolten); BlockFluidMaterial blockFluidMaterial = new BlockFluidMaterial(fluidMolten);
GameRegistry.registerBlock(blockFluidMaterial, "molten" + nameCaps); GameRegistry.registerBlock(blockFluidMaterial, "molten" + nameCaps);
ResonantInduction.blockMoltenFluid.put(getID(materialName), blockFluidMaterial); ResonantInduction.blockMoltenFluid.put(getID(materialName), blockFluidMaterial);
@ -136,6 +147,7 @@ public class ResourceGenerator implements IVirtualObject
FluidColored fluidMixture = new FluidColored(materialNameToMixture(materialName)); FluidColored fluidMixture = new FluidColored(materialNameToMixture(materialName));
FluidRegistry.registerFluid(fluidMixture); FluidRegistry.registerFluid(fluidMixture);
BlockFluidMixture blockFluidMixture = new BlockFluidMixture(fluidMixture); BlockFluidMixture blockFluidMixture = new BlockFluidMixture(fluidMixture);
LanguageRegistry.instance().addStringLocalization(fluidMixture.getUnlocalizedName(), localizedName + " Mixture");
GameRegistry.registerBlock(blockFluidMixture, "mixture" + nameCaps); GameRegistry.registerBlock(blockFluidMixture, "mixture" + nameCaps);
ResonantInduction.blockMixtureFluids.put(getID(materialName), blockFluidMixture); ResonantInduction.blockMixtureFluids.put(getID(materialName), blockFluidMixture);
FluidContainerRegistry.registerFluidContainer(fluidMixture, ResonantInduction.itemBucketMixture.getStackFromMaterial(materialName)); FluidContainerRegistry.registerFluidContainer(fluidMixture, ResonantInduction.itemBucketMixture.getStackFromMaterial(materialName));
@ -326,10 +338,10 @@ public class ResourceGenerator implements IVirtualObject
{ {
return materials.inverse().get(id); return materials.inverse().get(id);
} }
public static String getName(ItemStack itemStack) public static String getName(ItemStack itemStack)
{ {
return LanguageUtility.decapitalizeFirst(OreDictionary.getOreName(OreDictionary.getOreID(itemStack)).replace("dust", "").replace("ore", "").replace("ingot", "")); return LanguageUtility.decapitalizeFirst(OreDictionary.getOreName(OreDictionary.getOreID(itemStack)).replace("dust", "").replace("ore", "").replace("ingot", ""));
} }
public static int getColor(String name) public static int getColor(String name)

View file

@ -49,22 +49,8 @@ public class ItemOreResourceBucket extends Item
{ {
if (getMaterialFromStack(is) != null) if (getMaterialFromStack(is) != null)
{ {
String dustName = getMaterialFromStack(is); String fluidName = FluidRegistry.getFluid(isMolten ? ResourceGenerator.materialNameToMolten(getMaterialFromStack(is)) : ResourceGenerator.materialNameToMixture(getMaterialFromStack(is))).getLocalizedName();
return (LanguageUtility.getLocal(this.getUnlocalizedName() + ".name")).replace("%v", fluidName).replace(" ", " ");
if (dustName != null)
{
List<ItemStack> list = OreDictionary.getOres("ingot" + dustName.substring(0, 1).toUpperCase() + dustName.substring(1));
if (list.size() > 0)
{
ItemStack type = list.get(0);
String name = type.getDisplayName().replace(LanguageUtility.getLocal("misc.resonantinduction.ingot"), "").replaceAll("^ ", "").replaceAll(" $", "");
return (LanguageUtility.getLocal(this.getUnlocalizedName() + ".name")).replace("%v", name).replace(" ", " ");
}
}
return (FluidRegistry.getFluid(isMolten ? ResourceGenerator.materialNameToMolten(getMaterialFromStack(is)) : ResourceGenerator.materialNameToMixture(getMaterialFromStack(is))).getLocalizedName() + " Bucket");
} }
return null; return null;
} }

View file

@ -22,8 +22,8 @@ item.resonantinduction\:oreDust.name=%v Dust
item.resonantinduction\:oreDust.tooltip=Shift-right click on a cauldron to refine. item.resonantinduction\:oreDust.tooltip=Shift-right click on a cauldron to refine.
item.resonantinduction\:oreRefinedDust.name=%v Refined Dust item.resonantinduction\:oreRefinedDust.name=%v Refined Dust
item.resonantinduction\:oreRubble.name=%v Rubble item.resonantinduction\:oreRubble.name=%v Rubble
item.resonantinduction\:bucketMixture.name=%v Mixture Bucket item.resonantinduction\:bucketMixture.name=%v Bucket
item.resonantinduction\:bucketMolten.name=Molten %v Bucket item.resonantinduction\:bucketMolten.name=%v Bucket
### Archaic Module ### Archaic Module
## machineMaterials ## machineMaterials