MultiplierVectorProvider class

Пакет: com.hypixel.hytale.builtin.hytalegenerator.vectorproviders

Файл: com/hypixel/hytale/builtin/hytalegenerator/vectorproviders/MultiplierVectorProvider.java

extends: VectorProvider

Поля (1)

МодификаторыТипИмя
return

Методы (1)

МодификаторыВозвратСигнатура
abstract for for(int var3 = 1; var3 < this.vectorProviders.size()

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.hytalegenerator.VectorUtil;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;

class="kw">public class MultiplierVectorProvider class="kw">extends VectorProvider {
   @Nonnull
   class="kw">private class="kw">final List<VectorProvider> vectorProviders;
   @Nonnull
   class="kw">private class="kw">final Vector3d rVector;

   class="kw">public MultiplierVectorProvider(@Nonnull List<VectorProvider> var1) {
      this.vectorProviders = var1;
      this.rVector = new Vector3d();
   }

   @Override
   class="kw">public void process(@Nonnull VectorProvider.Context var1, @Nonnull Vector3d var2) {
      if (this.vectorProviders.isEmpty()) {
         var2.set(0.0, 0.0, 0.0);
      } else {
         this.vectorProviders.getFirst().process(var1, var2);
         if (!VectorUtil.isZero(var2)) {
            for (int var3 = 1; var3 < this.vectorProviders.size(); var3++) {
               this.vectorProviders.get(var3).process(var1, this.rVector);
               var2.mul(this.rVector);
               if (VectorUtil.isZero(var2)) {
                  class="kw">return;
               }
            }
         }
      }
   }
}