Merge remote-tracking branch 'remotes/origin/1.12' into 1.13-prep

# Conflicts:
#	src/main/java/techreborn/blocks/BlockRubberLog.java
#	src/main/java/techreborn/client/gui/GuiAlloySmelter.java
#	src/main/java/techreborn/client/gui/GuiAssemblingMachine.java
#	src/main/java/techreborn/client/gui/GuiChemicalReactor.java
#	src/main/java/techreborn/client/gui/GuiCompressor.java
#	src/main/java/techreborn/client/gui/GuiDieselGenerator.java
#	src/main/java/techreborn/client/gui/GuiElectricFurnace.java
#	src/main/java/techreborn/client/gui/GuiExtractor.java
#	src/main/java/techreborn/client/gui/GuiGasTurbine.java
#	src/main/java/techreborn/client/gui/GuiGrinder.java
#	src/main/java/techreborn/client/gui/GuiIndustrialElectrolyzer.java
#	src/main/java/techreborn/client/gui/GuiIronFurnace.java
#	src/main/java/techreborn/client/gui/GuiRecycler.java
#	src/main/java/techreborn/client/gui/GuiScrapboxinator.java
#	src/main/java/techreborn/client/gui/GuiSemifluidGenerator.java
#	src/main/java/techreborn/client/gui/GuiThermalGenerator.java
#	src/main/java/techreborn/compat/jei/alloySmelter/AlloySmelterRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/assemblingMachine/AssemblingMachineRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/blastFurnace/BlastFurnaceRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/centrifuge/CentrifugeRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/chemicalReactor/ChemicalReactorRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/compressor/CompressorRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/distillationTower/DistillationTowerRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/extractor/ExtractorRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/fluidReplicator/FluidReplicatorRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/grinder/GrinderRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/implosionCompressor/ImplosionCompressorRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/vacuumFreezer/VacuumFreezerRecipeWrapper.java
#	src/main/java/techreborn/events/StackToolTipEvent.java
#	src/main/java/techreborn/items/armor/ItemCloakingDevice.java
#	src/main/java/techreborn/items/armor/ItemLapotronicOrbpack.java
#	src/main/java/techreborn/items/armor/ItemLithiumIonBatpack.java
#	src/main/java/techreborn/items/battery/ItemBattery.java
#	src/main/java/techreborn/items/battery/ItemEnergyCrystal.java
#	src/main/java/techreborn/items/battery/ItemLapotronCrystal.java
#	src/main/java/techreborn/items/battery/ItemLapotronicOrb.java
#	src/main/java/techreborn/items/battery/ItemLithiumIonBattery.java
#	src/main/java/techreborn/items/battery/ItemRedCellBattery.java
#	src/main/java/techreborn/items/tool/ItemChainsaw.java
#	src/main/java/techreborn/items/tool/ItemDrill.java
#	src/main/java/techreborn/items/tool/ItemJackhammer.java
#	src/main/java/techreborn/items/tool/advanced/ItemAdvancedChainsaw.java
#	src/main/java/techreborn/items/tool/advanced/ItemAdvancedDrill.java
#	src/main/java/techreborn/items/tool/advanced/ItemAdvancedJackhammer.java
#	src/main/java/techreborn/items/tool/advanced/ItemRockCutter.java
#	src/main/java/techreborn/items/tool/basic/ItemBasicChainsaw.java
#	src/main/java/techreborn/items/tool/basic/ItemBasicDrill.java
#	src/main/java/techreborn/items/tool/basic/ItemBasicJackhammer.java
#	src/main/java/techreborn/items/tool/basic/ItemElectricTreetap.java
#	src/main/java/techreborn/items/tool/industrial/ItemIndustrialChainsaw.java
#	src/main/java/techreborn/items/tool/industrial/ItemIndustrialDrill.java
#	src/main/java/techreborn/items/tool/industrial/ItemIndustrialJackhammer.java
#	src/main/java/techreborn/items/tool/industrial/ItemNanosaber.java
#	src/main/java/techreborn/items/tool/industrial/ItemOmniTool.java
#	src/main/java/techreborn/tiles/TileChargeOMat.java
#	src/main/java/techreborn/tiles/storage/TileEnergyStorage.java
This commit is contained in:
modmuss50 2019-01-07 22:58:42 +00:00
commit 7df4742784
59 changed files with 332 additions and 290 deletions

View file

