Skip to content

Commit

Permalink
updated gt lib
Browse files Browse the repository at this point in the history
  • Loading branch information
Trinsdar committed Mar 4, 2025
1 parent d85b65d commit 9367c2d
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 11 deletions.
7 changes: 4 additions & 3 deletions src/main/java/org/gtreimagined/gt4r/data/ToolTypes.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import org.gtreimagined.gtcore.item.ItemPowerUnit;
import org.jetbrains.annotations.NotNull;
import tesseract.TesseractCapUtils;
import tesseract.api.forge.TesseractCaps;
import tesseract.api.gt.IEnergyHandlerItem;
import tesseract.api.gt.IGTNode;
import org.gtreimagined.gt4r.GT4RRef;
Expand Down Expand Up @@ -109,7 +110,7 @@ private static ItemStack getBrokenItem(ItemStack tool, ItemLike broken){
ItemStack powerUnit = new ItemStack(broken);
Tuple<Long, Long> tuple = getEnergy(tool);
CompoundTag dataTag = powerUnit.getOrCreateTagElement(Ref.TAG_ITEM_ENERGY_DATA);
IEnergyHandlerItem handler = TesseractCapUtils.INSTANCE.getEnergyHandlerItem(powerUnit).orElse(null);
IEnergyHandlerItem handler = powerUnit.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).resolve().orElse(null);
if (handler != null){
handler.setEnergy(tuple.getA());
handler.setCapacity(tuple.getB());
Expand All @@ -123,8 +124,8 @@ private static ItemStack getBrokenItem(ItemStack tool, ItemLike broken){

public static Tuple<Long, Long> getEnergy(ItemStack stack){
if (stack.getItem() instanceof ItemBattery battery){
long energy = TesseractCapUtils.INSTANCE.getEnergyHandlerItem(stack).map(IGTNode::getEnergy).orElse((long)0);
long maxEnergy = TesseractCapUtils.INSTANCE.getEnergyHandlerItem(stack).map(IGTNode::getCapacity).orElse(battery.getCapacity());
long energy = stack.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).map(IGTNode::getEnergy).orElse((long)0);
long maxEnergy = stack.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).map(IGTNode::getCapacity).orElse(battery.getCapacity());
return new Tuple<>(energy, maxEnergy);
}
if (stack.getItem() instanceof IAntimatterTool tool){
Expand Down
11 changes: 6 additions & 5 deletions src/main/java/org/gtreimagined/gt4r/items/IElectricTool.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import net.minecraft.world.item.enchantment.EnchantmentHelper;
import tesseract.TesseractCapUtils;
import tesseract.api.context.TesseractItemContext;
import tesseract.api.forge.TesseractCaps;
import tesseract.api.gt.IEnergyHandlerItem;
import tesseract.api.gt.IEnergyItem;

Expand Down Expand Up @@ -68,7 +69,7 @@ default CompoundTag getEnergyTag(ItemStack stack){
}

default CompoundTag validateEnergyTag(ItemStack stack, long startingEnergy, long maxEnergy){
IEnergyHandlerItem h = TesseractCapUtils.INSTANCE.getEnergyHandlerItem(stack).orElse(null);
IEnergyHandlerItem h = stack.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).resolve().orElse(null);
if (h != null){
h.setEnergy(startingEnergy);
h.setCapacity(maxEnergy);
Expand All @@ -81,7 +82,7 @@ default void onGenericFillItemGroup(CreativeModeTab group, NonNullList<ItemStack
if (group != Ref.TAB_ITEMS) return;
if (getAntimatterToolType().isPowered()) {
ItemStack stack = this.getItem().getDefaultInstance();
IEnergyHandlerItem h = TesseractCapUtils.INSTANCE.getEnergyHandlerItem(stack).orElse(null);
IEnergyHandlerItem h = stack.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).resolve().orElse(null);
if (h != null){
h.setCapacity(maxEnergy);
list.add(stack.copy());
Expand All @@ -105,8 +106,8 @@ default void refillTool(ItemStack stack, Player player){
Streams.concat(player.getInventory().items.stream(), player.getInventory().offhand.stream()).forEach(s -> {
if (this.getCurrentEnergy(stack) < getMaxEnergy(stack)){
if (s.getItem() instanceof ItemBattery battery && battery.getTier().getIntegerId() == this.getEnergyTier()){
IEnergyHandlerItem batteryHandler = TesseractCapUtils.INSTANCE.getEnergyHandlerItem(s).orElse(null);
IEnergyHandlerItem toolHandler = TesseractCapUtils.INSTANCE.getEnergyHandlerItem(stack).orElse(null);
IEnergyHandlerItem batteryHandler = s.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).resolve().orElse(null);
IEnergyHandlerItem toolHandler = stack.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).resolve().orElse(null);
if (batteryHandler != null && toolHandler != null){
long extracted = batteryHandler.extractEu(battery.getCapacity(), true);
if (extracted > 0){
Expand Down Expand Up @@ -134,7 +135,7 @@ default int getDefaultEnergyUse(){

default int damage(ItemStack stack, int amount) {
if (!getAntimatterToolType().isPowered()) return amount;
IEnergyHandlerItem h = TesseractCapUtils.INSTANCE.getEnergyHandlerItem(stack).orElse(null);
IEnergyHandlerItem h = stack.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).resolve().orElse(null);
if (!(h instanceof ItemEnergyHandler)) {
return amount;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import org.gtreimagined.gtcore.data.GTCoreTools;
import org.jetbrains.annotations.Nullable;
import tesseract.TesseractCapUtils;
import tesseract.api.forge.TesseractCaps;
import tesseract.api.gt.IEnergyHandlerItem;

import java.util.List;
Expand All @@ -40,7 +41,7 @@ public int getItemColor(ItemStack stack, @org.jetbrains.annotations.Nullable Blo
public void onGenericFillItemGroup(CreativeModeTab group, NonNullList<ItemStack> list, long maxEnergy) {
if (this.allowdedIn(group)){
ItemStack stack = asItemStack(Diamond, Titanium);
IEnergyHandlerItem h = TesseractCapUtils.INSTANCE.getEnergyHandlerItem(stack).orElse(null);
IEnergyHandlerItem h = stack.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).resolve().orElse(null);
if (h != null){
list.add(stack.copy());
h.setCapacity(maxEnergy);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
import tesseract.TesseractCapUtils;
import tesseract.TesseractGraphWrappers;
import org.gtreimagined.gt4r.data.RecipeMaps;
import tesseract.api.forge.TesseractCaps;

import static muramasa.antimatter.recipe.ingredient.RecipeIngredient.of;
import static org.gtreimagined.gt4r.data.Materials.*;
Expand Down Expand Up @@ -49,7 +50,7 @@ public static void init() {

private static ItemStack getFullBattery(ItemLike battery){
ItemStack stack = new ItemStack(battery);
TesseractCapUtils.INSTANCE.getEnergyHandlerItem(stack).ifPresent(e -> {
stack.getCapability(TesseractCaps.ENERGY_HANDLER_CAPABILITY_ITEM).ifPresent(e -> {
Utils.addEnergy(e, e.getCapacity());
stack.setTag(e.getContainer().getTag());
});
Expand Down

0 comments on commit 9367c2d

Please sign in to comment.