Fixed generator direction and creative battery
This commit is contained in:
parent
a3122c7e0f
commit
2bbc93b70a
4 changed files with 16 additions and 14 deletions
|
@ -33,6 +33,7 @@ public class ItemBlockBattery extends ItemBlock implements IEnergyItem, IVoltage
|
|||
@Override
|
||||
public void addInformation(ItemStack itemStack, EntityPlayer entityPlayer, List list, boolean par4)
|
||||
{
|
||||
list.add("Tier: " + (getTier(itemStack) + 1));
|
||||
String color = "";
|
||||
long joules = this.getEnergy(itemStack);
|
||||
|
||||
|
@ -168,7 +169,7 @@ public class ItemBlockBattery extends ItemBlock implements IEnergyItem, IVoltage
|
|||
@Override
|
||||
public long getEnergyCapacity(ItemStack theItem)
|
||||
{
|
||||
return TileBattery.getEnergyForTier(theItem.getItemDamage() + 1);
|
||||
return TileBattery.getEnergyForTier(getTier(theItem));
|
||||
}
|
||||
|
||||
public long getTransferRate(ItemStack itemStack)
|
||||
|
@ -182,9 +183,8 @@ public class ItemBlockBattery extends ItemBlock implements IEnergyItem, IVoltage
|
|||
{
|
||||
for (byte tier = 0; tier < 3; tier++)
|
||||
{
|
||||
par3List.add(setTier(new ItemStack(this, 1), tier));
|
||||
par3List.add(setTier(CompatibilityModule.getItemWithCharge(new ItemStack(this, 1, 0), this.getEnergyCapacity(new ItemStack(this, 1, 0))), tier));
|
||||
par3List.add(CompatibilityModule.getItemWithCharge(setTier(new ItemStack(this), tier), 0));
|
||||
par3List.add(CompatibilityModule.getItemWithCharge(setTier(new ItemStack(this), tier), TileBattery.getEnergyForTier(tier)));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -45,25 +45,26 @@ public class TileGenerator extends TileElectrical implements IMechanical, IRotat
|
|||
}
|
||||
else
|
||||
{
|
||||
produceMechanical(new Vector3(this).modifyPositionFromSide(this.getDirection()));
|
||||
produceMechanical(new Vector3(this).modifyPositionFromSide(this.getDirection().getOpposite()));
|
||||
produceMechanical(this.getDirection());
|
||||
produceMechanical(this.getDirection().getOpposite());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void produceMechanical(Vector3 outputVector)
|
||||
public void produceMechanical(ForgeDirection outputDir)
|
||||
{
|
||||
Vector3 outputVector = new Vector3(this).modifyPositionFromSide(outputDir);
|
||||
TileEntity mechanical = outputVector.getTileEntity(worldObj);
|
||||
|
||||
if (mechanical instanceof IMechanical)
|
||||
{
|
||||
long extract = energy.extractEnergy();
|
||||
|
||||
long extract = energy.extractEnergy(false);
|
||||
|
||||
if (extract > 0)
|
||||
{
|
||||
float angularVelocity = extract / torqueRatio;
|
||||
long torque = (long) (extract / angularVelocity);
|
||||
((IMechanical) mechanical).onReceiveEnergy(this.getDirection().getOpposite(), torque, angularVelocity, true);
|
||||
energy.extractEnergy(((IMechanical) mechanical).onReceiveEnergy(outputDir.getOpposite(), torque, angularVelocity, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@ import net.minecraft.entity.player.EntityPlayer;
|
|||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.MovingObjectPosition;
|
||||
import resonantinduction.mechanical.Mechanical;
|
||||
import resonantinduction.mechanical.network.IMechanicalConnector;
|
||||
import resonantinduction.mechanical.network.PartMechanical;
|
||||
import codechicken.lib.vec.Vector3;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
|
@ -15,7 +16,7 @@ import cpw.mods.fml.relauncher.SideOnly;
|
|||
* @author Calclavia
|
||||
*
|
||||
*/
|
||||
public class PartGear extends PartMechanical
|
||||
public class PartGear extends PartMechanical implements IMechanicalConnector
|
||||
{
|
||||
private int manualCrankTime = 0;
|
||||
|
||||
|
@ -30,7 +31,7 @@ public class PartGear extends PartMechanical
|
|||
manualCrankTime--;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
super.update();
|
||||
}
|
||||
|
||||
|
|
|
@ -269,11 +269,11 @@ public abstract class PartMechanical extends JCuboidPart implements JNormalOcclu
|
|||
{
|
||||
if (isPositive)
|
||||
{
|
||||
((PartMechanical) neighbor).isClockwise = isClockwise;
|
||||
((PartMechanical) neighbor).setClockwise(isClockwise);
|
||||
}
|
||||
else
|
||||
{
|
||||
((PartMechanical) neighbor).isClockwise = !isClockwise;
|
||||
((PartMechanical) neighbor).setClockwise(!isClockwise);
|
||||
}
|
||||
|
||||
neighbor.markRotationUpdate = true;
|
||||
|
|
Loading…
Reference in a new issue