more fixes
This commit is contained in:
@@ -232,6 +232,7 @@ public class ElectricBlockEntity extends SmartBlockEntity implements IElectric,
|
||||
getOrCreateElectricNetwork().checkForLoops(getBlockPos());
|
||||
data.checkForLoopsNextTick = false;
|
||||
}
|
||||
|
||||
if (data.connectNextTick) {
|
||||
onPlaced();
|
||||
data.connectNextTick = false;
|
||||
|
||||
@@ -6,18 +6,18 @@ import com.simibubi.create.foundation.networking.BlockEntityDataPacket;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.network.FriendlyByteBuf;
|
||||
|
||||
public class ConnectionPacket extends BlockEntityDataPacket<SmartBlockEntity> {
|
||||
public class ElectricPlacementPacket extends BlockEntityDataPacket<SmartBlockEntity> {
|
||||
|
||||
|
||||
|
||||
|
||||
public ConnectionPacket(BlockPos pos) {
|
||||
public ElectricPlacementPacket(BlockPos pos) {
|
||||
super(pos);
|
||||
|
||||
|
||||
}
|
||||
|
||||
public ConnectionPacket(FriendlyByteBuf buffer) {
|
||||
public ElectricPlacementPacket(FriendlyByteBuf buffer) {
|
||||
super(buffer);
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ public class ConnectionPacket extends BlockEntityDataPacket<SmartBlockEntity> {
|
||||
protected void handlePacket(SmartBlockEntity blockEntity) {
|
||||
|
||||
if(blockEntity instanceof IElectric be) {
|
||||
be.onConnected();
|
||||
be.getData().connectNextTick = true;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -54,6 +54,7 @@ public class CableConnectorBlockEntity extends ElectricBlockEntity implements IH
|
||||
public void remove() {
|
||||
super.remove();
|
||||
notifyRemoval();
|
||||
dropWires();
|
||||
}
|
||||
|
||||
|
||||
@@ -65,16 +66,23 @@ public class CableConnectorBlockEntity extends ElectricBlockEntity implements IH
|
||||
return direction == getBlockState().getValue(FACING).getOpposite();
|
||||
}
|
||||
|
||||
public void dropWires(){
|
||||
for (CableConnection connection : connections) {
|
||||
ItemEntity itemToDrop = new ItemEntity(level, getBlockPos().getX() + 0.5f, getBlockPos().getY() + 0.5f, getBlockPos().getZ() + 0.5f, new ItemStack(connection.type.getSpool().get(), (int) (connection.getLength() / 8)));
|
||||
if (itemToDrop.getItem().getCount() > 0) {
|
||||
level.addFreshEntity(itemToDrop);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public void notifyRemoval() {
|
||||
|
||||
if(level.isClientSide)
|
||||
return;
|
||||
|
||||
for (CableConnection connection : connections) {
|
||||
ItemEntity itemToDrop = new ItemEntity(level, getBlockPos().getX() + 0.5f, getBlockPos().getY() + 0.5f, getBlockPos().getZ() + 0.5f, new ItemStack(connection.type.getSpool().get(), (int) (connection.getLength()/8)));
|
||||
if (itemToDrop.getItem().getCount() > 0) {
|
||||
level.addFreshEntity(itemToDrop);
|
||||
}
|
||||
|
||||
BlockPos pos = connection.blockPos1;
|
||||
|
||||
// level.setBlock(connection.blockPos1.above(), Blocks.GOLD_BLOCK.defaultBlockState(),3);
|
||||
@@ -82,12 +90,14 @@ public class CableConnectorBlockEntity extends ElectricBlockEntity implements IH
|
||||
if (be.getBlockPos() == getBlockPos())
|
||||
continue;
|
||||
be.onPlaced();
|
||||
|
||||
be.removeWiresNextTick = true;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//@Override
|
||||
//public float resistance() {
|
||||
// float resistance = 0;
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.drmangotea.tfmg.content.decoration.concrete.ConcreteloggedBlock;
|
||||
import com.drmangotea.tfmg.content.electricity.base.IElectric;
|
||||
import com.drmangotea.tfmg.registry.TFMGBlockEntities;
|
||||
import com.drmangotea.tfmg.registry.TFMGBlocks;
|
||||
import com.drmangotea.tfmg.registry.TFMGItems;
|
||||
import com.drmangotea.tfmg.registry.TFMGPackets;
|
||||
import com.simibubi.create.foundation.block.IBE;
|
||||
import com.simibubi.create.foundation.placement.PoleHelper;
|
||||
@@ -130,11 +131,10 @@ public class CableTubeBlock extends RotatedPillarBlock implements IBE<CableTubeB
|
||||
|
||||
|
||||
|
||||
|
||||
ItemStack itemInHand = player.getItemInHand(hand);
|
||||
|
||||
IPlacementHelper helper = PlacementHelpers.get(placementHelperId);
|
||||
if (helper.matchesItem(itemInHand)) {
|
||||
if (itemInHand.is(state.getBlock().asItem())){
|
||||
return helper.getOffset(player, level, state, pos, pHit)
|
||||
.placeInWorld(level, (BlockItem) itemInHand.getItem(), player, hand, pHit);
|
||||
}
|
||||
|
||||
@@ -49,9 +49,9 @@ public class DebugCinderBlockItem extends Item {
|
||||
BlockPos pos = context.getClickedPos();
|
||||
Level level = context.getLevel();
|
||||
if (level.getBlockEntity(pos) instanceof IElectric be) {
|
||||
be.getOrCreateElectricNetwork().handleInsufficientPower();
|
||||
TFMG.LOGGER.debug("VOLTAGE "+be.getData().voltage);
|
||||
|
||||
}
|
||||
return InteractionResult.PASS;
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,7 +37,9 @@ public class PolarizerBlock extends TFMGHorizontalDirectionalBlock implements IB
|
||||
}
|
||||
}else {
|
||||
if(be.inventory.isEmpty()&&!stack.isEmpty()){
|
||||
be.inventory.setItem(0, stack.copy());
|
||||
ItemStack stack1 = stack.copy();
|
||||
stack1.setCount(1);
|
||||
be.inventory.setItem(0, stack1);
|
||||
player.getItemInHand(hand).shrink(1);
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
|
||||
@@ -159,6 +159,10 @@ public class RegularEngineBlockEntity extends AbstractSmallEngineBlockEntity {
|
||||
|
||||
|
||||
if (itemStack.is(AllItems.EMPTY_SCHEMATIC.get())) {
|
||||
|
||||
if(type == EngineType.RADIAL||type == EngineType.TURBINE)
|
||||
return false;
|
||||
|
||||
boolean next = false;
|
||||
if (type == EngineType.BOXER) {
|
||||
if (level.getBlockEntity(controller) instanceof RegularEngineBlockEntity be)
|
||||
|
||||
@@ -3,12 +3,14 @@ package com.drmangotea.tfmg.content.machinery.misc.winding_machine;
|
||||
import com.drmangotea.tfmg.TFMG;
|
||||
import com.drmangotea.tfmg.base.TFMGRegistries;
|
||||
import com.drmangotea.tfmg.base.TFMGUtils;
|
||||
import com.drmangotea.tfmg.content.electricity.base.ElectricPlacementPacket;
|
||||
import com.drmangotea.tfmg.content.electricity.base.UpdateInFrontPacket;
|
||||
import com.drmangotea.tfmg.content.electricity.connection.cable_type.CableType;
|
||||
import com.drmangotea.tfmg.content.electricity.connection.cables.CableConnection;
|
||||
import com.drmangotea.tfmg.content.electricity.connection.cables.CableConnectorBlockEntity;
|
||||
import com.drmangotea.tfmg.registry.TFMGItems;
|
||||
import com.drmangotea.tfmg.registry.TFMGPackets;
|
||||
import com.simibubi.create.foundation.utility.CreateLang;
|
||||
|
||||
import net.minecraft.ChatFormatting;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.network.chat.Component;
|
||||
@@ -25,6 +27,7 @@ import net.minecraft.world.item.context.UseOnContext;
|
||||
import net.minecraft.world.level.Level;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
import net.minecraftforge.network.PacketDistributor;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
@@ -43,7 +46,7 @@ public class SpoolItem extends Item {
|
||||
|
||||
@Override
|
||||
public void onCraftedBy(ItemStack stack, Level p_41448_, Player p_41449_) {
|
||||
stack.getOrCreateTag().putInt("Amount",1000);
|
||||
stack.getOrCreateTag().putInt("Amount", 1000);
|
||||
super.onCraftedBy(stack, p_41448_, p_41449_);
|
||||
|
||||
}
|
||||
@@ -76,7 +79,7 @@ public class SpoolItem extends Item {
|
||||
.withStyle(ChatFormatting.GREEN)
|
||||
);
|
||||
BlockPos pos = BlockPos.of(stack.getOrCreateTag().getLong("Position"));
|
||||
if(pos.asLong()!=0)
|
||||
if (pos.asLong() != 0)
|
||||
tooltip.add(CreateLang.text("" + pos.getX() + " " + pos.getY() + " " + pos.getZ()).component()
|
||||
.withStyle(ChatFormatting.AQUA)
|
||||
);
|
||||
@@ -90,117 +93,122 @@ public class SpoolItem extends Item {
|
||||
BlockPos pos = context.getClickedPos();
|
||||
Player player = context.getPlayer();
|
||||
ItemStack stack = context.getItemInHand();
|
||||
if(level.isClientSide)
|
||||
if (level.isClientSide)
|
||||
return InteractionResult.SUCCESS;
|
||||
|
||||
if(Objects.equals(cableTypeKey, TFMG.asResource("empty")))
|
||||
if (Objects.equals(cableTypeKey, TFMG.asResource("empty")))
|
||||
return InteractionResult.PASS;
|
||||
|
||||
if(level.getBlockEntity(pos) instanceof CableConnectorBlockEntity be){
|
||||
if(stack.getOrCreateTag().getLong("Position")!=0){
|
||||
BlockPos posToConnect = BlockPos.of(stack.getOrCreateTag().getLong("Position"));
|
||||
if(posToConnect.equals(pos)){
|
||||
stack.getOrCreateTag().putLong("Position",0);
|
||||
if (level.isClientSide)
|
||||
player.displayClientMessage(CreateLang.translateDirect("wires.cant_connect_itself")
|
||||
.withStyle(ChatFormatting.YELLOW), true);
|
||||
be.player = null;
|
||||
be.sendData();
|
||||
be.setChanged();
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
if (level.getBlockEntity(pos) instanceof CableConnectorBlockEntity be) {
|
||||
if (stack.getOrCreateTag().getLong("Position") != 0) {
|
||||
BlockPos posToConnect = BlockPos.of(stack.getOrCreateTag().getLong("Position"));
|
||||
if (posToConnect.equals(pos)) {
|
||||
stack.getOrCreateTag().putLong("Position", 0);
|
||||
if (level.isClientSide)
|
||||
player.displayClientMessage(CreateLang.translateDirect("wires.cant_connect_itself")
|
||||
.withStyle(ChatFormatting.YELLOW), true);
|
||||
be.player = null;
|
||||
be.sendData();
|
||||
be.setChanged();
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
|
||||
if(level.getBlockEntity(posToConnect) instanceof CableConnectorBlockEntity otherBE) {
|
||||
//CableConnectorBlockEntity connectedBe1 = pos.asLong()>posToConnect.asLong() ? otherBE : be;
|
||||
//CableConnectorBlockEntity connectedBe2= pos.asLong()>posToConnect.asLong() ? be : otherBE;
|
||||
CableType cableType = TFMGUtils.getCableType(cableTypeKey);
|
||||
if (level.getBlockEntity(posToConnect) instanceof CableConnectorBlockEntity otherBE) {
|
||||
//CableConnectorBlockEntity connectedBe1 = pos.asLong()>posToConnect.asLong() ? otherBE : be;
|
||||
//CableConnectorBlockEntity connectedBe2= pos.asLong()>posToConnect.asLong() ? be : otherBE;
|
||||
CableType cableType = TFMGUtils.getCableType(cableTypeKey);
|
||||
//
|
||||
CableConnection connection1 = new CableConnection(be.getCablePosition(), otherBE.getCablePosition(), otherBE.getBlockPos(),cableType,true);
|
||||
CableConnection connection2 = new CableConnection(otherBE.getCablePosition(), be.getCablePosition(), be.getBlockPos(),cableType,false);
|
||||
CableConnection connection1 = new CableConnection(be.getCablePosition(), otherBE.getCablePosition(), otherBE.getBlockPos(), cableType, true);
|
||||
CableConnection connection2 = new CableConnection(otherBE.getCablePosition(), be.getCablePosition(), be.getBlockPos(), cableType, false);
|
||||
|
||||
float wireCost = (connection1.getLength()/8);
|
||||
float wireCost = (connection1.getLength() / 8);
|
||||
|
||||
|
||||
if(stack.getOrCreateTag().getInt("Amount")<wireCost*125) {
|
||||
return InteractionResult.PASS;
|
||||
}
|
||||
if(be.connections.contains(connection1)||otherBE.connections.contains(connection1)){
|
||||
if (level.isClientSide)
|
||||
player.displayClientMessage(CreateLang.translateDirect("wires.connection_already_created")
|
||||
.withStyle(ChatFormatting.YELLOW), true);
|
||||
be.player = null;
|
||||
be.sendData();
|
||||
be.setChanged();
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
// if(!level.isClientSide) {
|
||||
be.connections.add(connection1);
|
||||
otherBE.connections.add(connection2);
|
||||
be.onPlaced();
|
||||
// otherBE.onPlaced();
|
||||
//}
|
||||
|
||||
// connectedBe1.wiresUpdated();
|
||||
stack.getOrCreateTag().putInt("Amount", (int) (stack.getOrCreateTag().getInt("Amount")-(wireCost*125)));
|
||||
be.player = null;
|
||||
otherBE.player = null;
|
||||
be.setChanged();
|
||||
otherBE.setChanged();
|
||||
be.sendData();
|
||||
otherBE.sendData();
|
||||
stack.getOrCreateTag().remove("Position");
|
||||
stack.getOrCreateTag().remove("XPos");
|
||||
stack.getOrCreateTag().remove("YPos");
|
||||
stack.getOrCreateTag().remove("ZPos");
|
||||
}
|
||||
//
|
||||
be.player = null;
|
||||
//
|
||||
return InteractionResult.SUCCESS;
|
||||
}else {
|
||||
stack.getOrCreateTag().putLong("Position", be.getBlockPos().asLong());
|
||||
stack.getOrCreateTag().putDouble("XPos", be.getCablePosition().x());
|
||||
stack.getOrCreateTag().putDouble("YPos", be.getCablePosition().y());
|
||||
stack.getOrCreateTag().putDouble("ZPos", be.getCablePosition().z());
|
||||
be.player = player;
|
||||
be.color = barColor;
|
||||
be.sendData();
|
||||
be.setChanged();
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
}
|
||||
//
|
||||
//
|
||||
if(level.getBlockEntity(pos) instanceof WindingMachineBlockEntity be){
|
||||
ItemStack oldSpool = ItemStack.EMPTY;
|
||||
if(!be.spool.isEmpty()){
|
||||
oldSpool = be.spool;
|
||||
}
|
||||
be.spool = context.getItemInHand();
|
||||
context.getPlayer().setItemInHand(context.getHand(), oldSpool);
|
||||
be.sendData();
|
||||
be.setChanged();
|
||||
//
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
return InteractionResult.PASS;
|
||||
}
|
||||
public void removeOtherConnections(Player player, ItemStack stack){
|
||||
for(int i =0;i<player.getInventory().getContainerSize();i++){
|
||||
ItemStack inventoryStack = player.getInventory().getItem(i);
|
||||
//
|
||||
if (stack.getOrCreateTag().getInt("Amount") < wireCost * 125) {
|
||||
return InteractionResult.PASS;
|
||||
}
|
||||
if (be.connections.contains(connection1) || otherBE.connections.contains(connection1)) {
|
||||
if (level.isClientSide)
|
||||
player.displayClientMessage(CreateLang.translateDirect("wires.connection_already_created")
|
||||
.withStyle(ChatFormatting.YELLOW), true);
|
||||
be.player = null;
|
||||
be.sendData();
|
||||
be.setChanged();
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
// if(!level.isClientSide) {
|
||||
be.connections.add(connection1);
|
||||
otherBE.connections.add(connection2);
|
||||
if (!level.isClientSide)
|
||||
TFMGPackets.getChannel().send(PacketDistributor.ALL.noArg(), new ElectricPlacementPacket(BlockPos.of(be.getPos())));
|
||||
be.onPlaced();
|
||||
if(!level.isClientSide)
|
||||
TFMGPackets.getChannel().send(PacketDistributor.ALL.noArg(), new ElectricPlacementPacket(BlockPos.of(otherBE.getPos())));
|
||||
otherBE.onPlaced();
|
||||
// otherBE.onPlaced();
|
||||
//}
|
||||
|
||||
// connectedBe1.wiresUpdated();
|
||||
stack.getOrCreateTag().putInt("Amount", (int) (stack.getOrCreateTag().getInt("Amount") - (wireCost * 125)));
|
||||
be.player = null;
|
||||
otherBE.player = null;
|
||||
be.setChanged();
|
||||
otherBE.setChanged();
|
||||
be.sendData();
|
||||
otherBE.sendData();
|
||||
stack.getOrCreateTag().remove("Position");
|
||||
stack.getOrCreateTag().remove("XPos");
|
||||
stack.getOrCreateTag().remove("YPos");
|
||||
stack.getOrCreateTag().remove("ZPos");
|
||||
}
|
||||
//
|
||||
be.player = null;
|
||||
//
|
||||
return InteractionResult.SUCCESS;
|
||||
} else {
|
||||
stack.getOrCreateTag().putLong("Position", be.getBlockPos().asLong());
|
||||
stack.getOrCreateTag().putDouble("XPos", be.getCablePosition().x());
|
||||
stack.getOrCreateTag().putDouble("YPos", be.getCablePosition().y());
|
||||
stack.getOrCreateTag().putDouble("ZPos", be.getCablePosition().z());
|
||||
be.player = player;
|
||||
be.color = barColor;
|
||||
be.sendData();
|
||||
be.setChanged();
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
}
|
||||
//
|
||||
//
|
||||
if (level.getBlockEntity(pos) instanceof WindingMachineBlockEntity be) {
|
||||
ItemStack oldSpool = ItemStack.EMPTY;
|
||||
if (!be.spool.isEmpty()) {
|
||||
oldSpool = be.spool;
|
||||
}
|
||||
be.spool = context.getItemInHand();
|
||||
context.getPlayer().setItemInHand(context.getHand(), oldSpool);
|
||||
be.sendData();
|
||||
be.setChanged();
|
||||
//
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
return InteractionResult.PASS;
|
||||
}
|
||||
|
||||
public void removeOtherConnections(Player player, ItemStack stack) {
|
||||
for (int i = 0; i < player.getInventory().getContainerSize(); i++) {
|
||||
ItemStack inventoryStack = player.getInventory().getItem(i);
|
||||
//
|
||||
|
||||
//
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void inventoryTick(ItemStack stack, Level level, Entity entity, int slot, boolean p_41408_) {
|
||||
super.inventoryTick(stack, level, entity, slot, p_41408_);
|
||||
|
||||
if(stack.getOrCreateTag().getInt("Amount")==0&& entity instanceof Player player&&!stack.is(TFMGItems.EMPTY_SPOOL.get())){
|
||||
if (stack.getOrCreateTag().getInt("Amount") == 0 && entity instanceof Player player && !stack.is(TFMGItems.EMPTY_SPOOL.get())) {
|
||||
player.getInventory().setItem(slot, TFMGItems.EMPTY_SPOOL.asStack());
|
||||
}
|
||||
}
|
||||
@@ -217,7 +225,7 @@ public class SpoolItem extends Item {
|
||||
|
||||
@Override
|
||||
public int getBarWidth(ItemStack stack) {
|
||||
return (int) (13f*((float)stack.getOrCreateTag().getInt("Amount")/1000));
|
||||
return (int) (13f * ((float) stack.getOrCreateTag().getInt("Amount") / 1000));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -75,7 +75,10 @@ public class WindingMachineBlock extends HorizontalKineticBlock implements IBE<W
|
||||
}
|
||||
}else {
|
||||
if(be.inventory.isEmpty()&&!(player.getItemInHand(hand).getItem() instanceof SpoolItem)){
|
||||
be.inventory.setItem(0, player.getItemInHand(hand).copy());
|
||||
ItemStack stack1 = player.getItemInHand(hand).copy();
|
||||
stack1.setCount(1);
|
||||
be.inventory.setItem(0, stack1);
|
||||
|
||||
player.getItemInHand(hand).shrink(1);
|
||||
return InteractionResult.SUCCESS;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.drmangotea.tfmg.registry;
|
||||
|
||||
import com.drmangotea.tfmg.TFMG;
|
||||
import com.drmangotea.tfmg.content.electricity.base.ConnectNeightborsPacket;
|
||||
import com.drmangotea.tfmg.content.electricity.base.ConnectionPacket;
|
||||
import com.drmangotea.tfmg.content.electricity.base.ElectricPlacementPacket;
|
||||
import com.drmangotea.tfmg.content.electricity.base.NetworkUpdatePacket;
|
||||
import com.drmangotea.tfmg.content.electricity.base.UpdateInFrontPacket;
|
||||
import com.drmangotea.tfmg.content.electricity.connection.cables.CablePlacePacket;
|
||||
@@ -38,7 +38,7 @@ public enum TFMGPackets {
|
||||
QUAD_POTATO_CANNON(QuadPotatoCannonPacket.class, QuadPotatoCannonPacket::new, PLAY_TO_CLIENT),
|
||||
CONNECT_NEIGHBORS(ConnectNeightborsPacket.class, ConnectNeightborsPacket::new, PLAY_TO_CLIENT),
|
||||
NETWORK_UPDATE(NetworkUpdatePacket.class, NetworkUpdatePacket::new, PLAY_TO_CLIENT),
|
||||
CONNECTION_PACKET(ConnectionPacket.class, ConnectionPacket::new, PLAY_TO_CLIENT),
|
||||
CONNECTION_PACKET(ElectricPlacementPacket.class, ElectricPlacementPacket::new, PLAY_TO_CLIENT),
|
||||
VAT_EVALUATION(VatEvaluationPacket.class, VatEvaluationPacket::new, PLAY_TO_CLIENT),
|
||||
COKE_OVEN_PACKET(CokeOvenPacket.class, CokeOvenPacket::new, PLAY_TO_CLIENT),
|
||||
UPDATE_IN_FRONT_PACKET(UpdateInFrontPacket.class, UpdateInFrontPacket::new, PLAY_TO_CLIENT),
|
||||
|
||||
@@ -105,52 +105,52 @@
|
||||
"item.tfmg.brown_multimeter_cannon.tooltip.condition2": "When looking at an electric component while crouching",
|
||||
"item.tfmg.brown_multimeter.tooltip.behaviour2": "Additionally to the previously mentioned stats the multimeter shows the networks total power generation and consumption",
|
||||
|
||||
"item.tfmg.firebox.tooltip.summary": "Heats machinery when fuel is pumped inside",
|
||||
"item.tfmg.firebox.tooltip.condition1": "When filled with lpg, butane, diesel, propane, naphta or kerosene with carbon dioxide being pumped out",
|
||||
"item.tfmg.firebox.tooltip.behaviour1": "Heats machinery above it acting as a blaze burner",
|
||||
"block.tfmg.firebox.tooltip.summary": "Heats machinery when fuel is pumped inside",
|
||||
"block.tfmg.firebox.tooltip.condition1": "When filled with lpg, butane, diesel, propane, naphta or kerosene with carbon dioxide being pumped out",
|
||||
"block.tfmg.firebox.tooltip.behaviour1": "Heats machinery above it acting as a blaze burner",
|
||||
|
||||
"item.tfmg.winding_machine.tooltip.summary": "Changes the amount of turns on spools and the resistance on resistors",
|
||||
"item.tfmg.winding_machine.tooltip.behaviour1": "Right click with your desired item (Electromagnetic Coil or Resistor) and then right click with either a Copper spool for Coils and an Aluminium one for resistors. Interact with it to set the amount of turns/ohms and power with rotation. Use the Engineers goggles to see when your winding is finished.",
|
||||
"block.tfmg.winding_machine.tooltip.summary": "Changes the amount of turns on spools and the resistance on resistors",
|
||||
"block.tfmg.winding_machine.tooltip.behaviour1": "Right click with your desired item (Electromagnetic Coil or Resistor) and then right click with either a Copper spool for Coils and an Aluminium one for resistors. Interact with it to set the amount of turns/ohms and power with rotation. Use the Engineers goggles to see when your winding is finished.",
|
||||
|
||||
"item.tfmg.surface_scanner.tooltip.summary": "Helps to find chunks with oil",
|
||||
"item.tfmg.surface_scanner.tooltip.condition1": "When powered from below with a Machine Input",
|
||||
"item.tfmg.surface_scanner.tooltip.behaviour1": "The machines top 5x5 grid shows the surrounding chunks with its chunk in the center, the chunks that have atleast 1 oil deposit in them should glow. If the surface does not start to glow within a few seconds then it is likely that there are no oil deposits nearby. Chunks can be seen ingame with F3+G",
|
||||
"block.tfmg.surface_scanner.tooltip.summary": "Helps to find chunks with oil",
|
||||
"block.tfmg.surface_scanner.tooltip.condition1": "When powered from below with a Machine Input",
|
||||
"block.tfmg.surface_scanner.tooltip.behaviour1": "The machines top 5x5 grid shows the surrounding chunks with its chunk in the center, the chunks that have atleast 1 oil deposit in them should glow. If the surface does not start to glow within a few seconds then it is likely that there are no oil deposits nearby. Chunks can be seen ingame with F3+G",
|
||||
|
||||
"item.tfmg.casting_basin.tooltip.summary": "Casts ingots",
|
||||
"item.tfmg.casting_basin.tooltip.condition1": "When supplied with molten steel",
|
||||
"item.tfmg.casting_basin.tooltip.behaviour1": "Creates steel ingots which must have a sufficent output as the internal storage of the basin is limited",
|
||||
"block.tfmg.casting_basin.tooltip.summary": "Casts ingots",
|
||||
"block.tfmg.casting_basin.tooltip.condition1": "When supplied with molten steel",
|
||||
"block.tfmg.casting_basin.tooltip.behaviour1": "Creates steel ingots which must have a sufficent output as the internal storage of the basin is limited",
|
||||
|
||||
"item.tfmg.neon_tube.tooltip.summary": "Glows",
|
||||
"item.tfmg.neon_tube.tooltip.condition1": "When provided with power",
|
||||
"item.tfmg.neon_tube.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"item.tfmg.neon_tube.tooltip.condition2": "When interacted with a dye",
|
||||
"item.tfmg.neon_tube.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
"item.tfmg.neon_tube.tooltip.condition3": "When interacted with a Wrench",
|
||||
"item.tfmg.neon_tube.tooltip.behaviour3": "Changes shape providing a space to power the tube",
|
||||
"block.tfmg.neon_tube.tooltip.summary": "Glows",
|
||||
"block.tfmg.neon_tube.tooltip.condition1": "When provided with power",
|
||||
"block.tfmg.neon_tube.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"block.tfmg.neon_tube.tooltip.condition2": "When interacted with a dye",
|
||||
"block.tfmg.neon_tube.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
"block.tfmg.neon_tube.tooltip.condition3": "When interacted with a Wrench",
|
||||
"block.tfmg.neon_tube.tooltip.behaviour3": "Changes shape providing a space to power the tube",
|
||||
|
||||
"item.tfmg.light_bulb.tooltip.summary": "Glows",
|
||||
"item.tfmg.light_bulb.tooltip.condition1": "When provided with power",
|
||||
"item.tfmg.light_bulb.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"item.tfmg.light_bulb.tooltip.condition2": "When interacted with a dye",
|
||||
"item.tfmg.light_bulb.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
"block.tfmg.light_bulb.tooltip.summary": "Glows",
|
||||
"block.tfmg.light_bulb.tooltip.condition1": "When provided with power",
|
||||
"block.tfmg.light_bulb.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"block.tfmg.light_bulb.tooltip.condition2": "When interacted with a dye",
|
||||
"block.tfmg.light_bulb.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
|
||||
"item.tfmg.circular_light.tooltip.summary": "Glows",
|
||||
"item.tfmg.circular_light.tooltip.condition1": "When provided with power",
|
||||
"item.tfmg.circular_light.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"item.tfmg.circular_light.tooltip.condition2": "When interacted with a dye",
|
||||
"item.tfmg.circular_light.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
"block.tfmg.circular_light.tooltip.summary": "Glows",
|
||||
"block.tfmg.circular_light.tooltip.condition1": "When provided with power",
|
||||
"block.tfmg.circular_light.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"block.tfmg.circular_light.tooltip.condition2": "When interacted with a dye",
|
||||
"block.tfmg.circular_light.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
|
||||
"item.tfmg.modern_light.tooltip.summary": "Glows",
|
||||
"item.tfmg.modern_light.tooltip.condition1": "When provided with power",
|
||||
"item.tfmg.modern_light.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"item.tfmg.modern_light.tooltip.condition2": "When interacted with a dye",
|
||||
"item.tfmg.modern_light.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
"block.tfmg.modern_light.tooltip.summary": "Glows",
|
||||
"block.tfmg.modern_light.tooltip.condition1": "When provided with power",
|
||||
"block.tfmg.modern_light.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"block.tfmg.modern_light.tooltip.condition2": "When interacted with a dye",
|
||||
"block.tfmg.modern_light.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
|
||||
"item.tfmg.aluminum_lamp.tooltip.summary": "Glows",
|
||||
"item.tfmg.aluminum_lamp.tooltip.condition1": "When provided with power",
|
||||
"item.tfmg.aluminum_lamp.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"item.tfmg.aluminum_lamp.tooltip.condition2": "When interacted with a dye",
|
||||
"item.tfmg.aluminum_lamp.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
"block.tfmg.aluminum_lamp.tooltip.summary": "Glows",
|
||||
"block.tfmg.aluminum_lamp.tooltip.condition1": "When provided with power",
|
||||
"block.tfmg.aluminum_lamp.tooltip.behaviour1": "Glows relative to the amount of power its receiving",
|
||||
"block.tfmg.aluminum_lamp.tooltip.condition2": "When interacted with a dye",
|
||||
"block.tfmg.aluminum_lamp.tooltip.behaviour2": "Changes color to the color of the light when glowing",
|
||||
|
||||
"item.tfmg.oil_can.tooltip.summary": "Adds lubrication oil to engines",
|
||||
"item.tfmg.oil_can.tooltip.condition1": "When Right Clicking a tank with lubrication oil inside",
|
||||
@@ -158,34 +158,34 @@
|
||||
"item.tfmg.oil_can.tooltip.condition2": "When Right Clicking an engine",
|
||||
"item.tfmg.oil_can.tooltip.behaviour2": "Fills the engine with lubrication oil",
|
||||
|
||||
"item.tfmg.cable_connector.tooltip.summary": "Transfers power",
|
||||
"item.tfmg.cable_connector.tooltip.condition1": "When 2 cable insulators are right clicked with a copper/aluminum/constantan spool",
|
||||
"item.tfmg.cable_connector.tooltip.behaviour1": "Created a connection between the 2 insulators transferring power between them",
|
||||
"block.tfmg.cable_connector.tooltip.summary": "Transfers power",
|
||||
"block.tfmg.cable_connector.tooltip.condition1": "When 2 cable insulators are right clicked with a copper/aluminum/constantan spool",
|
||||
"block.tfmg.cable_connector.tooltip.behaviour1": "Created a connection between the 2 insulators transferring power between them",
|
||||
|
||||
"item.tfmg.glass_cable_insulator.tooltip.summary": "Transfers power",
|
||||
"item.tfmg.glass_cable_insulator.tooltip.condition1": "When 2 cable insulators are right clicked with a copper/aluminum/constantan spool",
|
||||
"item.tfmg.glass_cable_insulator.tooltip.behaviour1": "Created a connection between the 2 insulators transferring power between them",
|
||||
"block.tfmg.glass_cable_insulator.tooltip.summary": "Transfers power",
|
||||
"block.tfmg.glass_cable_insulator.tooltip.condition1": "When 2 cable insulators are right clicked with a copper/aluminum/constantan spool",
|
||||
"block.tfmg.glass_cable_insulator.tooltip.behaviour1": "Created a connection between the 2 insulators transferring power between them",
|
||||
|
||||
"item.tfmg.transformer.tooltip.summary": "Changes the voltage in a circuit",
|
||||
"item.tfmg.transformer.tooltip.behaviour1": "Needs 2 electromagnetic coils of different turn amounts that have to be put on the transformer where the output (indicated by a small line of copper) outputs voltage based on the ratio of the 2 coils (for example if the input has a coil with 50 turns and the output has one with a 100 then the voltage is doubled since 100/50 = 2)",
|
||||
"block.tfmg.transformer.tooltip.summary": "Changes the voltage in a circuit",
|
||||
"block.tfmg.transformer.tooltip.behaviour1": "Needs 2 electromagnetic coils of different turn amounts that have to be put on the transformer where the output (indicated by a small line of copper) outputs voltage based on the ratio of the 2 coils (for example if the input has a coil with 50 turns and the output has one with a 100 then the voltage is doubled since 100/50 = 2)",
|
||||
|
||||
"item.tfmg.diode.tooltip.summary": "Functions as a one way gateway for power to flow through",
|
||||
"item.tfmg.diode.tooltip.condition1": "When provided with power from its darker side",
|
||||
"item.tfmg.diode.tooltip.behaviour1": "The power will be outputted on its lighter side acting as a one way pathway for power (meaning any power that would be coming from its lighter side would not be outputted on the darker one)",
|
||||
"block.tfmg.diode.tooltip.summary": "Functions as a one way gateway for power to flow through",
|
||||
"block.tfmg.diode.tooltip.condition1": "When provided with power from its darker side",
|
||||
"block.tfmg.diode.tooltip.behaviour1": "The power will be outputted on its lighter side acting as a one way pathway for power (meaning any power that would be coming from its lighter side would not be outputted on the darker one)",
|
||||
|
||||
"item.tfmg.blast_stove.tooltip.summary": "Heats Air",
|
||||
"item.tfmg.blast_stove.tooltip.behaviour1": "When 3 blast stoves are placed on top of eachother (or in a 3x2 shape) the smallest version of a blast stove is created, to add further internal storage you can add more stove blocks on top which is generally reccomended. A Blast Stove requires 2 things to be pumped in. Air, from the side of the bottom block and Creosote or Furnace gas from the bottom. Carbon dioxide must be pumped out from the side of the bottom block and finally heated air must be pumped out from the machines top.",
|
||||
"block.tfmg.blast_stove.tooltip.summary": "Heats Air",
|
||||
"block.tfmg.blast_stove.tooltip.behaviour1": "When 3 blast stoves are placed on top of eachother (or in a 3x2 shape) the smallest version of a blast stove is created, to add further internal storage you can add more stove blocks on top which is generally reccomended. A Blast Stove requires 2 things to be pumped in. Air, from the side of the bottom block and Creosote or Furnace gas from the bottom. Carbon dioxide must be pumped out from the side of the bottom block and finally heated air must be pumped out from the machines top.",
|
||||
|
||||
"item.tfmg.resistor.tooltip.summary": "Adds resistance to a network",
|
||||
"item.tfmg.resistor.tooltip.condition1": "When placed on a block within a group",
|
||||
"item.tfmg.resistor.tooltip.behaviour1": "Adds the resistors respective resistance (to see how to change its resistance look at the winding machines tooltip) to whatever electric group its target block is in",
|
||||
"block.tfmg.resistor.tooltip.summary": "Adds resistance to a network",
|
||||
"block.tfmg.resistor.tooltip.condition1": "When placed on a block within a group",
|
||||
"block.tfmg.resistor.tooltip.behaviour1": "Adds the resistors respective resistance (to see how to change its resistance look at the winding machines tooltip) to whatever electric group its target block is in",
|
||||
|
||||
"item.tfmg.electrical_switch.tooltip.summary": "Lets power through when powered with redstone",
|
||||
"block.tfmg.electrical_switch.tooltip.summary": "Lets power through when powered with redstone",
|
||||
|
||||
"item.tfmg.potentiometer.tooltip.summary": "Lets through a only a set amount of voltage",
|
||||
"item.tfmg.potentiometer.tooltip.behaviour1": "Based on what pecentage you set, this machine only lets through a certain amount of voltage outputted by its output (its output can be seen by the arrow like pattern on its top pointing to it)",
|
||||
"block.tfmg.potentiometer.tooltip.summary": "Lets through a only a set amount of voltage",
|
||||
"block.tfmg.potentiometer.tooltip.behaviour1": "Based on what pecentage you set, this machine only lets through a certain amount of voltage outputted by its output (its output can be seen by the arrow like pattern on its top pointing to it)",
|
||||
|
||||
"item.tfmg.fireclay.tooltip.summary": "Spawns in underground veins located in the overworld",
|
||||
"block.tfmg.fireclay.tooltip.summary": "Spawns in underground veins located in the overworld",
|
||||
|
||||
"item.tfmg.advanced_potato_cannon.tooltip.summary": "Launches _Napalm Potatoes_ at Enemies. Can be powered with _Air_ _Pressure_ from a _Backtank_",
|
||||
"item.tfmg.advanced_potato_cannon.tooltip.condition1": "When R-Clicked",
|
||||
@@ -209,7 +209,7 @@
|
||||
"block.tfmg.polarizer.tooltip.condition1": "When powered",
|
||||
"block.tfmg.polarizer.tooltip.behaviour1": "Will turn a _Magnetic Ingot_ into a _Magnet_ when right clicked with a _Magnetic Ingot_ after a bit of time",
|
||||
|
||||
"block.tfmg.magnetic_ingot.tooltip.summary": "On ocassion turns into a Magnet when struck by lighting",
|
||||
"item.tfmg.magnetic_alloy_ingot.tooltip.summary": "Striking this with a lightning might do something...",
|
||||
|
||||
"item.tfmg.lithium_blade.tooltip.summary": "Using _Steel Ingot_Lithium Charges_, this Blade is set aflame burning enemies and shooting out Bolts of _Hellfire_",
|
||||
"item.tfmg.lithium_blade.tooltip.condition1": "When R-Clicked when Off",
|
||||
|
||||
Reference in New Issue
Block a user