aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub <53441451+kuba6000@users.noreply.github.com>2022-09-13 07:23:25 +0200
committerGitHub <noreply@github.com>2022-09-13 07:23:25 +0200
commit3a5031c52cc537d9ce0b94973f3b60694ddd4703 (patch)
treeb0dc4bc8761375d274a3e1058397cab3b3efa5f5
parent9c96775fc084c97381a0a8eb7d5f4ea48d44ab07 (diff)
downloadGT5-Unofficial-3a5031c52cc537d9ce0b94973f3b60694ddd4703.tar.gz
GT5-Unofficial-3a5031c52cc537d9ce0b94973f3b60694ddd4703.tar.bz2
GT5-Unofficial-3a5031c52cc537d9ce0b94973f3b60694ddd4703.zip
Fix healing device never getting discharged (#343)
-rw-r--r--src/main/java/gtPlusPlus/core/item/general/ItemHealingDevice.java16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/main/java/gtPlusPlus/core/item/general/ItemHealingDevice.java b/src/main/java/gtPlusPlus/core/item/general/ItemHealingDevice.java
index c1f316c38f..9a47a32d9b 100644
--- a/src/main/java/gtPlusPlus/core/item/general/ItemHealingDevice.java
+++ b/src/main/java/gtPlusPlus/core/item/general/ItemHealingDevice.java
@@ -58,7 +58,7 @@ public class ItemHealingDevice extends Item implements IElectricItem, IElectricI
@Override
public boolean canProvideEnergy(final ItemStack itemStack) {
- return false;
+ return true;
}
@Override
@@ -179,10 +179,6 @@ public class ItemHealingDevice extends Item implements IElectricItem, IElectricI
final boolean ignoreTransferLimit,
final boolean externally,
final boolean simulate) {
- if (!simulate) {
- ElectricItem.manager.discharge(stack, amount, tier, ignoreTransferLimit, externally, simulate);
- }
-
return ElectricItem.manager.discharge(stack, amount, tier, ignoreTransferLimit, externally, simulate);
}
@@ -306,11 +302,13 @@ public class ItemHealingDevice extends Item implements IElectricItem, IElectricI
if (aFood != null) {
// Hunger Check
hunger = 20 - aFood.getFoodLevel();
- this.discharge(aBaubleStack, (1638400) * hunger, 6, true, true, false);
// Saturation Check
- saturation = 20f - aFood.getSaturationLevel();
- this.discharge(aBaubleStack, (1638400) * saturation, 6, true, true, false);
- aFood.addStats(hunger, saturation);
+ if (hunger > 0) {
+ saturation = 20f - aFood.getSaturationLevel();
+ saturation /= hunger * 2f;
+ this.discharge(aBaubleStack, (1638400) * (hunger + saturation), 6, true, true, false);
+ aFood.addStats(hunger, saturation);
+ }
}
// Only show Messages if they're enabled.