Added wrenching ability to set to output
This commit is contained in:
parent
edb4234ad0
commit
a554b914bd
2 changed files with 37 additions and 3 deletions
|
@ -124,7 +124,17 @@ public class BlockInteraction extends BlockMachine
|
||||||
@Override
|
@Override
|
||||||
public boolean onSneakUseWrench(World par1World, int x, int y, int z, EntityPlayer par5EntityPlayer)
|
public boolean onSneakUseWrench(World par1World, int x, int y, int z, EntityPlayer par5EntityPlayer)
|
||||||
{
|
{
|
||||||
return this.onUseWrench(par1World, x, y, z, par5EntityPlayer);
|
int metadata = par1World.getBlockMetadata(x, y, z);
|
||||||
|
|
||||||
|
if(MachineType.getBase(metadata) == MachineType.MANIPULATOR)
|
||||||
|
{
|
||||||
|
((TileEntityManipulator)par1World.getBlockTileEntity(x, y, z)).isWrenchedToOutput = !((TileEntityManipulator)par1World.getBlockTileEntity(x, y, z)).isWrenchedToOutput;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return this.onUseWrench(par1World, x, y, z, par5EntityPlayer);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -8,11 +8,13 @@ import net.minecraft.src.EntityPlayer;
|
||||||
import net.minecraft.src.IInventory;
|
import net.minecraft.src.IInventory;
|
||||||
import net.minecraft.src.INetworkManager;
|
import net.minecraft.src.INetworkManager;
|
||||||
import net.minecraft.src.ItemStack;
|
import net.minecraft.src.ItemStack;
|
||||||
|
import net.minecraft.src.NBTTagCompound;
|
||||||
import net.minecraft.src.Packet250CustomPayload;
|
import net.minecraft.src.Packet250CustomPayload;
|
||||||
import net.minecraft.src.TileEntity;
|
import net.minecraft.src.TileEntity;
|
||||||
import net.minecraft.src.TileEntityChest;
|
import net.minecraft.src.TileEntityChest;
|
||||||
import net.minecraftforge.common.ForgeDirection;
|
import net.minecraftforge.common.ForgeDirection;
|
||||||
import universalelectricity.core.Vector3;
|
import universalelectricity.core.Vector3;
|
||||||
|
import universalelectricity.electricity.ElectricInfo;
|
||||||
import universalelectricity.prefab.TileEntityElectricityReceiver;
|
import universalelectricity.prefab.TileEntityElectricityReceiver;
|
||||||
import universalelectricity.prefab.network.IPacketReceiver;
|
import universalelectricity.prefab.network.IPacketReceiver;
|
||||||
|
|
||||||
|
@ -31,6 +33,11 @@ public class TileEntityManipulator extends TileEntityElectricityReceiver
|
||||||
* The amount of watts received.
|
* The amount of watts received.
|
||||||
*/
|
*/
|
||||||
public double wattsReceived = 0;
|
public double wattsReceived = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Is the manipulator wrenched to turn into output mode?
|
||||||
|
*/
|
||||||
|
public boolean isWrenchedToOutput = false;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public double wattRequest()
|
public double wattRequest()
|
||||||
|
@ -162,7 +169,7 @@ public class TileEntityManipulator extends TileEntityElectricityReceiver
|
||||||
*/
|
*/
|
||||||
public boolean isOutput()
|
public boolean isOutput()
|
||||||
{
|
{
|
||||||
return this.worldObj.isBlockIndirectlyGettingPowered(this.xCoord, this.yCoord, this.zCoord) || this.worldObj.isBlockGettingPowered(this.xCoord, this.yCoord, this.zCoord);
|
return this.isWrenchedToOutput || this.worldObj.isBlockIndirectlyGettingPowered(this.xCoord, this.yCoord, this.zCoord) || this.worldObj.isBlockGettingPowered(this.xCoord, this.yCoord, this.zCoord);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ForgeDirection getBeltDirection()
|
public ForgeDirection getBeltDirection()
|
||||||
|
@ -179,6 +186,23 @@ public class TileEntityManipulator extends TileEntityElectricityReceiver
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(TileEntity sender, double amps, double voltage, ForgeDirection side)
|
public void onReceive(TileEntity sender, double amps, double voltage, ForgeDirection side)
|
||||||
{
|
{
|
||||||
this.wattsReceived += (amps * voltage);
|
this.wattsReceived += ElectricInfo.getWatts(amps, voltage);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void readFromNBT(NBTTagCompound nbt)
|
||||||
|
{
|
||||||
|
super.readFromNBT(nbt);
|
||||||
|
nbt.setBoolean("isWrenchedToOutput", this.isWrenchedToOutput);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Writes a tile entity to NBT.
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void writeToNBT(NBTTagCompound nbt)
|
||||||
|
{
|
||||||
|
super.writeToNBT(nbt);
|
||||||
|
this.isWrenchedToOutput = nbt.getBoolean("isWrenchedToOutput");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue