Single class

Пакет: com.hypixel.hytale.procedurallib.condition

Файл: com/hypixel/hytale/procedurallib/condition/DoubleThreshold.java

implements: IDoubleThreshold

Поля (5)

МодификаторыТипИмя
protected final double halfRange
protected final double max
protected final double min
double var5
double var7

Методы (3)

МодификаторыВозвратСигнатура
public boolean evalpublic boolean eval(double var1)
public boolean evalpublic boolean eval(double var1, double var3)
public String toStringpublic String toString()

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.procedurallib.condition;

class="kw">import java.util.Arrays;
class="kw">import javax.annotation.Nonnull;

class="kw">public class DoubleThreshold {
   class="kw">public DoubleThreshold() {
   }

   class="kw">public class="kw">static class Multiple class="kw">implements IDoubleThreshold {
      class="kw">protected class="kw">final DoubleThreshold.Single[] singles;

      class="kw">public Multiple(DoubleThreshold.Single[] var1) {
         this.singles = var1;
      }

      @Override
      class="kw">public boolean eval(double var1) {
         for (DoubleThreshold.Single var6 : this.singles) {
            if (var6.eval(var1)) {
               class="kw">return true;
            }
         }

         class="kw">return false;
      }

      @Override
      class="kw">public boolean eval(double var1, double var3) {
         for (DoubleThreshold.Single var8 : this.singles) {
            if (var8.eval(var1, var3)) {
               class="kw">return true;
            }
         }

         class="kw">return false;
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "DoubleThreshold.Multiple{singles=" + Arrays.toString(this.singles) + "}";
      }
   }

   class="kw">public class="kw">static class Single class="kw">implements IDoubleThreshold {
      class="kw">protected class="kw">final double min;
      class="kw">protected class="kw">final double max;
      class="kw">protected class="kw">final double halfRange;

      class="kw">public Single(double var1, double var3) {
         this.min = var1;
         this.max = var3;
         this.halfRange = (var3 - var1) * 0.5;
      }

      @Override
      class="kw">public boolean eval(double var1) {
         class="kw">return this.min <= var1 && var1 <= this.max;
      }

      @Override
      class="kw">public boolean eval(double var1, double var3) {
         double var5 = this.min + this.halfRange * var3;
         double var7 = this.max - this.halfRange * var3;
         class="kw">return var5 <= var1 && var1 <= var7;
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "DoubleThreshold.Single{min=" + this.min + ", max=" + this.max + ", halfRange=" + this.halfRange + "}";
      }
   }
}