• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

CyclopsMC / IntegratedDynamics / 20210191346

14 Dec 2025 03:32PM UTC coverage: 19.514% (-33.5%) from 53.061%
20210191346

push

github

rubensworks
Remove deprecations

663 of 8728 branches covered (7.6%)

Branch coverage included in aggregate %.

6786 of 29445 relevant lines covered (23.05%)

1.09 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

17.65
/src/main/java/org/cyclops/integrateddynamics/loot/functions/LootFunctionCopyEnergyBatteryData.java
1
package org.cyclops.integrateddynamics.loot.functions;
2

3
import com.mojang.serialization.MapCodec;
4
import com.mojang.serialization.codecs.RecordCodecBuilder;
5
import net.minecraft.world.item.ItemStack;
6
import net.minecraft.world.level.block.entity.BlockEntity;
7
import net.minecraft.world.level.storage.loot.LootContext;
8
import net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction;
9
import net.minecraft.world.level.storage.loot.functions.LootItemFunctionType;
10
import net.minecraft.world.level.storage.loot.parameters.LootContextParams;
11
import net.minecraft.world.level.storage.loot.predicates.LootItemCondition;
12
import net.neoforged.neoforge.capabilities.Capabilities;
13
import net.neoforged.neoforge.transfer.access.ItemAccess;
14
import net.neoforged.neoforge.transfer.energy.EnergyHandler;
15
import org.cyclops.integrateddynamics.blockentity.BlockEntityEnergyBattery;
16
import org.cyclops.integrateddynamics.capability.energystorage.IEnergyStorageCapacity;
17
import org.cyclops.integrateddynamics.capability.energystorage.IEnergyStorageMutable;
18

19
import java.util.List;
20

21
/**
22
 * Copies energy battery data to the item.
23
 * @author rubensworks
24
 */
25
public class LootFunctionCopyEnergyBatteryData extends LootItemConditionalFunction {
26

27
    public static final MapCodec<LootFunctionCopyEnergyBatteryData> CODEC = RecordCodecBuilder.mapCodec(
3✔
28
            builder -> commonFields(builder).apply(builder, LootFunctionCopyEnergyBatteryData::new)
6✔
29
    );
30
    public static final LootItemFunctionType<LootFunctionCopyEnergyBatteryData> TYPE = new LootItemFunctionType<>(LootFunctionCopyEnergyBatteryData.CODEC);
6✔
31

32
    protected LootFunctionCopyEnergyBatteryData(List<LootItemCondition> conditionsIn) {
33
        super(conditionsIn);
×
34
    }
×
35

36
    @Override
37
    public ItemStack run(ItemStack itemStack, LootContext lootContext) {
38
        BlockEntity tile = lootContext.getOptionalParameter(LootContextParams.BLOCK_ENTITY);
×
39
        if (tile instanceof BlockEntityEnergyBattery) {
×
40
            EnergyHandler energyStorage = itemStack.getCapability(Capabilities.Energy.ITEM, ItemAccess.forStack(itemStack));
×
41
            if (energyStorage != null) {
×
42
                ((IEnergyStorageMutable) energyStorage).setEnergy(((BlockEntityEnergyBattery) tile).getEnergyStored());
×
43
                ((IEnergyStorageCapacity) energyStorage).setCapacity(((BlockEntityEnergyBattery) tile).getMaxEnergyStored());
×
44
            }
45
        }
46
        return itemStack;
×
47
    }
48

49
    @Override
50
    public LootItemFunctionType getType() {
51
        return TYPE;
×
52
    }
53

54
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc