diff --git a/src/main/scala/edx/electrical/battery/TileBattery.scala b/src/main/scala/edx/electrical/battery/TileBattery.scala index 19113fae2..656f31884 100644 --- a/src/main/scala/edx/electrical/battery/TileBattery.scala +++ b/src/main/scala/edx/electrical/battery/TileBattery.scala @@ -8,7 +8,6 @@ import io.netty.buffer.ByteBuf import net.minecraft.block.material.Material import net.minecraft.client.Minecraft import net.minecraft.entity.EntityLivingBase -import net.minecraft.entity.player.EntityPlayer import net.minecraft.item.ItemStack import net.minecraft.nbt.NBTTagCompound import net.minecraft.util.ResourceLocation @@ -272,16 +271,4 @@ class TileBattery extends SpatialTile(Material.iron) with TIO with TElectric wit super.writeToNBT(nbt) energy.save(nbt) } - - override protected def use(player: EntityPlayer, side: Int, hit: Vector3): Boolean = - { - if (player.isSneaking) - { - //Temporary AC frequency testing feature - electricNode.frequency = (electricNode.frequency + 10) % 60 - return true - } - - return super.use(player, side, hit) - } } \ No newline at end of file diff --git a/src/main/scala/edx/electrical/generator/TileMotor.scala b/src/main/scala/edx/electrical/generator/TileMotor.scala index 2adc16d71..52111dde2 100644 --- a/src/main/scala/edx/electrical/generator/TileMotor.scala +++ b/src/main/scala/edx/electrical/generator/TileMotor.scala @@ -93,7 +93,7 @@ class TileMotor extends SpatialTile(Material.iron) with TIO with TElectric with * * After differentiation via chain rule: * emf = NBAwSin(wt) - * emfMax = NBAw + * emfMax = NBAw for direct current * where w = angular velocity */ val inducedEmf = TileMotor.motorConstant * mechNode.angularVelocity // * Math.sin(mechNode.angularVelocity * System.currentTimeMillis() / 1000d) @@ -102,10 +102,9 @@ class TileMotor extends SpatialTile(Material.iron) with TIO with TElectric with * Produce torque based on current. * T = NBA * I / (2pi) */ - //TODO: Torque should be based on the current, as a result of counter-emf - val torque = TileMotor.motorConstant * ((electricNode.voltage - inducedEmf) / electricNode.resistance) / (2 * Math.PI) + val torque = TileMotor.motorConstant * electricNode.current / (2 * Math.PI) mechNode.accelerate(torque) - // electricNode.generateVoltage(inducedEmf * -1) + electricNode.generateVoltage(inducedEmf) } override def setIO(dir: ForgeDirection, ioType: Int) diff --git a/src/main/scala/edx/mechanical/mech/gear/PartGear.scala b/src/main/scala/edx/mechanical/mech/gear/PartGear.scala index f5677124d..ab77f7ef7 100644 --- a/src/main/scala/edx/mechanical/mech/gear/PartGear.scala +++ b/src/main/scala/edx/mechanical/mech/gear/PartGear.scala @@ -61,7 +61,7 @@ class PartGear extends PartMechanical with IMultiBlockStructure[PartGear] { if (itemStack != null && itemStack.getItem.isInstanceOf[ItemHandCrank]) { - mechanicalNode.accelerate((if (player.isSneaking) 1 else -1) * 4000) + mechanicalNode.accelerate((if (player.isSneaking) 1 else -1) * 1000) world.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, Reference.prefix + "gearCrank", 0.5f, 0.9f + world.rand.nextFloat * 0.2f) player.addExhaustion(0.02f) return true @@ -82,8 +82,6 @@ class PartGear extends PartMechanical with IMultiBlockStructure[PartGear] getMultiBlock.deconstruct() } - override def getMultiBlock: GearMultiBlockHandler = multiBlock - /** * Is this gear block the one in the center-edge of the multiblock that can interact with other gears? * @return Returning true implies that this gear is able to connect to other ones side-by-side. @@ -117,6 +115,8 @@ class PartGear extends PartMechanical with IMultiBlockStructure[PartGear] getMultiBlock.save(nbt) } + override def getMultiBlock: GearMultiBlockHandler = multiBlock + override def getMultiBlockVectors: java.util.List[resonant.lib.transform.vector.Vector3] = new resonant.lib.transform.vector.Vector3().getAround(this.world, placementSide, 1) def getWorld: World =