1.1.0b update
@@ -31,7 +31,7 @@ registrate_version = MC1.21-1.3.0+62
|
|||||||
mod_id=tfmg
|
mod_id=tfmg
|
||||||
mod_name=Create: The Factory Must Grow
|
mod_name=Create: The Factory Must Grow
|
||||||
mod_license=MIT
|
mod_license=MIT
|
||||||
mod_version=1.1.0
|
mod_version=1.1.0b
|
||||||
mod_group_id=com.drmangotea
|
mod_group_id=com.drmangotea
|
||||||
mod_authors= DrMangoTea, Pepa, Luna
|
mod_authors= DrMangoTea, Pepa, Luna
|
||||||
mod_description= Create: The Factory Must Grow brings the age of steel, oil and electricity to the Create mod
|
mod_description= Create: The Factory Must Grow brings the age of steel, oil and electricity to the Create mod
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ public class TFMG {
|
|||||||
TFMGDataComponents.register(modEventBus);
|
TFMGDataComponents.register(modEventBus);
|
||||||
TFMGMobEffects.register(modEventBus);
|
TFMGMobEffects.register(modEventBus);
|
||||||
TFMGRecipeTypes.register(modEventBus);
|
TFMGRecipeTypes.register(modEventBus);
|
||||||
TFMGArmorMaterials.register(modEventBus);
|
// TFMGArmorMaterials.register(modEventBus);
|
||||||
TFMGColoredFires.register(modEventBus);
|
TFMGColoredFires.register(modEventBus);
|
||||||
TFMGFeatures.register(modEventBus);
|
TFMGFeatures.register(modEventBus);
|
||||||
TFMGMountedStorageTypes.register();
|
TFMGMountedStorageTypes.register();
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package com.drmangotea.tfmg.base.debug;
|
|||||||
import com.drmangotea.tfmg.TFMG;
|
import com.drmangotea.tfmg.TFMG;
|
||||||
import com.drmangotea.tfmg.content.decoration.tanks.steel.SteelTankBlock;
|
import com.drmangotea.tfmg.content.decoration.tanks.steel.SteelTankBlock;
|
||||||
import com.drmangotea.tfmg.content.decoration.tanks.steel.SteelTankBlockEntity;
|
import com.drmangotea.tfmg.content.decoration.tanks.steel.SteelTankBlockEntity;
|
||||||
|
import com.drmangotea.tfmg.content.electricity.generators.large_generator.StatorBlockEntity;
|
||||||
import net.minecraft.core.BlockPos;
|
import net.minecraft.core.BlockPos;
|
||||||
import net.minecraft.world.InteractionResult;
|
import net.minecraft.world.InteractionResult;
|
||||||
import net.minecraft.world.item.Item;
|
import net.minecraft.world.item.Item;
|
||||||
@@ -27,16 +28,19 @@ public class DebugCinderBlockItem extends Item {
|
|||||||
BlockPos pos = context.getClickedPos();
|
BlockPos pos = context.getClickedPos();
|
||||||
Level level = context.getLevel();
|
Level level = context.getLevel();
|
||||||
|
|
||||||
|
if (level.getBlockEntity(pos) instanceof StatorBlockEntity be) {
|
||||||
|
be.updateRotor();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
if (level.getBlockEntity(pos) instanceof SteelTankBlockEntity be) {
|
if (level.getBlockEntity(pos) instanceof SteelTankBlockEntity be) {
|
||||||
if(!context.getPlayer().isCrouching()) {
|
if (!context.getPlayer().isCrouching()) {
|
||||||
//SteelTankBlock.updateTowerState(be.getLevel(), be.getBlockPos(), true, false);
|
//SteelTankBlock.updateTowerState(be.getLevel(), be.getBlockPos(), true, false);
|
||||||
// be.updateTemperature();
|
// be.updateTemperature();
|
||||||
TFMG.LOGGER.debug(String.valueOf(be.isDistillationTower));
|
TFMG.LOGGER.debug(String.valueOf(be.isDistillationTower));
|
||||||
//be.sendData();
|
//be.sendData();
|
||||||
//be.getControllerBE().sendData();
|
//be.getControllerBE().sendData();
|
||||||
}else {
|
} else {
|
||||||
SteelTankBlock.updateTowerState(be.getLevel(), be.getBlockPos(), false, false);
|
SteelTankBlock.updateTowerState(be.getLevel(), be.getBlockPos(), false, false);
|
||||||
TFMG.LOGGER.debug(String.valueOf(be.isDistillationTower));
|
TFMG.LOGGER.debug(String.valueOf(be.isDistillationTower));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,12 +7,12 @@ public class MachineConfig extends ConfigBase {
|
|||||||
|
|
||||||
public final ConfigInt fireExtinguisherClearRadius = i(1, 0, "fireExtinguisherClearRadius", Comments.fireExtinguisherClearRadius);
|
public final ConfigInt fireExtinguisherClearRadius = i(1, 0, "fireExtinguisherClearRadius", Comments.fireExtinguisherClearRadius);
|
||||||
|
|
||||||
public final ConfigFloat electricMotorInternalResistance = f(100, 0, "electricMotorInternalResistance", Comments.electricMotorInternalResistance);
|
public final ConfigFloat electricMotorInternalResistance = f(30, 0, "electricMotorInternalResistance", Comments.electricMotorInternalResistance);
|
||||||
public final ConfigInt cokeOvenMaxSize = i(5, 1, "cokeOvenMaxSize", Comments.cokeOvenMaxSize);
|
public final ConfigInt cokeOvenMaxSize = i(5, 1, "cokeOvenMaxSize", Comments.cokeOvenMaxSize);
|
||||||
public final ConfigFloat FEtoWattTickConversionRate = f(1, 0, "FEtoWattTickConversionRate", Comments.FEtoWattTickConversionRate);
|
public final ConfigFloat FEtoWattTickConversionRate = f(1, 0, "FEtoWattTickConversionRate", Comments.FEtoWattTickConversionRate);
|
||||||
|
|
||||||
|
|
||||||
public final ConfigInt electrolysisMinimumCurrent = i(5, 1, "electrolysisMinimumCurrent", Comments.electrolysisMinimumCurrent);
|
public final ConfigInt electrolysisMinimumCurrent = i(10, 1, "electrolysisMinimumCurrent", Comments.electrolysisMinimumCurrent);
|
||||||
public final ConfigInt engineMaxLength = i(5, 1, "engineMaxLength", Comments.engineMaxLength);
|
public final ConfigInt engineMaxLength = i(5, 1, "engineMaxLength", Comments.engineMaxLength);
|
||||||
public final ConfigInt surfaceScannerScanDepth = i(-64, -512, "surfaceScannerScanDepth", Comments.surfaceScannerScanDepth);
|
public final ConfigInt surfaceScannerScanDepth = i(-64, -512, "surfaceScannerScanDepth", Comments.surfaceScannerScanDepth);
|
||||||
public final ConfigInt polarizerItemChargingRate = i(1000, 1, "polarizerItemChargingRate", Comments.polarizerItemChargingRate);
|
public final ConfigInt polarizerItemChargingRate = i(1000, 1, "polarizerItemChargingRate", Comments.polarizerItemChargingRate);
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ import net.neoforged.neoforge.client.model.generators.ConfiguredModel;
|
|||||||
import static com.simibubi.create.foundation.data.ModelGen.customItemModel;
|
import static com.simibubi.create.foundation.data.ModelGen.customItemModel;
|
||||||
import static com.simibubi.create.foundation.data.TagGen.axeOrPickaxe;
|
import static com.simibubi.create.foundation.data.TagGen.axeOrPickaxe;
|
||||||
import static com.simibubi.create.foundation.data.TagGen.pickaxeOnly;
|
import static com.simibubi.create.foundation.data.TagGen.pickaxeOnly;
|
||||||
|
@SuppressWarnings("removal")
|
||||||
public class TFMGPipeEntry {
|
public class TFMGPipeEntry {
|
||||||
private final TFMGPipes.PipeMaterial material;
|
private final TFMGPipes.PipeMaterial material;
|
||||||
private final TFMGRegistrate registrate;
|
private final TFMGRegistrate registrate;
|
||||||
@@ -95,7 +95,14 @@ public class TFMGPipeEntry {
|
|||||||
.initialProperties(SharedProperties::copperMetal)
|
.initialProperties(SharedProperties::copperMetal)
|
||||||
.transform(pickaxeOnly())
|
.transform(pickaxeOnly())
|
||||||
.blockstate(BlockStateGen.pipe())
|
.blockstate(BlockStateGen.pipe())
|
||||||
.onRegister(CreateRegistrate.blockModel(()-> this.attachmentModel))
|
.onRegister(CreateRegistrate.blockModel(()->
|
||||||
|
switch (this.material){
|
||||||
|
case BRASS -> TFMGPipeAttachmentModel::withAOBrass;
|
||||||
|
case STEEL -> TFMGPipeAttachmentModel::withAOSteel;
|
||||||
|
case ALUMINUM -> TFMGPipeAttachmentModel::withAOAluminum;
|
||||||
|
case CAST_IRON -> TFMGPipeAttachmentModel::withAOCastIron;
|
||||||
|
case PLASTIC -> TFMGPipeAttachmentModel::withAOPlastic;
|
||||||
|
}))
|
||||||
.item()
|
.item()
|
||||||
.transform(customItemModel())
|
.transform(customItemModel())
|
||||||
.register();
|
.register();
|
||||||
@@ -134,7 +141,14 @@ public class TFMGPipeEntry {
|
|||||||
.build();
|
.build();
|
||||||
}, BlockStateProperties.WATERLOGGED);
|
}, BlockStateProperties.WATERLOGGED);
|
||||||
})
|
})
|
||||||
.onRegister(CreateRegistrate.blockModel(()-> this.attachmentModel))
|
.onRegister(CreateRegistrate.blockModel(()->
|
||||||
|
switch (this.material){
|
||||||
|
case BRASS -> TFMGPipeAttachmentModel::withAOBrass;
|
||||||
|
case STEEL -> TFMGPipeAttachmentModel::withAOSteel;
|
||||||
|
case ALUMINUM -> TFMGPipeAttachmentModel::withAOAluminum;
|
||||||
|
case CAST_IRON -> TFMGPipeAttachmentModel::withAOCastIron;
|
||||||
|
case PLASTIC -> TFMGPipeAttachmentModel::withAOPlastic;
|
||||||
|
}))
|
||||||
.loot((p, b) -> p.dropOther(b, this.pipe.get()))
|
.loot((p, b) -> p.dropOther(b, this.pipe.get()))
|
||||||
.register();
|
.register();
|
||||||
}
|
}
|
||||||
@@ -144,7 +158,14 @@ public class TFMGPipeEntry {
|
|||||||
.initialProperties(SharedProperties::copperMetal)
|
.initialProperties(SharedProperties::copperMetal)
|
||||||
.transform(pickaxeOnly())
|
.transform(pickaxeOnly())
|
||||||
.blockstate(BlockStateGen.directionalBlockProviderIgnoresWaterlogged(true))
|
.blockstate(BlockStateGen.directionalBlockProviderIgnoresWaterlogged(true))
|
||||||
.onRegister(CreateRegistrate.blockModel(()-> this.attachmentModel))
|
.onRegister(CreateRegistrate.blockModel(()->
|
||||||
|
switch (this.material){
|
||||||
|
case BRASS -> TFMGPipeAttachmentModel::withAOBrass;
|
||||||
|
case STEEL -> TFMGPipeAttachmentModel::withAOSteel;
|
||||||
|
case ALUMINUM -> TFMGPipeAttachmentModel::withAOAluminum;
|
||||||
|
case CAST_IRON -> TFMGPipeAttachmentModel::withAOCastIron;
|
||||||
|
case PLASTIC -> TFMGPipeAttachmentModel::withAOPlastic;
|
||||||
|
}))
|
||||||
.transform(TFMGStress.setImpact(4.0))
|
.transform(TFMGStress.setImpact(4.0))
|
||||||
.item()
|
.item()
|
||||||
.transform(customItemModel())
|
.transform(customItemModel())
|
||||||
@@ -156,7 +177,14 @@ public class TFMGPipeEntry {
|
|||||||
.initialProperties(SharedProperties::copperMetal)
|
.initialProperties(SharedProperties::copperMetal)
|
||||||
.transform(pickaxeOnly())
|
.transform(pickaxeOnly())
|
||||||
.blockstate(new SmartFluidPipeGenerator()::generate)
|
.blockstate(new SmartFluidPipeGenerator()::generate)
|
||||||
.onRegister(CreateRegistrate.blockModel(()-> this.attachmentModel))
|
.onRegister(CreateRegistrate.blockModel(()->
|
||||||
|
switch (this.material){
|
||||||
|
case BRASS -> TFMGPipeAttachmentModel::withAOBrass;
|
||||||
|
case STEEL -> TFMGPipeAttachmentModel::withAOSteel;
|
||||||
|
case ALUMINUM -> TFMGPipeAttachmentModel::withAOAluminum;
|
||||||
|
case CAST_IRON -> TFMGPipeAttachmentModel::withAOCastIron;
|
||||||
|
case PLASTIC -> TFMGPipeAttachmentModel::withAOPlastic;
|
||||||
|
}))
|
||||||
.item()
|
.item()
|
||||||
.transform(customItemModel())
|
.transform(customItemModel())
|
||||||
.register();
|
.register();
|
||||||
@@ -170,7 +198,14 @@ public class TFMGPipeEntry {
|
|||||||
.blockstate((c, p) -> BlockStateGen.directionalAxisBlock(c, p,
|
.blockstate((c, p) -> BlockStateGen.directionalAxisBlock(c, p,
|
||||||
(state, vertical) -> AssetLookup.partialBaseModel(c, p, vertical ? "vertical" : "horizontal",
|
(state, vertical) -> AssetLookup.partialBaseModel(c, p, vertical ? "vertical" : "horizontal",
|
||||||
state.getValue(FluidValveBlock.ENABLED) ? "open" : "closed")))
|
state.getValue(FluidValveBlock.ENABLED) ? "open" : "closed")))
|
||||||
.onRegister(CreateRegistrate.blockModel(() -> this.attachmentModel))
|
.onRegister(CreateRegistrate.blockModel(()->
|
||||||
|
switch (this.material){
|
||||||
|
case BRASS -> TFMGPipeAttachmentModel::withAOBrass;
|
||||||
|
case STEEL -> TFMGPipeAttachmentModel::withAOSteel;
|
||||||
|
case ALUMINUM -> TFMGPipeAttachmentModel::withAOAluminum;
|
||||||
|
case CAST_IRON -> TFMGPipeAttachmentModel::withAOCastIron;
|
||||||
|
case PLASTIC -> TFMGPipeAttachmentModel::withAOPlastic;
|
||||||
|
}))
|
||||||
.item()
|
.item()
|
||||||
.transform(customItemModel())
|
.transform(customItemModel())
|
||||||
.register();
|
.register();
|
||||||
|
|||||||
@@ -43,15 +43,15 @@ public class TFMGPipes {
|
|||||||
public static final Map<PipeMaterial, TFMGPipeEntry> PIPES = new HashMap<>();
|
public static final Map<PipeMaterial, TFMGPipeEntry> PIPES = new HashMap<>();
|
||||||
|
|
||||||
static {
|
static {
|
||||||
PIPES.put(PipeMaterial.BRASS, createEntry(PipeMaterial.BRASS, TFMGPipeAttachmentModel::withAOBrass, TFMGSpriteShifts.BRASS_FLUID_CASING));
|
PIPES.put(PipeMaterial.BRASS, createEntry(PipeMaterial.BRASS, TFMGSpriteShifts.BRASS_FLUID_CASING));
|
||||||
PIPES.put(PipeMaterial.STEEL, createEntry(PipeMaterial.STEEL, TFMGPipeAttachmentModel::withAOSteel, TFMGSpriteShifts.STEEL_FLUID_CASING));
|
PIPES.put(PipeMaterial.STEEL, createEntry(PipeMaterial.STEEL, TFMGSpriteShifts.STEEL_FLUID_CASING));
|
||||||
PIPES.put(PipeMaterial.ALUMINUM, createEntry(PipeMaterial.ALUMINUM, TFMGPipeAttachmentModel::withAOAluminum, TFMGSpriteShifts.ALUMINUM_FLUID_CASING));
|
PIPES.put(PipeMaterial.ALUMINUM, createEntry(PipeMaterial.ALUMINUM, TFMGSpriteShifts.ALUMINUM_FLUID_CASING));
|
||||||
PIPES.put(PipeMaterial.CAST_IRON, createEntry(PipeMaterial.CAST_IRON, TFMGPipeAttachmentModel::withAOCastIron, TFMGSpriteShifts.CAST_IRON_FLUID_CASING));
|
PIPES.put(PipeMaterial.CAST_IRON, createEntry(PipeMaterial.CAST_IRON, TFMGSpriteShifts.CAST_IRON_FLUID_CASING));
|
||||||
PIPES.put(PipeMaterial.PLASTIC, createEntry(PipeMaterial.PLASTIC, TFMGPipeAttachmentModel::withAOPlastic, TFMGSpriteShifts.PLASTIC_FLUID_CASING));
|
PIPES.put(PipeMaterial.PLASTIC, createEntry(PipeMaterial.PLASTIC, TFMGSpriteShifts.PLASTIC_FLUID_CASING));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static TFMGPipeEntry createEntry(PipeMaterial material, NonNullFunction<BakedModel, ? extends BakedModel> attachmentModel, CTSpriteShiftEntry spriteShiftEntry) {
|
private static TFMGPipeEntry createEntry(PipeMaterial material, CTSpriteShiftEntry spriteShiftEntry) {
|
||||||
return new TFMGPipeEntry(material, registrate).attachmentModel(attachmentModel).encasedSpriteShift(spriteShiftEntry);
|
return new TFMGPipeEntry(material, registrate).encasedSpriteShift(spriteShiftEntry);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void init() {
|
public static void init() {
|
||||||
|
|||||||
@@ -90,6 +90,12 @@ public class RotorBlockEntity extends KineticElectricBlockEntity {
|
|||||||
return (int) Math.max(0, ((Math.abs(getSpeed()) - maxSpeed) * modifier));
|
return (int) Math.max(0, ((Math.abs(getSpeed()) - maxSpeed) * modifier));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onSpeedChanged(float previousSpeed) {
|
||||||
|
super.onSpeedChanged(previousSpeed);
|
||||||
|
updateNextTick();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int powerGeneration() {
|
public int powerGeneration() {
|
||||||
return (int) (generation() * 40*1.84563);
|
return (int) (generation() * 40*1.84563);
|
||||||
|
|||||||
@@ -5,6 +5,10 @@ import com.simibubi.create.api.equipment.goggles.IHaveGoggleInformation;
|
|||||||
import net.minecraft.core.BlockPos;
|
import net.minecraft.core.BlockPos;
|
||||||
import net.minecraft.world.level.block.entity.BlockEntityType;
|
import net.minecraft.world.level.block.entity.BlockEntityType;
|
||||||
import net.minecraft.world.level.block.state.BlockState;
|
import net.minecraft.world.level.block.state.BlockState;
|
||||||
|
import net.minecraft.world.phys.AABB;
|
||||||
|
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
public class StatorBlockEntity extends ElectricBlockEntity implements IHaveGoggleInformation {
|
public class StatorBlockEntity extends ElectricBlockEntity implements IHaveGoggleInformation {
|
||||||
@@ -31,6 +35,8 @@ public class StatorBlockEntity extends ElectricBlockEntity implements IHaveGoggl
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void tick() {
|
public void tick() {
|
||||||
super.tick();
|
super.tick();
|
||||||
@@ -43,9 +49,23 @@ public class StatorBlockEntity extends ElectricBlockEntity implements IHaveGoggl
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void updateRotor(){
|
||||||
|
|
||||||
|
|
||||||
|
Iterable<BlockPos> blocksAround = BlockPos.betweenClosed(getBlockPos().below().north().west(),getBlockPos().above().east().east());
|
||||||
|
|
||||||
|
for (BlockPos blockPos : blocksAround) {
|
||||||
|
if(level.getBlockEntity(blockPos) instanceof RotorBlockEntity be) {
|
||||||
|
be.updateNextTick();
|
||||||
|
timer = 11;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onPlaced() {
|
public void onPlaced() {
|
||||||
super.onPlaced();
|
super.onPlaced();
|
||||||
|
updateRotor();
|
||||||
if (rotor != null)
|
if (rotor != null)
|
||||||
if (level.getBlockEntity(rotor) instanceof RotorBlockEntity be) {
|
if (level.getBlockEntity(rotor) instanceof RotorBlockEntity be) {
|
||||||
timer =11;
|
timer =11;
|
||||||
@@ -56,6 +76,7 @@ public class StatorBlockEntity extends ElectricBlockEntity implements IHaveGoggl
|
|||||||
@Override
|
@Override
|
||||||
public void destroy() {
|
public void destroy() {
|
||||||
super.destroy();
|
super.destroy();
|
||||||
|
updateRotor();
|
||||||
if (rotor != null)
|
if (rotor != null)
|
||||||
if (level.getBlockEntity(rotor) instanceof RotorBlockEntity be) {
|
if (level.getBlockEntity(rotor) instanceof RotorBlockEntity be) {
|
||||||
be.updateNextTick();
|
be.updateNextTick();
|
||||||
|
|||||||
@@ -97,6 +97,7 @@ public class ElectricMotorBlockEntity extends KineticElectricBlockEntity {
|
|||||||
public void onNetworkChanged(int oldVoltage, int oldPower) {
|
public void onNetworkChanged(int oldVoltage, int oldPower) {
|
||||||
//if (oldPower != getPowerUsage() || oldVoltage != data.voltage) {
|
//if (oldPower != getPowerUsage() || oldVoltage != data.voltage) {
|
||||||
delayedUpdate = true;
|
delayedUpdate = true;
|
||||||
|
updateNextTick();
|
||||||
notifyUpdate();
|
notifyUpdate();
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1048,7 +1048,7 @@ public class TFMGBlocks {
|
|||||||
.transform(pickaxeOnly())
|
.transform(pickaxeOnly())
|
||||||
.properties(BlockBehaviour.Properties::noOcclusion)
|
.properties(BlockBehaviour.Properties::noOcclusion)
|
||||||
.blockstate(new CreativeMotorGenerator()::generate)
|
.blockstate(new CreativeMotorGenerator()::generate)
|
||||||
.transform(TFMGStress.setCapacity(45.0))
|
.transform(TFMGStress.setCapacity(12))
|
||||||
.onRegister(BlockStressValues.setGeneratorSpeed(64, true))
|
.onRegister(BlockStressValues.setGeneratorSpeed(64, true))
|
||||||
.item()
|
.item()
|
||||||
.transform(customItemModel())
|
.transform(customItemModel())
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ public class TFMGElectrodes {
|
|||||||
|
|
||||||
public static final ElectrodeEntry<Electrode> copper = REGISTRATE.electrode("copper", Electrode::new)
|
public static final ElectrodeEntry<Electrode> copper = REGISTRATE.electrode("copper", Electrode::new)
|
||||||
.properties((p) -> p
|
.properties((p) -> p
|
||||||
.resistance(100)
|
.resistance(10)
|
||||||
.item(TFMGItems.COPPER_ELECTRODE)
|
.item(TFMGItems.COPPER_ELECTRODE)
|
||||||
.operationId("tfmg:electrode")
|
.operationId("tfmg:electrode")
|
||||||
)
|
)
|
||||||
@@ -22,7 +22,7 @@ public class TFMGElectrodes {
|
|||||||
|
|
||||||
public static final ElectrodeEntry<Electrode> zinc = REGISTRATE.electrode("zinc", Electrode::new)
|
public static final ElectrodeEntry<Electrode> zinc = REGISTRATE.electrode("zinc", Electrode::new)
|
||||||
.properties((p) -> p
|
.properties((p) -> p
|
||||||
.resistance(100)
|
.resistance(10)
|
||||||
.item(TFMGItems.ZINC_ELECTRODE)
|
.item(TFMGItems.ZINC_ELECTRODE)
|
||||||
.operationId("tfmg:electrode")
|
.operationId("tfmg:electrode")
|
||||||
)
|
)
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 810 B |
|
Before Width: | Height: | Size: 537 B After Width: | Height: | Size: 524 B |
|
Before Width: | Height: | Size: 548 B After Width: | Height: | Size: 511 B |
|
Before Width: | Height: | Size: 277 B After Width: | Height: | Size: 534 B |
|
Before Width: | Height: | Size: 279 B After Width: | Height: | Size: 534 B |
|
Before Width: | Height: | Size: 278 B After Width: | Height: | Size: 528 B |
|
Before Width: | Height: | Size: 244 B After Width: | Height: | Size: 473 B |
|
Before Width: | Height: | Size: 297 B After Width: | Height: | Size: 534 B |
|
Before Width: | Height: | Size: 539 B After Width: | Height: | Size: 512 B |