@ -167,9 +167,9 @@ public class BlockRubberLog extends Block {
if (stack.isEmpty()) {
return false;
}
IEnergyStorage capEnergy = null;
ForgePowerItemManager capEnergy = null;
if (stack.getItem() instanceof ItemElectricTreetap) {
capEnergy = stack.getCapability(CapabilityEnergy.ENERGY, null);
capEnergy = new ForgePowerItemManager(stack);
}
if ((capEnergy != null && capEnergy.getEnergyStored() > 20) || stack.getItem() instanceof ItemTreeTap) {
if (state.getValue(HAS_SAP) && state.getValue(SAP_SIDE) == side) {
@ -180,6 +180,8 @@ public class BlockRubberLog extends Block {
if (!worldIn.isRemote) {
if (capEnergy != null) {
capEnergy.extractEnergy(20, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, playerIn);
} else {
playerIn.getHeldItem(EnumHand.MAIN_HAND).damageItem(1, playerIn);
}

View file

@ -26,7 +26,6 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import techreborn.tiles.machine.tier1.TileAlloySmelter;
public class GuiAlloySmelter extends GuiBase {
@ -58,8 +57,8 @@ public class GuiAlloySmelter extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 55, 51, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 51, mouseX, mouseY, TRBuilder.ProgressDirection.LEFT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 55, 51, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 51, mouseX, mouseY, GuiBuilder.ProgressDirection.LEFT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -25,9 +25,9 @@
package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import reborncore.client.gui.guibuilder.GuiBuilder;
import techreborn.tiles.machine.tier1.TileAssemblingMachine;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
public class GuiAssemblingMachine extends GuiBase {
@ -60,7 +60,7 @@ public class GuiAssemblingMachine extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -33,7 +33,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.IRecipe;
import net.minecraft.util.ResourceLocation;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.common.network.NetworkManager;
import techreborn.packets.PacketAutoCraftingTableLock;
import techreborn.tiles.machine.tier1.TileAutoCraftingTable;
@ -87,8 +87,9 @@ public class GuiAutoCrafting extends GuiBase {
renderItemStack(recipe.getRecipeOutput(), 95, 42);
}
final Layer layer = Layer.FOREGROUND;
builder.drawProgressBar(this, tileAutoCraftingTable.getProgress(), tileAutoCraftingTable.getMaxProgress(), 120, 44, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 26, (int) tileAutoCraftingTable.getEnergy(), (int) tileAutoCraftingTable.getMaxPower(), mouseX, mouseY, 0, layer);
builder.drawProgressBar(this, tileAutoCraftingTable.getProgress(), tileAutoCraftingTable.getMaxProgress(), 120, 44, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
}
@Override
@ -109,7 +110,7 @@ public class GuiAutoCrafting extends GuiBase {
@Override
protected void mouseClicked(int mouseX, int mouseY, int mouseButton) throws IOException {
if (builder.isInRect(145 + getGuiLeft(), 4 + getGuiTop(), 20, 12, mouseX, mouseY)) {
if (isPointInRect(145 + getGuiLeft(), 4 + getGuiTop(), 20, 12, mouseX, mouseY)) {
NetworkManager.sendToServer(new PacketAutoCraftingTableLock(tileAutoCraftingTable, !tileAutoCraftingTable.locked));
return;
}

View file

@ -32,7 +32,7 @@ import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import reborncore.ClientProxy;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.client.multiblock.Multiblock;
import reborncore.client.multiblock.MultiblockRenderEvent;
import reborncore.client.multiblock.MultiblockSet;
@ -82,7 +82,7 @@ public class GuiBlastFurnace extends GuiBase {
this.hasMultiBlock = tile.getCachedHeat() != 0;
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 71, 40, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 71, 40, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawBigHeatBar(this, 31, 71, tile.getCachedHeat(), 3230, layer);
if (hasMultiBlock) {

View file

@ -26,7 +26,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import techreborn.tiles.TileIndustrialCentrifuge;
public class GuiCentrifuge extends GuiBase {
@ -61,7 +61,7 @@ public class GuiCentrifuge extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final Layer layer = Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 61, 47, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 61, 47, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -27,7 +27,6 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import techreborn.tiles.machine.tier1.TileChemicalReactor;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
public class GuiChemicalReactor extends GuiBase {
@ -57,8 +56,8 @@ public class GuiChemicalReactor extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 55, 51, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 51, mouseX, mouseY, TRBuilder.ProgressDirection.LEFT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 55, 51, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 51, mouseX, mouseY, GuiBuilder.ProgressDirection.LEFT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -27,7 +27,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import techreborn.tiles.machine.tier1.TileCompressor;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
public class GuiCompressor extends GuiBase {
@ -56,7 +56,7 @@ public class GuiCompressor extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
this.builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
this.builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
this.builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -28,7 +28,6 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import techreborn.tiles.generator.advanced.TileDieselGenerator;
@SideOnly(Side.CLIENT)
@ -56,7 +55,7 @@ public class GuiDieselGenerator extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 130, 28, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
builder.drawTank(this, 44, 25, mouseX, mouseY, tile.tank.getFluid(), tile.tank.getCapacity(), tile.tank.isEmpty(), layer);

View file

@ -32,7 +32,7 @@ import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import reborncore.ClientProxy;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.client.multiblock.Multiblock;
import reborncore.client.multiblock.MultiblockRenderEvent;
import reborncore.client.multiblock.MultiblockSet;
@ -80,7 +80,7 @@ public class GuiDistillationTower extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 55, 40, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 55, 40, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
if (tile.getMutliBlock()) {
addHologramButton(6, 4, 212, layer);

View file

@ -27,7 +27,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import techreborn.tiles.machine.tier1.TileElectricFurnace;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
public class GuiElectricFurnace extends GuiBase {
@ -56,7 +56,7 @@ public class GuiElectricFurnace extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
Layer layer = Layer.FOREGROUND;
builder.drawProgressBar(this, tile.gaugeProgressScaled(100), 100, 76, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.gaugeProgressScaled(100), 100, 76, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -27,7 +27,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import techreborn.tiles.machine.tier1.TileExtractor;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
public class GuiExtractor extends GuiBase {
@ -56,7 +56,7 @@ public class GuiExtractor extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -31,7 +31,7 @@ import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import reborncore.ClientProxy;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.client.multiblock.Multiblock;
import reborncore.client.multiblock.MultiblockRenderEvent;
import reborncore.client.multiblock.MultiblockSet;
@ -97,8 +97,8 @@ public class GuiFluidReplicator extends GuiBase {
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawTank(this, 99, 25, mouseX, mouseY, tile.tank.getFluid(), tile.tank.getCapacity(), tile.tank.isEmpty(), layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
if (tile.getMultiBlock()) {
addHologramButton(6, 4, 212, layer);
builder.drawHologramButton(this, 6, 4, mouseX, mouseY, layer);

View file

@ -31,7 +31,7 @@ import net.minecraft.util.math.BlockPos;
import org.apache.commons.lang3.tuple.Pair;
import reborncore.ClientProxy;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.client.multiblock.Multiblock;
import reborncore.client.multiblock.MultiblockRenderEvent;
import reborncore.client.multiblock.MultiblockSet;
@ -75,8 +75,8 @@ public class GuiFusionReactor extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 55, 51, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 51, mouseX, mouseY, TRBuilder.ProgressDirection.LEFT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 55, 51, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 51, mouseX, mouseY, GuiBuilder.ProgressDirection.LEFT, layer);
if (tile.getCoilStatus() > 0) {
addHologramButton(6, 4, 212, layer);
builder.drawHologramButton(this, 6, 4, mouseX, mouseY, layer);

View file

@ -27,7 +27,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import techreborn.tiles.generator.advanced.TileGasTurbine;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
public class GuiGasTurbine extends GuiBase {
@ -53,7 +53,7 @@ public class GuiGasTurbine extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 130, 28, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
builder.drawTank(this, 44, 25, mouseX, mouseY, tile.tank.getFluid(), tile.tank.getCapacity(), tile.tank.isEmpty(), layer);

View file

@ -26,7 +26,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import techreborn.tiles.machine.tier1.TileGrinder;
public class GuiGrinder extends GuiBase {
@ -56,7 +56,7 @@ public class GuiGrinder extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -31,7 +31,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.math.BlockPos;
import reborncore.ClientProxy;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.client.multiblock.Multiblock;
import reborncore.client.multiblock.MultiblockRenderEvent;
import reborncore.client.multiblock.MultiblockSet;
@ -83,7 +83,7 @@ public class GuiImplosionCompressor extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 71, 40, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 71, 40, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
if (tile.getMutliBlock()) {
addHologramButton(6, 4, 212, layer);

View file

@ -27,7 +27,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import techreborn.tiles.machine.tier1.TileIndustrialElectrolyzer;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
public class GuiIndustrialElectrolyzer extends GuiBase {
@ -58,7 +58,7 @@ public class GuiIndustrialElectrolyzer extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 84, 52, mouseX, mouseY, TRBuilder.ProgressDirection.UP, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 84, 52, mouseX, mouseY, GuiBuilder.ProgressDirection.UP, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}

View file

@ -32,7 +32,7 @@ import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import reborncore.ClientProxy;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.client.multiblock.Multiblock;
import reborncore.client.multiblock.MultiblockRenderEvent;
import reborncore.client.multiblock.MultiblockSet;
@ -85,7 +85,7 @@ public class GuiIndustrialGrinder extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final Layer layer = Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 47, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 47, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawTank(this, 53, 25, mouseX, mouseY, tile.tank.getFluid(), tile.tank.getCapacity(), tile.tank.isEmpty(), layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
if (tile.getMutliBlock()) {

View file

@ -32,7 +32,7 @@ import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import reborncore.ClientProxy;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.client.multiblock.Multiblock;
import reborncore.client.multiblock.MultiblockRenderEvent;
import reborncore.client.multiblock.MultiblockSet;
@ -84,7 +84,7 @@ public class GuiIndustrialSawmill extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final Layer layer = Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 47, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 105, 47, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawTank(this, 53, 25, mouseX, mouseY, tile.tank.getFluid(), tile.tank.getCapacity(), tile.tank.isEmpty(), layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
if (tile.getMutliBlock()) {

View file

@ -48,14 +48,14 @@ public class GuiIronFurnace extends GuiBase {
}
@Override
protected void drawGuiContainerBackgroundLayer(final float p_146976_1_, final int p_146976_2_, final int p_146976_3_) {
protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) {
drawDefaultBackground();
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
builder.drawSlotTab(this, guiLeft, guiTop, p_146976_2_, p_146976_3_, upgrades, new ItemStack(TRContent.WRENCH));
this.mc.getTextureManager().bindTexture(GuiIronFurnace.texture);
final int k = (this.width - this.xSize) / 2;
final int l = (this.height - this.ySize) / 2;
this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize);
builder.drawSlotTab(this, guiLeft - 24, guiTop + 6, new ItemStack(TRContent.WRENCH));
mc.getTextureManager().bindTexture(GuiIronFurnace.texture);
final int k = (this.width - xSize) / 2;
final int l = (this.height - ySize) / 2;
drawTexturedModalRect(k, l, 0, 0, xSize, ySize);
int j = 0;
@ -71,12 +71,12 @@ public class GuiIronFurnace extends GuiBase {
}
@Override
protected void drawGuiContainerForegroundLayer(final int p_146979_1_, final int p_146979_2_) {
protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) {
final String name = I18n.format("tile.techreborn.iron_furnace.name");
fontRenderer.drawString(name, xSize / 2 - fontRenderer.getStringWidth(name) / 2, 6, 4210752);
fontRenderer.drawString(I18n.format("container.inventory", new Object[0]), 8, ySize - 96 + 2, 4210752);
super.drawGuiContainerForegroundLayer(p_146979_1_, p_146979_2_);
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
}
@Override

View file

@ -26,7 +26,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import techreborn.tiles.TileMatterFabricator;
public class GuiMatterFabricator extends GuiBase {
@ -60,7 +60,7 @@ public class GuiMatterFabricator extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final Layer layer = Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 83, 41, mouseX, mouseY, TRBuilder.ProgressDirection.DOWN, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 83, 41, mouseX, mouseY, GuiBuilder.ProgressDirection.DOWN, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -28,7 +28,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import techreborn.tiles.generator.TilePlasmaGenerator;
/**
@ -65,7 +65,7 @@ public class GuiPlasmaGenerator extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 130, 28, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
builder.drawTank(this, 44, 25, mouseX, mouseY, tile.tank.getFluid(), tile.tank.getCapacity(), tile.tank.isEmpty(), layer);

View file

@ -27,7 +27,6 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import techreborn.tiles.machine.tier1.TileRecycler;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
public class GuiRecycler extends GuiBase {
@ -54,7 +53,7 @@ public class GuiRecycler extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.gaugeProgressScaled(100), 100, 76, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.gaugeProgressScaled(100), 100, 76, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -26,7 +26,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.common.network.NetworkManager;
import techreborn.packets.PacketRollingMachineLock;
import techreborn.tiles.machine.tier1.TileRollingMachine;
@ -70,13 +70,13 @@ public class GuiRollingMachine extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, rollingMachine.getProgressScaled(100), 100, 92, 43, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, rollingMachine.getProgressScaled(100), 100, 92, 43, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 17, (int) rollingMachine.getEnergy(), (int) rollingMachine.getMaxPower(), mouseX, mouseY, 0, layer);
}
@Override
protected void mouseClicked(int mouseX, int mouseY, int mouseButton) throws IOException {
if(builder.isInRect(130 + getGuiLeft(), 4 + getGuiTop(), 20, 12, mouseX, mouseY)){
if(isPointInRect(130 + getGuiLeft(), 4 + getGuiTop(), 20, 12, mouseX, mouseY)){
NetworkManager.sendToServer(new PacketRollingMachineLock(rollingMachine, !rollingMachine.locked));
return;
}

View file

@ -26,7 +26,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import techreborn.tiles.machine.tier1.TileScrapboxinator;
public class GuiScrapboxinator extends GuiBase {
@ -58,7 +58,7 @@ public class GuiScrapboxinator extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
}
}

View file

@ -27,7 +27,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import techreborn.tiles.generator.advanced.TileSemiFluidGenerator;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
public class GuiSemifluidGenerator extends GuiBase {
@ -53,7 +53,7 @@ public class GuiSemifluidGenerator extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 130, 28, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
builder.drawTank(this, 44, 25, mouseX, mouseY, tile.tank.getFluid(), tile.tank.getCapacity(), tile.tank.isEmpty(), layer);

View file

@ -26,7 +26,7 @@ package techreborn.client.gui;
import net.minecraft.entity.player.EntityPlayer;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import techreborn.tiles.generator.advanced.TileThermalGenerator;
public class GuiThermalGenerator extends GuiBase {
@ -53,7 +53,7 @@ public class GuiThermalGenerator extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(10), 100, 83, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 130, 28, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
builder.drawTank(this, 44, 25, mouseX, mouseY, tile.tank.getFluid(), tile.tank.getCapacity(), tile.tank.isEmpty(), layer);

View file

@ -30,7 +30,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.math.BlockPos;
import reborncore.ClientProxy;
import reborncore.client.gui.builder.GuiBase;
import reborncore.client.gui.builder.TRBuilder;
import reborncore.client.guibuilder.GuiBuilder;
import reborncore.client.multiblock.Multiblock;
import reborncore.client.multiblock.MultiblockRenderEvent;
import reborncore.client.multiblock.MultiblockSet;
@ -77,7 +77,7 @@ public class GuiVacuumFreezer extends GuiBase {
super.drawGuiContainerForegroundLayer(mouseX, mouseY);
final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND;
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, TRBuilder.ProgressDirection.RIGHT, layer);
builder.drawProgressBar(this, tile.getProgressScaled(100), 100, 76, 48, mouseX, mouseY, GuiBuilder.ProgressDirection.RIGHT, layer);
builder.drawMultiEnergyBar(this, 9, 19, (int) tile.getEnergy(), (int) tile.getMaxPower(), mouseX, mouseY, 0, layer);
if (tile.getMultiBlock()) {
addHologramButton(6, 4, 212, layer);

View file

@ -32,7 +32,6 @@ import net.minecraft.item.Item;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.text.TextFormatting;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.event.entity.player.ItemTooltipEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
@ -43,6 +42,8 @@ import reborncore.api.IListInfoProvider;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.RebornCoreConfig;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.StringUtils;
import techreborn.TechReborn;
public class StackToolTipEvent {
@ -58,7 +59,7 @@ public class StackToolTipEvent {
if (item instanceof IListInfoProvider) {
((IListInfoProvider) item).addInfo(event.getToolTip(), false, false);
} else if (event.getItemStack().getItem() instanceof IEnergyItemInfo) {
IEnergyStorage capEnergy = event.getItemStack().getCapability(CapabilityEnergy.ENERGY, null);
IEnergyStorage capEnergy = new ForgePowerItemManager(event.getItemStack());
event.getToolTip().add(1,
TextFormatting.GOLD + PowerSystem.getLocaliszedPowerFormattedNoSuffix(capEnergy.getEnergyStored() / RebornCoreConfig.euPerFU)
+ "/" + PowerSystem.getLocaliszedPowerFormattedNoSuffix(capEnergy.getMaxEnergyStored() / RebornCoreConfig.euPerFU)

View file

@ -34,18 +34,20 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.NonNullList;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.registration.RebornRegister;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
import techreborn.api.Reference;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import javax.annotation.Nullable;
@RebornRegister(modID = TechReborn.MOD_ID)
@ -71,7 +73,7 @@ public class ItemCloakingDevice extends ItemTRArmour implements IEnergyItemInfo
@Override
public void onArmorTick(World world, EntityPlayer player, ItemStack stack) {
IEnergyStorage capEnergy = stack.getCapability(CapabilityEnergy.ENERGY, null);
IEnergyStorage capEnergy = new ForgePowerItemManager(stack);
if (capEnergy != null && capEnergy.getEnergyStored() >= usage) {
capEnergy.extractEnergy(usage, false);
player.setInvisible(true);
@ -88,10 +90,10 @@ public class ItemCloakingDevice extends ItemTRArmour implements IEnergyItemInfo
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack uncharged = new ItemStack(this);
// ItemStack charged = new ItemStack(ModItems.CLOAKING_DEVICE);
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack uncharged = new ItemStack(TRContent.CLOAKING_DEVICE);
ItemStack charged = new ItemStack(TRContent.CLOAKING_DEVICE);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(uncharged);
// itemList.add(charged);
}
@ -114,7 +116,7 @@ public class ItemCloakingDevice extends ItemTRArmour implements IEnergyItemInfo
@Override
@Nullable
public ICapabilityProvider initCapabilities(ItemStack stack, @Nullable NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
// IEnergyItemInfo

View file

@ -38,9 +38,12 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ItemUtils;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import javax.annotation.Nullable;
public class ItemLapotronicOrbpack extends ItemArmor implements IEnergyItemInfo {
@ -61,12 +64,12 @@ public class ItemLapotronicOrbpack extends ItemArmor implements IEnergyItemInfo
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack uncharged = new ItemStack(this);
// ItemStack charged = new ItemStack(ModItems.LAPOTRONIC_ORBPACK);
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack uncharged = new ItemStack(TRContent.LAPOTRONIC_ORBPACK);
ItemStack charged = new ItemStack(TRContent.LAPOTRONIC_ORBPACK);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(uncharged);
// itemList.add(charged);
itemList.add(charged);
}
@Override
@ -94,7 +97,7 @@ public class ItemLapotronicOrbpack extends ItemArmor implements IEnergyItemInfo
public ICapabilityProvider initCapabilities(ItemStack stack,
@Nullable
NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
@Override

View file

@ -34,15 +34,17 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.NonNullList;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ItemUtils;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import javax.annotation.Nullable;
public class ItemLithiumIonBatpack extends ItemArmor implements IEnergyItemInfo {
@ -60,19 +62,12 @@ public class ItemLithiumIonBatpack extends ItemArmor implements IEnergyItemInfo
if (world.isRemote) {
return;
}
if (!itemStack.hasCapability(CapabilityEnergy.ENERGY, null)) {
return;
}
IEnergyStorage capEnergy = itemStack.getCapability(CapabilityEnergy.ENERGY, null);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(itemStack);
for (int i = 0; i < player.inventory.getSizeInventory(); i++) {
if (!player.inventory.getStackInSlot(i).isEmpty()) {
ItemStack item = player.inventory.getStackInSlot(i);
if (!item.hasCapability(CapabilityEnergy.ENERGY, null)) {
continue;
}
IEnergyStorage itemPower = item.getCapability(CapabilityEnergy.ENERGY, null);
capEnergy.extractEnergy(itemPower.receiveEnergy(Math.min(capEnergy.getEnergyStored(), maxSend), false), false);
ExternalPowerSystems.chargeItem(capEnergy, player.inventory.getStackInSlot(i));
}
}
}
@ -103,7 +98,7 @@ public class ItemLithiumIonBatpack extends ItemArmor implements IEnergyItemInfo
public ICapabilityProvider initCapabilities(ItemStack stack,
@Nullable
NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
@Override
@ -118,10 +113,10 @@ public class ItemLithiumIonBatpack extends ItemArmor implements IEnergyItemInfo
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack uncharged = new ItemStack(this);
// ItemStack charged = new ItemStack(ModItems.LITHIUM_ION_BATPACK);
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack uncharged = new ItemStack(TRContent.LITHIUM_ION_BATTERY);
ItemStack charged = new ItemStack(TRContent.LITHIUM_ION_BATTERY);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(uncharged);
// itemList.add(charged);
}

View file

@ -32,12 +32,12 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ItemUtils;
import javax.annotation.Nullable;
@ -56,12 +56,8 @@ public class ItemBattery extends Item implements IEnergyItemInfo {
this.addPropertyOverride(new ResourceLocation("techreborn:empty"), new IItemPropertyGetter() {
@Override
@SideOnly(Side.CLIENT)
public float apply(ItemStack stack,
@Nullable
World worldIn,
@Nullable
EntityLivingBase entityIn) {
if (!stack.isEmpty() && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() == 0) {
public float apply(ItemStack stack, @Nullable World worldIn, @Nullable EntityLivingBase entityIn) {
if (!stack.isEmpty() && new ForgePowerItemManager(stack).getEnergyStored() == 0) {
return 1.0F;
}
return 0.0F;
@ -90,7 +86,7 @@ public class ItemBattery extends Item implements IEnergyItemInfo {
public ICapabilityProvider initCapabilities(ItemStack stack,
@Nullable
NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
// IEnergyItemInfo

View file

@ -29,6 +29,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
@ -46,11 +47,11 @@ public class ItemEnergyCrystal extends ItemBattery {
return;
}
ItemStack stack = new ItemStack(TRContent.ENERGY_CRYSTAL);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
}

View file

@ -29,7 +29,9 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
public class ItemLapotronCrystal extends ItemBattery {
@ -44,12 +46,12 @@ public class ItemLapotronCrystal extends ItemBattery {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack stack = new ItemStack(this);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack stack = new ItemStack(TRContent.LAPOTRON_CRYSTAL);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
}

View file

@ -29,7 +29,9 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
public class ItemLapotronicOrb extends ItemBattery {
@ -44,12 +46,12 @@ public class ItemLapotronicOrb extends ItemBattery {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack stack = new ItemStack(this);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack stack = new ItemStack(TRContent.LAPOTRONIC_ORB);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
}

View file

@ -29,6 +29,8 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.init.TRContent;
public class ItemLithiumIonBattery extends ItemBattery {
@ -43,13 +45,13 @@ public class ItemLithiumIonBattery extends ItemBattery {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack stack = new ItemStack(this);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
//capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack stack = new ItemStack(TRContent.LITHIUM_ION_BATTERY);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
//itemList.add(charged);
itemList.add(charged);
}
}

View file

@ -29,6 +29,8 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.init.TRContent;
public class ItemRedCellBattery extends ItemBattery {
@ -43,12 +45,12 @@ public class ItemRedCellBattery extends ItemBattery {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack stack = new ItemStack(this);
// ItemStack charged = stack.copy();
//IEnergyStorage capEnergy = charged.getCapability(CapabilityEnergy.ENERGY, null);
//capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack stack = new ItemStack(TRContent.LITHIUM_ION_BATTERY);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
//itemList.add(charged);
itemList.add(charged);
}
}

View file

@ -37,12 +37,13 @@ import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ItemUtils;
import javax.annotation.Nullable;
@ -66,13 +67,9 @@ public class ItemChainsaw extends ItemAxe implements IEnergyItemInfo {
this.addPropertyOverride(new ResourceLocation("techreborn", "animated"), new IItemPropertyGetter() {
@Override
@SideOnly(Side.CLIENT)
public float apply(ItemStack stack,
@Nullable
World worldIn,
@Nullable
EntityLivingBase entityIn) {
if (!stack.isEmpty() && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() >= cost
&& entityIn != null && entityIn.getHeldItemMainhand().equals(stack)) {
public float apply(ItemStack stack, @Nullable World worldIn, @Nullable EntityLivingBase entityIn) {
if (!stack.isEmpty() && new ForgePowerItemManager(stack).getEnergyStored() >= cost
&& entityIn != null && entityIn.getHeldItemMainhand().equals(stack)) {
return 1.0F;
}
return 0.0F;
@ -83,8 +80,8 @@ public class ItemChainsaw extends ItemAxe implements IEnergyItemInfo {
// ItemAxe
@Override
public float getDestroySpeed(ItemStack stack, IBlockState state) {
if (stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() >= cost
&& (state.getBlock().isToolEffective("axe", state) || state.getMaterial() == Material.WOOD)) {
if (new ForgePowerItemManager(stack).getEnergyStored() >= cost
&& (state.getBlock().isToolEffective("axe", state) || state.getMaterial() == Material.WOOD)) {
return this.poweredSpeed;
} else {
return super.getDestroySpeed(stack, state);
@ -96,7 +93,10 @@ public class ItemChainsaw extends ItemAxe implements IEnergyItemInfo {
public boolean onBlockDestroyed(ItemStack stack, World worldIn, IBlockState blockIn, BlockPos pos, EntityLivingBase entityLiving) {
Random rand = new Random();
if (rand.nextInt(EnchantmentHelper.getEnchantmentLevel(Enchantments.UNBREAKING, stack) + 1) == 0) {
stack.getCapability(CapabilityEnergy.ENERGY, null).extractEnergy(cost, false);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);
}
return true;
}
@ -126,7 +126,7 @@ public class ItemChainsaw extends ItemAxe implements IEnergyItemInfo {
public ICapabilityProvider initCapabilities(ItemStack stack,
@Nullable
NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
@Override

View file

@ -35,10 +35,11 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ItemUtils;
import javax.annotation.Nullable;
@ -62,7 +63,7 @@ public class ItemDrill extends ItemPickaxe implements IEnergyItemInfo {
// ItemPickaxe
@Override
public float getDestroySpeed(ItemStack stack, IBlockState state) {
if (stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() < cost) {
if (new ForgePowerItemManager(stack).getEnergyStored() < cost) {
return unpoweredSpeed;
}
if (Items.WOODEN_PICKAXE.getDestroySpeed(stack, state) > 1.0F
@ -78,7 +79,10 @@ public class ItemDrill extends ItemPickaxe implements IEnergyItemInfo {
public boolean onBlockDestroyed(ItemStack stack, World worldIn, IBlockState blockIn, BlockPos pos, EntityLivingBase entityLiving) {
Random rand = new Random();
if (rand.nextInt(EnchantmentHelper.getEnchantmentLevel(Enchantments.UNBREAKING, stack) + 1) == 0) {
stack.getCapability(CapabilityEnergy.ENERGY, null).extractEnergy(cost, false);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);
}
return true;
}
@ -114,7 +118,7 @@ public class ItemDrill extends ItemPickaxe implements IEnergyItemInfo {
public ICapabilityProvider initCapabilities(ItemStack stack,
@Nullable
NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
@Override

View file

@ -36,10 +36,11 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ItemUtils;
import techreborn.utils.OreDictUtils;
@ -64,7 +65,7 @@ public class ItemJackhammer extends ItemPickaxe implements IEnergyItemInfo {
@Override
public float getDestroySpeed(ItemStack stack, IBlockState state) {
if ((OreDictUtils.isOre(state, "stone") || state.getBlock() == Blocks.STONE)
&& stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() >= cost) {
&& new ForgePowerItemManager(stack).getEnergyStored() >= cost) {
return efficiency;
} else {
return 0.5F;
@ -76,7 +77,10 @@ public class ItemJackhammer extends ItemPickaxe implements IEnergyItemInfo {
public boolean onBlockDestroyed(ItemStack stack, World worldIn, IBlockState blockIn, BlockPos pos, EntityLivingBase entityLiving) {
Random rand = new Random();
if (rand.nextInt(EnchantmentHelper.getEnchantmentLevel(Enchantments.UNBREAKING, stack) + 1) == 0) {
stack.getCapability(CapabilityEnergy.ENERGY, null).extractEnergy(cost, false);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);
}
return true;
}
@ -90,7 +94,7 @@ public class ItemJackhammer extends ItemPickaxe implements IEnergyItemInfo {
@Override
public boolean canHarvestBlock(final IBlockState state, final ItemStack stack) {
return OreDictUtils.isOre(state, "stone")
|| state.getMaterial() == Material.ROCK && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() >= cost;
|| state.getMaterial() == Material.ROCK && new ForgePowerItemManager(stack).getEnergyStored() >= cost;
}
@Override
@ -118,7 +122,7 @@ public class ItemJackhammer extends ItemPickaxe implements IEnergyItemInfo {
public ICapabilityProvider initCapabilities(ItemStack stack,
@Nullable
NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
@Override

View file

@ -31,6 +31,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemChainsaw;
@ -51,12 +52,12 @@ public class ItemAdvancedChainsaw extends ItemChainsaw {
return;
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_CHAINSAW);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
@Override

View file

@ -31,6 +31,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemDrill;
@ -51,12 +52,12 @@ public class ItemAdvancedDrill extends ItemDrill {
return;
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_DRILL);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
@Override

View file

@ -29,6 +29,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemJackhammer;
@ -50,11 +51,11 @@ public class ItemAdvancedJackhammer extends ItemJackhammer {
return;
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_JACKHAMMER);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
}

View file

@ -38,14 +38,17 @@ import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ItemUtils;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import javax.annotation.Nullable;
import java.util.Random;
@ -73,7 +76,7 @@ public class ItemRockCutter extends ItemPickaxe implements IEnergyItemInfo {
@Override
public float getDestroySpeed(ItemStack stack, IBlockState state) {
if (stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() < cost) {
if (new ForgePowerItemManager(stack).getEnergyStored() < cost) {
return 2F;
} else {
return Items.DIAMOND_PICKAXE.getDestroySpeed(stack, state);
@ -85,7 +88,10 @@ public class ItemRockCutter extends ItemPickaxe implements IEnergyItemInfo {
public boolean onBlockDestroyed(ItemStack stack, World worldIn, IBlockState blockIn, BlockPos pos, EntityLivingBase entityLiving) {
Random rand = new Random();
if (rand.nextInt(EnchantmentHelper.getEnchantmentLevel(Enchantments.UNBREAKING, stack) + 1) == 0) {
stack.getCapability(CapabilityEnergy.ENERGY, null).extractEnergy(cost, false);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);
}
return true;
}
@ -129,7 +135,7 @@ public class ItemRockCutter extends ItemPickaxe implements IEnergyItemInfo {
@Override
@Nullable
public ICapabilityProvider initCapabilities(ItemStack stack, @Nullable NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
@Override
@ -145,10 +151,10 @@ public class ItemRockCutter extends ItemPickaxe implements IEnergyItemInfo {
}
ItemStack uncharged = new ItemStack(this);
uncharged.addEnchantment(Enchantments.SILK_TOUCH, 1);
// ItemStack charged = new ItemStack(ModItems.ROCK_CUTTER);
// charged.addEnchantment(Enchantments.SILK_TOUCH, 1);
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack charged = new ItemStack(TRContent.ROCK_CUTTER);
charged.addEnchantment(Enchantments.SILK_TOUCH, 1);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(uncharged);
// itemList.add(charged);

View file

@ -31,6 +31,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemChainsaw;
@ -50,12 +51,12 @@ public class ItemBasicChainsaw extends ItemChainsaw {
return;
}
ItemStack stack = new ItemStack(TRContent.BASIC_CHAINSAW);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
@Override

View file

@ -31,7 +31,9 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemDrill;
public class ItemBasicDrill extends ItemDrill {
@ -48,13 +50,13 @@ public class ItemBasicDrill extends ItemDrill {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack stack = new ItemStack(this);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack stack = new ItemStack(TRContent.BASIC_DRILL);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
@Override

View file

@ -29,6 +29,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemJackhammer;
@ -48,11 +49,11 @@ public class ItemBasicJackhammer extends ItemJackhammer {
return;
}
ItemStack stack = new ItemStack(TRContent.BASIC_JACKHAMMER);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
}

View file

@ -37,15 +37,16 @@ import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ItemUtils;
import techreborn.api.TechRebornAPI;
import techreborn.init.TRContent;
import javax.annotation.Nullable;
@ -65,10 +66,12 @@ public class ItemElectricTreetap extends Item implements IEnergyItemInfo {
@Override
public EnumActionResult onItemUse(EntityPlayer playerIn, World worldIn, BlockPos pos, EnumHand hand, EnumFacing side, float hitX, float hitY, float hitZ) {
IBlockState state = worldIn.getBlockState(pos);
IEnergyStorage capEnergy = playerIn.getHeldItem(hand).getCapability(CapabilityEnergy.ENERGY, null);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(playerIn.getHeldItem(hand));
if(TechRebornAPI.ic2Helper != null && capEnergy.getEnergyStored() >= cost){
if(TechRebornAPI.ic2Helper.extractSap(playerIn, worldIn, pos, side, state, null) && !worldIn.isRemote){
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, playerIn);
return EnumActionResult.SUCCESS;
}
}
@ -93,7 +96,7 @@ public class ItemElectricTreetap extends Item implements IEnergyItemInfo {
@Override
@Nullable
public ICapabilityProvider initCapabilities(ItemStack stack, @Nullable NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
@SideOnly(Side.CLIENT)
@ -102,13 +105,13 @@ public class ItemElectricTreetap extends Item implements IEnergyItemInfo {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack uncharged = new ItemStack(this);
// ItemStack charged = new ItemStack(ModItems.ELECTRIC_TREE_TAP);
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack uncharged = new ItemStack(TRContent.ELECTRIC_TREE_TAP);
ItemStack charged = new ItemStack(TRContent.ELECTRIC_TREE_TAP);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(uncharged);
// itemList.add(charged);
itemList.add(charged);
}
// IEnergyItemInfo

View file

@ -33,11 +33,12 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemChainsaw;
public class ItemIndustrialChainsaw extends ItemChainsaw {
@ -55,13 +56,13 @@ public class ItemIndustrialChainsaw extends ItemChainsaw {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack stack = new ItemStack(this);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack stack = new ItemStack(TRContent.ADVANCED_CHAINSAW);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
@Override
@ -85,10 +86,12 @@ public class ItemIndustrialChainsaw extends ItemChainsaw {
if (oldPos == pos) {
return;
}
IEnergyStorage capEnergy = stack.getCapability(CapabilityEnergy.ENERGY, null);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
if (capEnergy.getEnergyStored() < cost) {
return;
}
IBlockState blockState = world.getBlockState(pos);
if (blockState.getBlockHardness(world, pos) == -1.0F) {
return;
@ -96,7 +99,10 @@ public class ItemIndustrialChainsaw extends ItemChainsaw {
if(!(entityLiving instanceof EntityPlayer)){
return;
}
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);
blockState.getBlock().harvestBlock(world, (EntityPlayer) entityLiving, pos, blockState, world.getTileEntity(pos), stack);
world.setBlockToAir(pos);
world.removeTileEntity(pos);

View file

@ -36,10 +36,12 @@ import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.world.World;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemDrill;
import javax.annotation.Nullable;
@ -99,7 +101,12 @@ public class ItemIndustrialDrill extends ItemDrill {
public void breakBlock(BlockPos pos, World world, EntityPlayer playerIn, ItemStack drill) {
IBlockState blockState = world.getBlockState(pos);
drill.getCapability(CapabilityEnergy.ENERGY, null).extractEnergy(cost, false);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(drill);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, playerIn);
blockState.getBlock().harvestBlock(world, playerIn, pos, blockState, world.getTileEntity(pos), drill);
world.setBlockToAir(pos);
world.removeTileEntity(pos);
@ -154,12 +161,12 @@ public class ItemIndustrialDrill extends ItemDrill {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack stack = new ItemStack(this);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack stack = new ItemStack(TRContent.ADVANCED_DRILL);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
}

View file

@ -29,7 +29,9 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemJackhammer;
public class ItemIndustrialJackhammer extends ItemJackhammer {
@ -49,12 +51,12 @@ public class ItemIndustrialJackhammer extends ItemJackhammer {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack stack = new ItemStack(this);
// ItemStack charged = stack.copy();
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack stack = new ItemStack(TRContent.ADVANCED_JACKHAMMER);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
// itemList.add(charged);
itemList.add(charged);
}
}

View file

@ -44,16 +44,17 @@ import net.minecraft.util.text.TextComponentString;
import net.minecraft.util.text.TextFormatting;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ChatUtils;
import reborncore.common.util.ItemUtils;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.utils.MessageIDs;
import javax.annotation.Nullable;
@ -78,8 +79,8 @@ public class ItemNanosaber extends ItemSword implements IEnergyItemInfo {
@Nullable
EntityLivingBase entityIn) {
if (ItemUtils.isActive(stack)) {
IEnergyStorage capEnergy = stack.getCapability(CapabilityEnergy.ENERGY, null);
if (capEnergy.getMaxEnergyStored() - capEnergy.getEnergyStored() >= 0.9 * capEnergy.getMaxEnergyStored()) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
if (capEnergy.getMaxEnergyStored() - capEnergy.getEnergyStored() >= 0.9 * capEnergy.getMaxEnergyStored()) {
return 0.5F;
}
return 1.0F;
@ -88,13 +89,15 @@ public class ItemNanosaber extends ItemSword implements IEnergyItemInfo {
}
});
}
// ItemSword
@Override
public boolean hitEntity(ItemStack stack, EntityLivingBase entityliving, EntityLivingBase entityliving1) {
IEnergyStorage capEnergy = stack.getCapability(CapabilityEnergy.ENERGY, null);
public boolean hitEntity(ItemStack stack, EntityLivingBase entityHit, EntityLivingBase entityHitter) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
if (capEnergy.getEnergyStored() >= cost) {
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityHitter);
return true;
} else {
return false;
@ -122,7 +125,7 @@ public class ItemNanosaber extends ItemSword implements IEnergyItemInfo {
public ActionResult<ItemStack> onItemRightClick(final World world, final EntityPlayer player, final EnumHand hand) {
final ItemStack stack = player.getHeldItem(hand);
if (player.isSneaking()) {
if (stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() < cost) {
if (new ForgePowerItemManager(stack).getEnergyStored() < cost) {
ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new TextComponentString(
TextFormatting.GRAY + I18n.format("techreborn.message.nanosaberEnergyErrorTo") + " "
+ TextFormatting.GOLD + I18n
@ -156,8 +159,8 @@ public class ItemNanosaber extends ItemSword implements IEnergyItemInfo {
@Override
public void onUpdate(ItemStack stack, World worldIn, Entity entityIn, int itemSlot, boolean isSelected) {
if (ItemUtils.isActive(stack) && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() < cost) {
if (worldIn.isRemote) {
if (ItemUtils.isActive(stack) && new ForgePowerItemManager(stack).getEnergyStored() < cost) {
if(worldIn.isRemote){
ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new TextComponentString(
TextFormatting.GRAY + I18n.format("techreborn.message.nanosaberEnergyError") + " "
+ TextFormatting.GOLD + I18n
@ -192,7 +195,7 @@ public class ItemNanosaber extends ItemSword implements IEnergyItemInfo {
public ICapabilityProvider initCapabilities(ItemStack stack,
@Nullable
NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
@SideOnly(Side.CLIENT)
@ -206,21 +209,21 @@ public class ItemNanosaber extends ItemSword implements IEnergyItemInfo {
inactiveUncharged.setTagCompound(new NBTTagCompound());
inactiveUncharged.getTagCompound().setBoolean("isActive", false);
// ItemStack inactiveCharged = new ItemStack(ModItems.NANOSABER);
// inactiveCharged.setTagCompound(new NBTTagCompound());
// inactiveCharged.getTagCompound().setBoolean("isActive", false);
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) inactiveCharged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack inactiveCharged = new ItemStack(TRContent.NANOSABER);
inactiveCharged.setTagCompound(new NBTTagCompound());
inactiveCharged.getTagCompound().setBoolean("isActive", false);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(inactiveCharged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
// ItemStack activeCharged = new ItemStack(ModItems.NANOSABER);
// activeCharged.setTagCompound(new NBTTagCompound());
// activeCharged.getTagCompound().setBoolean("isActive", true);
// ForgePowerItemManager capEnergy2 = (ForgePowerItemManager) activeCharged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy2.setEnergyStored(capEnergy2.getMaxEnergyStored());
ItemStack activeCharged = new ItemStack(TRContent.NANOSABER);
activeCharged.setTagCompound(new NBTTagCompound());
activeCharged.getTagCompound().setBoolean("isActive", true);
ForgePowerItemManager capEnergy2 = new ForgePowerItemManager(activeCharged);
capEnergy2.setEnergyStored(capEnergy2.getMaxEnergyStored());
itemList.add(inactiveUncharged);
// itemList.add(inactiveCharged);
// itemList.add(activeCharged);
itemList.add(inactiveCharged);
itemList.add(activeCharged);
}
@SideOnly(Side.CLIENT)

View file

@ -38,16 +38,18 @@ import net.minecraft.util.math.BlockPos;
import net.minecraft.util.text.TextFormatting;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemCapabilityProvider;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.util.ItemUtils;
import reborncore.common.util.TorchHelper;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import javax.annotation.Nullable;
import java.util.List;
@ -77,7 +79,11 @@ public class ItemOmniTool extends ItemPickaxe implements IEnergyItemInfo {
// ItemTool
@Override
public boolean onBlockDestroyed(ItemStack stack, World worldIn, IBlockState blockIn, BlockPos pos, EntityLivingBase entityLiving) {
stack.getCapability(CapabilityEnergy.ENERGY, null).extractEnergy(cost, false);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);
return true;
}
@ -104,9 +110,11 @@ public class ItemOmniTool extends ItemPickaxe implements IEnergyItemInfo {
@Override
public boolean hitEntity(ItemStack stack, EntityLivingBase entityliving, EntityLivingBase attacker) {
IEnergyStorage capEnergy = stack.getCapability(CapabilityEnergy.ENERGY, null);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
if (capEnergy.getEnergyStored() >= hitCost) {
capEnergy.extractEnergy(hitCost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityliving);
entityliving.attackEntityFrom(DamageSource.causePlayerDamage((EntityPlayer) attacker), 8F);
}
return false;
@ -147,7 +155,7 @@ public class ItemOmniTool extends ItemPickaxe implements IEnergyItemInfo {
@Override
@Nullable
public ICapabilityProvider initCapabilities(ItemStack stack, @Nullable NBTTagCompound nbt) {
return new PoweredItemCapabilityProvider(stack);
return new PoweredItemContainerProvider(stack);
}
@SideOnly(Side.CLIENT)
@ -157,13 +165,13 @@ public class ItemOmniTool extends ItemPickaxe implements IEnergyItemInfo {
if (!isInCreativeTab(par2CreativeTabs)) {
return;
}
ItemStack uncharged = new ItemStack(this);
// ItemStack charged = new ItemStack(ModItems.OMNI_TOOL);
// ForgePowerItemManager capEnergy = (ForgePowerItemManager) charged.getCapability(CapabilityEnergy.ENERGY, null);
// capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack uncharged = new ItemStack(TRContent.OMNI_TOOL);
ItemStack charged = new ItemStack(TRContent.OMNI_TOOL);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(uncharged);
// itemList.add(charged);
itemList.add(charged);
}
// IEnergyItemInfo

View file

@ -27,11 +27,8 @@ package techreborn.tiles;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import reborncore.api.IToolDrop;
import reborncore.api.tile.ItemHandlerProvider;
import reborncore.common.RebornCoreConfig;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.registration.RebornRegister;
@ -47,6 +44,8 @@ import reborncore.client.containerBuilder.builder.ContainerBuilder;
public class TileChargeOMat extends TilePowerAcceptor
implements IToolDrop, ItemHandlerProvider, IContainerProvider {
@ConfigRegistry(config = "machines", category = "charge_bench", key = "ChargeBenchMaxOutput", comment = "Charge Bench Max Output (Value in EU)")
public static int maxOutput = 512;
@ConfigRegistry(config = "machines", category = "charge_bench", key = "ChargeBenchMaxInput", comment = "Charge Bench Max Input (Value in EU)")
public static int maxInput = 512;
@ConfigRegistry(config = "machines", category = "charge_bench", key = "ChargeBenchMaxEnergy", comment = "Charge Bench Max Energy (Value in EU)")
@ -67,22 +66,14 @@ public class TileChargeOMat extends TilePowerAcceptor
return;
}
for (int i = 0; i < 6; i++) {
if (!inventory.getStackInSlot(i).isEmpty()) {
final ItemStack stack = inventory.getStackInSlot(i);
if (stack.hasCapability(CapabilityEnergy.ENERGY, null)) {
IEnergyStorage powerItem = stack.getCapability(CapabilityEnergy.ENERGY, null);
int maxReceive = powerItem.receiveEnergy((int)getMaxInput() * RebornCoreConfig.euPerFU, true);
double maxUse = Math.min((double) (maxReceive / RebornCoreConfig.euPerFU), getMaxInput());
if (getEnergy() >= 0.0 && maxReceive > 0) {
powerItem.receiveEnergy((int) useEnergy(maxUse) * RebornCoreConfig.euPerFU, false);
}
} else if (ExternalPowerSystems.isPoweredItem(stack)) {
ExternalPowerSystems.chargeItem(this, stack);
}
ItemStack stack = inventory.getStackInSlot(i);
if (!stack.isEmpty()) {
ExternalPowerSystems.chargeItem(this, stack);
}
}
}
@Override
public double getBaseMaxPower() {
return maxEnergy;
@ -100,7 +91,7 @@ public class TileChargeOMat extends TilePowerAcceptor
@Override
public double getBaseMaxOutput() {
return 0;
return maxOutput;
}
@Override

View file

@ -184,6 +184,11 @@ public class TileIronFurnace extends TileMachineBase
return true;
};
}
@Override
public boolean canBeUpgraded() {
return false;
}
public int getBurnTime() {
return this.fuel;

View file

@ -115,7 +115,7 @@ public class TileRollingMachine extends TilePowerAcceptor
if (world.isRemote) {
return;
}
charge(2);
charge(10);
InventoryCrafting craftMatrix = getCraftingMatrix();
currentRecipe = RollingMachineRecipe.instance.findMatchingRecipe(craftMatrix, world);

View file

@ -28,12 +28,9 @@ import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraftforge.energy.CapabilityEnergy;
import net.minecraftforge.energy.IEnergyStorage;
import reborncore.api.IToolDrop;
import reborncore.api.power.EnumPowerTier;
import reborncore.api.tile.ItemHandlerProvider;
import reborncore.common.RebornCoreConfig;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.TilePowerAcceptor;
import reborncore.common.util.Inventory;
@ -70,14 +67,8 @@ public class TileEnergyStorage extends TilePowerAcceptor
super.update();
if (!inventory.getStackInSlot(0).isEmpty()) {
ItemStack stack = inventory.getStackInSlot(0);
if (stack.hasCapability(CapabilityEnergy.ENERGY, null)) {
IEnergyStorage powerItem = stack.getCapability(CapabilityEnergy.ENERGY, null);
int maxReceive = powerItem.receiveEnergy((int)getMaxOutput() * RebornCoreConfig.euPerFU, true);
double maxUse = Math.min((double) (maxReceive / RebornCoreConfig.euPerFU), getMaxOutput());
if (getEnergy() >= 0.0 && maxReceive > 0) {
powerItem.receiveEnergy((int) useEnergy(maxUse) * RebornCoreConfig.euPerFU, false);
}
} else if (ExternalPowerSystems.isPoweredItem(stack)) {
if (ExternalPowerSystems.isPoweredItem(stack)) {
ExternalPowerSystems.chargeItem(this, stack);
}
}