From f2e1dc8f61d8d1f7cffb5a34c250573366501c9e Mon Sep 17 00:00:00 2001 From: isokissa3 Date: Thu, 12 Apr 2018 23:24:02 +0300 Subject: [PATCH] Fixed potion effect restoring wrong time --- .../flags/data/PotionEffectDetails.java | 6 +++--- .../wg/handlers/GiveEffectsFlagHandler.java | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/net/goldtreeservers/worldguardextraflags/flags/data/PotionEffectDetails.java b/src/main/java/net/goldtreeservers/worldguardextraflags/flags/data/PotionEffectDetails.java index 1bceb6b..7fdcc81 100644 --- a/src/main/java/net/goldtreeservers/worldguardextraflags/flags/data/PotionEffectDetails.java +++ b/src/main/java/net/goldtreeservers/worldguardextraflags/flags/data/PotionEffectDetails.java @@ -16,13 +16,13 @@ public class PotionEffectDetails @Getter private final boolean particles; @Getter private final Color color; - public double getTimeLeft() + public long getTimeLeft() { - return (this.endTime - System.nanoTime()) / TimeUnit.MICROSECONDS.toNanos(50L); + return (this.endTime - System.nanoTime()); } public int getTimeLeftInTicks() { - return (int)(this.getTimeLeft() / 0.05); + return (int)(this.getTimeLeft() / TimeUnit.MILLISECONDS.toNanos(50L)); } } diff --git a/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GiveEffectsFlagHandler.java b/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GiveEffectsFlagHandler.java index e3d2415..ceb8d36 100644 --- a/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GiveEffectsFlagHandler.java +++ b/src/main/java/net/goldtreeservers/worldguardextraflags/wg/handlers/GiveEffectsFlagHandler.java @@ -88,7 +88,7 @@ public class GiveEffectsFlagHandler extends Handler if (this.givenEffects.add(effect.getType()) && effect_ != null) { - this.removedEffects.put(effect_.getType(), new PotionEffectDetails(System.nanoTime() + (long)(effect.getDuration() / 20D * TimeUnit.SECONDS.toNanos(1L)), effect_.getAmplifier(), effect_.isAmbient(), effect_.hasParticles(), SupportedFeatures.isMobEffectColorsSupported() ? effect_.getColor() : null)); + this.removedEffects.put(effect_.getType(), new PotionEffectDetails(System.nanoTime() + (long)(effect_.getDuration() / 20D * TimeUnit.SECONDS.toNanos(1L)), effect_.getAmplifier(), effect_.isAmbient(), effect_.hasParticles(), SupportedFeatures.isMobEffectColorsSupported() ? effect_.getColor() : null)); player.removePotionEffect(effect_.getType()); }