From b45e79029e5d517a2c4eff59b99fd6fbf2b85572 Mon Sep 17 00:00:00 2001 From: arzumify Date: Mon, 24 Feb 2025 18:17:10 +0000 Subject: [PATCH] Fixed javadoc, fixed cables giving the details of their provider instead of themselves --- src/main/java/arzumify/polyenergy/api/EnergyProvider.java | 3 ++- src/main/java/arzumify/polyenergy/util/SimpleCable.java | 6 ++---- src/test/java/SimpleCodeOnlyCable.java | 5 +---- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/main/java/arzumify/polyenergy/api/EnergyProvider.java b/src/main/java/arzumify/polyenergy/api/EnergyProvider.java index 490fd54..fcf9a30 100644 --- a/src/main/java/arzumify/polyenergy/api/EnergyProvider.java +++ b/src/main/java/arzumify/polyenergy/api/EnergyProvider.java @@ -9,10 +9,11 @@ public interface EnergyProvider { /** * When called by a receiver, attempts to remove energy from the provider. * Do not attempt to extract energy until {@link EnergyReceiver#ready(EnergyProvider)} is called by the receiver. + * The receiver may attempt to remove itself from the provider if it is no longer able to receive energy; this will be done via unready. * * @param amount The target amount of energy to extract * @param receiver The receiver that is attempting to extract energy - * @return The amount of energy actually extracted. If zero, the receiver will not attempt to extract energy until {@link EnergyReceiver#ready(EnergyProvider)} is called. + * @return The amount of energy actually extracted. */ long extract(long amount, EnergyReceiver receiver); diff --git a/src/main/java/arzumify/polyenergy/util/SimpleCable.java b/src/main/java/arzumify/polyenergy/util/SimpleCable.java index 787bb72..064456c 100644 --- a/src/main/java/arzumify/polyenergy/util/SimpleCable.java +++ b/src/main/java/arzumify/polyenergy/util/SimpleCable.java @@ -43,18 +43,16 @@ public class SimpleCable extends BlockEntity implements EnergyProvider, EnergyRe @Override public long extract(long amount, EnergyReceiver receiver) { + System.out.println("Extracting " + amount + " energy"); long extracted = Math.min(Math.min(outputRate, amount), energy); energy -= extracted; - if (energy == 0) { - CoordinateMatchMaker.removeProvider(providerDetails); - } return extracted; } @Override public void exists(EnergyReceiver receiver, ArrayList pointsOfPresence) { if (currentProvider != null) { - receiver.ready(currentProvider); + receiver.ready(this); } } diff --git a/src/test/java/SimpleCodeOnlyCable.java b/src/test/java/SimpleCodeOnlyCable.java index 77038f2..e25afaa 100644 --- a/src/test/java/SimpleCodeOnlyCable.java +++ b/src/test/java/SimpleCodeOnlyCable.java @@ -44,9 +44,6 @@ public class SimpleCodeOnlyCable implements EnergyProvider, EnergyReceiver, Serv long extracted = Math.min(Math.min(outputRate, amount), energy); energy -= extracted; System.out.println(name + " extracted " + extracted + " energy"); - if (energy == 0) { - CoordinateMatchMaker.removeProvider(providerDetails); - } return extracted; } @@ -54,7 +51,7 @@ public class SimpleCodeOnlyCable implements EnergyProvider, EnergyReceiver, Serv public void exists(EnergyReceiver receiver, ArrayList pointsOfPresence) { System.out.println(name + " found other receiver"); if (currentProvider != null) { - receiver.ready(currentProvider); + receiver.ready(this); } }