BenchmarkSpreadCommand class

Пакет: com.hypixel.hytale.builtin.triggervolumes.command.benchmark

Файл: com/hypixel/hytale/builtin/triggervolumes/command/benchmark/BenchmarkSpreadCommand.java

extends: AbstractBenchmarkCommand

Поля (5)

МодификаторыТипИмя
final double GOLDEN_ANGLE
double var11
Vector3d var13
int var7
double var9

Методы (3)

МодификаторыВозвратСигнатура
for for(int var8 = 0; var8 < var5; var8++)
abstract spawnBox spawnBox(var2, var3, "tvbench_" + var8, var13, var6)
abstract super super("spread", "server.commands.triggervolume.benchmark.spread.desc")

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.triggervolumes.manager.TriggerVolumeManager;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.RequiredArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.ArgTypes;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;

class="kw">public class BenchmarkSpreadCommand class="kw">extends AbstractBenchmarkCommand {
   class="kw">private class="kw">static class="kw">final double GOLDEN_ANGLE = Math.PI * (3.0 - Math.sqrt(5.0));
   @Nonnull
   class="kw">private class="kw">final RequiredArg<Integer> radiusArg = this.withRequiredArg("radius", "server.commands.triggervolume.benchmark.radius.desc", ArgTypes.INTEGER);

   class="kw">public BenchmarkSpreadCommand() {
      super("spread", "server.commands.triggervolume.benchmark.spread.desc");
   }

   @Override
   class="kw">protected int spawnVolumes(@Nonnull CommandContext var1, @Nonnull TriggerVolumeManager var2, @Nonnull World var3, @Nonnull Vector3d var4, int var5, int var6) {
      int var7 = Math.max(1, this.radiusArg.get(var1));

      for (int var8 = 0; var8 < var5; var8++) {
         double var9 = var7 * Math.sqrt((var8 + 0.5) / var5);
         double var11 = var8 * GOLDEN_ANGLE;
         Vector3d var13 = new Vector3d(var4.x() + var9 * Math.cos(var11), var4.y(), var4.z() + var9 * Math.sin(var11));
         spawnBox(var2, var3, "tvbench_" + var8, var13, var6);
      }

      class="kw">return var5;
   }
}