Skip to content

Commit

Permalink
Fixed fridge efficiency config implementation, added waila/top integr…
Browse files Browse the repository at this point in the history
…ation to the item you're looking at (specially food, closes #72).
  • Loading branch information
DisasterMoo committed Feb 19, 2021
1 parent 8012362 commit c77f300
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 2 deletions.
31 changes: 31 additions & 0 deletions src/main/java/tfctech/compat/waila/TOPPlugin.java
Original file line number Diff line number Diff line change
@@ -1,17 +1,23 @@
package tfctech.compat.waila;

import java.util.ArrayList;
import java.util.List;
import java.util.function.Function;
import javax.annotation.Nullable;

import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.text.TextComponentTranslation;
import net.minecraft.world.World;

import mcjty.theoneprobe.api.*;
import net.dries007.tfc.api.capability.food.CapabilityFood;
import net.dries007.tfc.api.capability.food.IFood;
import net.dries007.tfc.util.Helpers;
import tfctech.TFCTech;
import tfctech.objects.blocks.devices.*;
import tfctech.objects.tileentities.*;

Expand Down Expand Up @@ -59,6 +65,31 @@ public void addProbeInfo(ProbeMode probeMode, IProbeInfo iProbeInfo, EntityPlaye
{
IProbeInfo horizontalPane = iProbeInfo.horizontal(iProbeInfo.defaultLayoutStyle().alignment(ElementAlignment.ALIGN_CENTER));
horizontalPane.text((new TextComponentTranslation("waila.tfctech.fridge.efficiency", (int) fridge.getEfficiency())).getFormattedText());
if(fridge.isOpen())
{
int slot = BlockFridge.getPlayerLookingItem(TEPos.down(), entityPlayer, iBlockState.getValue(BlockFridge.FACING));
if (slot > -1)
{
ItemStack stack = fridge.getSlot(slot);
if (!stack.isEmpty())
{
iProbeInfo.horizontal(iProbeInfo.defaultLayoutStyle().alignment(ElementAlignment.ALIGN_CENTER))
.item(stack)
.vertical()
.itemLabel(stack);
IFood cap = stack.getCapability(CapabilityFood.CAPABILITY, null);
List<String> list = new ArrayList<>();
if (cap != null)
{
cap.addTooltipInfo(stack, list, entityPlayer);
}
for(String text : list)
{
iProbeInfo.text(text);
}
}
}
}
}
}
if (b instanceof BlockLatexExtractor)
Expand Down
23 changes: 23 additions & 0 deletions src/main/java/tfctech/compat/waila/WailaIntegration.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package tfctech.compat.waila;

import java.util.ArrayList;
import java.util.List;

import javax.annotation.Nonnull;
Expand All @@ -8,8 +9,13 @@
import net.minecraft.item.ItemStack;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.text.TextComponentTranslation;
import net.minecraft.util.text.TextFormatting;

import mcjty.theoneprobe.api.ElementAlignment;
import mcjty.theoneprobe.api.IProbeInfo;
import mcp.mobius.waila.api.*;
import net.dries007.tfc.api.capability.food.CapabilityFood;
import net.dries007.tfc.api.capability.food.IFood;
import net.dries007.tfc.util.Helpers;
import tfctech.objects.blocks.devices.BlockFridge;
import tfctech.objects.blocks.devices.BlockLatexExtractor;
Expand Down Expand Up @@ -61,6 +67,23 @@ public List<String> getWailaBody(ItemStack itemStack, List<String> currenttip, I
if (fridge != null)
{
currenttip.add((new TextComponentTranslation("waila.tfctech.fridge.efficiency", (int) fridge.getEfficiency())).getFormattedText());
if(fridge.isOpen())
{
int slot = BlockFridge.getPlayerLookingItem(TEPos.down(), accessor.getPlayer(), accessor.getBlockState().getValue(BlockFridge.FACING));
if (slot > -1)
{
ItemStack stack = fridge.getSlot(slot);
if (!stack.isEmpty())
{
currenttip.add(TextFormatting.WHITE + stack.getDisplayName());
IFood cap = stack.getCapability(CapabilityFood.CAPABILITY, null);
if (cap != null)
{
cap.addTooltipInfo(stack, currenttip, accessor.getPlayer());
}
}
}
}
}
}
if (b instanceof BlockLatexExtractor)
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/tfctech/objects/tileentities/TEFridge.java
Original file line number Diff line number Diff line change
Expand Up @@ -440,12 +440,12 @@ public void update()
}
if (this.isOpen() || !energyContainer.consumeEnergy(consumption, false))
{
efficiency -= (100.0F / (TechConfig.DEVICES.fridgeLoseEfficiency * 6000.0F)); //5 Minutes to 0 default
efficiency -= (100.0F / (6000.0F / TechConfig.DEVICES.fridgeLoseEfficiency)); //5 Minutes to 0 default
if (efficiency <= 0) efficiency = 0;
}
else
{
efficiency += (100.0F / (TechConfig.DEVICES.fridgeEfficiency * 36000.0F)); //30 Minutes to 100 default
efficiency += (100.0F / (36000.0F / TechConfig.DEVICES.fridgeEfficiency)); //30 Minutes to 100 default
if (efficiency >= 100) efficiency = 100;
}
if (++applyTrait >= 100)
Expand Down
3 changes: 3 additions & 0 deletions src/main/resources/assets/tfctech/lang/en_us.lang
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,9 @@ tooltip.tfctech.wiredraw.low_tier=Drawing Plate is too low tier!
tooltip.tfctech.gui.energy_format=%s RF/%s RF
tooltip.tfctech.gui.electric_forge.temperature_format=%s ºC

##
tfc.food_traits.cold=§bCold
tfc.food_traits.frozen=§fFrozen

#Config
config.tfctech=TFCTech
Expand Down

0 comments on commit c77f300

Please sign in to comment.