Multiple class

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

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

implements: IDoubleThreshold

Поля (1)

МодификаторыТипИмя
protected final DoubleThreshold.Single[] singles

Методы (5)

МодификаторыВозвратСигнатура
public boolean evalpublic boolean eval(double var1)
public boolean evalpublic boolean eval(double var1, double var3)
for for(DoubleThreshold.Single var6 : this.singles)
for for(DoubleThreshold.Single var8 : this.singles)
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 + "}";
      }
   }
}