BrushOperation class

Пакет: com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.system

Файл: com/hypixel/hytale/builtin/buildertools/scriptedbrushes/operations/system/BrushOperation.java

Поля (3)

МодификаторыТипИмя
final CodecMapCodec<BrushOperation> OPERATION_CODEC
BrushOperationSetting var5
BrushOperationSetting var6

Методы (5)

МодификаторыВозвратСигнатура
public String getDescriptionString getDescription()
public String getNameString getName()
abstract abstract void modifyBrushConfigvoid modifyBrushConfig(@Nonnull Ref<EntityStore> var1, @Nonnull BrushConfig var2, @Nonnull BrushConfigCommandExecutor var3, @Nonnull ComponentAccessor<EntityStore> var4)
public void preExecutionModifyBrushConfigvoid preExecutionModifyBrushConfig(BrushConfigCommandExecutor var1, int var2)
public void resetInternalStatevoid resetInternalState()

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.system;

class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.BrushConfig;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.BrushConfigCommandExecutor;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.global.DebugBrushOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.global.DisableHoldInteractionOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.global.IgnoreExistingBrushDataOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.BlockPatternOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.BreakpointOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.ClearOperationMaskOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.ClearRotationOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.DeleteOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.EchoOnceOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.EchoOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.ErodeOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.FluidFixOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.HeightmapLayerOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.KernelErosionOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.LayerOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.LiftOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.LoadIntFromToolArgOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.LoadMaterialFromToolArgOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.MaterialOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.MeltOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.PastePrefabOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.ReplaceOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.RunCommandOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.SetDensity;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.SetOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.ShapeOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.SmoothOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.dimensions.DimensionsOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.dimensions.RandomizeDimensionsOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.ExitOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.JumpIfBlockTypeOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.JumpIfClickType;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.JumpIfCompareOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.JumpIfStringMatchOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.JumpIfToolArgOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.JumpToIndexOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.JumpToRandomIndex;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.loops.CircleOffsetAndLoopOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.loops.CircleOffsetFromArgOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.loops.LoadLoopFromToolArgOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.loops.LoopOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.flowcontrol.loops.LoopRandomOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.masks.AppendMaskFromToolArgOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.masks.AppendMaskOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.masks.HistoryMaskOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.masks.MaskOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.masks.UseBrushMaskOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.masks.UseOperationMaskOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.offsets.OffsetOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.offsets.RandomOffsetOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.saveandload.LoadBrushConfigOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.saveandload.LoadOperationsFromAssetOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.saveandload.PersistentDataOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.saveandload.SaveBrushConfigOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.saveandload.SaveIndexOperation;
class="kw">import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.transforms.RotateOperation;
class="kw">import com.hypixel.hytale.codec.lookup.CodecMapCodec;
class="kw">import com.hypixel.hytale.component.ComponentAccessor;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.ArgumentType;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.util.LinkedHashMap;
class="kw">import java.util.Locale;
class="kw">import java.util.Map;
class="kw">import java.util.concurrent.ConcurrentHashMap;
class="kw">import java.util.function.Function;
class="kw">import java.util.function.Supplier;
class="kw">import javax.annotation.Nonnull;

class="kw">public class="kw">abstract class BrushOperation {
   class="kw">public class="kw">static class="kw">final CodecMapCodec<BrushOperation> OPERATION_CODEC = new CodecMapCodec<>("Id");
   class="kw">public class="kw">static class="kw">final Map<String, Supplier<BrushOperation>> BRUSH_OPERATION_REGISTRY = new ConcurrentHashMap<>();
   class="kw">private class="kw">final String name;
   class="kw">private class="kw">final String description;
   class="kw">private class="kw">final Map<String, BrushOperationSetting<?>> registeredOperationSettings = new LinkedHashMap<>();

   class="kw">public BrushOperation(String var1, String var2) {
      this.name = var1;
      this.description = var2;
   }

   class="kw">public class="kw">abstract void modifyBrushConfig(
      @Nonnull Ref<EntityStore> var1, @Nonnull BrushConfig var2, @Nonnull BrushConfigCommandExecutor var3, @Nonnull ComponentAccessor<EntityStore> var4
   );

   class="kw">public void resetInternalState() {
   }

   class="kw">public void preExecutionModifyBrushConfig(BrushConfigCommandExecutor var1, int var2) {
   }

   @Nonnull
   class="kw">public <T> BrushOperationSetting<T> createBrushSetting(@Nonnull String var1, String var2, T var3, ArgumentType<T> var4) {
      BrushOperationSetting var5 = new BrushOperationSetting<>(var1, var2, var3, var4);
      this.registeredOperationSettings.put(var1.toLowerCase(Locale.ROOT), var5);
      class="kw">return var5;
   }

   @Nonnull
   class="kw">public <T> BrushOperationSetting<T> createBrushSetting(
      @Nonnull String var1, String var2, T var3, ArgumentType<T> var4, Function<BrushOperationSetting<T>, String> var5
   ) {
      BrushOperationSetting var6 = new BrushOperationSetting<>(var1, var2, var3, var4, var5);
      this.registeredOperationSettings.put(var1.toLowerCase(Locale.ROOT), var6);
      class="kw">return var6;
   }

   class="kw">public String getName() {
      class="kw">return this.name;
   }

   class="kw">public String getDescription() {
      class="kw">return this.description;
   }

   @Nonnull
   class="kw">public Map<String, BrushOperationSetting<?>> getRegisteredOperationSettings() {
      class="kw">return this.registeredOperationSettings;
   }

   class="kw">static {
      BRUSH_OPERATION_REGISTRY.put("dimensions", DimensionsOperation::new);
      BRUSH_OPERATION_REGISTRY.put("randomdimensions", RandomizeDimensionsOperation::new);
      BRUSH_OPERATION_REGISTRY.put("runcommand", RunCommandOperation::new);
      BRUSH_OPERATION_REGISTRY.put("historymask", HistoryMaskOperation::new);
      BRUSH_OPERATION_REGISTRY.put("mask", MaskOperation::new);
      BRUSH_OPERATION_REGISTRY.put("clearoperationmask", ClearOperationMaskOperation::new);
      BRUSH_OPERATION_REGISTRY.put("usebrushmask", UseBrushMaskOperation::new);
      BRUSH_OPERATION_REGISTRY.put("useoperationmask", UseOperationMaskOperation::new);
      BRUSH_OPERATION_REGISTRY.put("appendmask", AppendMaskOperation::new);
      BRUSH_OPERATION_REGISTRY.put("appendmaskfromtoolarg", AppendMaskFromToolArgOperation::new);
      BRUSH_OPERATION_REGISTRY.put("ignorebrushsettings", IgnoreExistingBrushDataOperation::new);
      BRUSH_OPERATION_REGISTRY.put("debug", DebugBrushOperation::new);
      BRUSH_OPERATION_REGISTRY.put("loop", LoopOperation::new);
      BRUSH_OPERATION_REGISTRY.put("loadloop", LoadLoopFromToolArgOperation::new);
      BRUSH_OPERATION_REGISTRY.put("looprandom", LoopRandomOperation::new);
      BRUSH_OPERATION_REGISTRY.put("loopcircle", CircleOffsetAndLoopOperation::new);
      BRUSH_OPERATION_REGISTRY.put("loopcirclefromarg", CircleOffsetFromArgOperation::new);
      BRUSH_OPERATION_REGISTRY.put("savebrushconfig", SaveBrushConfigOperation::new);
      BRUSH_OPERATION_REGISTRY.put("loadbrushconfig", LoadBrushConfigOperation::new);
      BRUSH_OPERATION_REGISTRY.put("saveindex", SaveIndexOperation::new);
      BRUSH_OPERATION_REGISTRY.put("loadoperationsfromasset", LoadOperationsFromAssetOperation::new);
      BRUSH_OPERATION_REGISTRY.put("jump", JumpToIndexOperation::new);
      BRUSH_OPERATION_REGISTRY.put("exit", ExitOperation::new);
      BRUSH_OPERATION_REGISTRY.put("jumprandom", JumpToRandomIndex::new);
      BRUSH_OPERATION_REGISTRY.put("jumpifequal", JumpIfStringMatchOperation::new);
      BRUSH_OPERATION_REGISTRY.put("jumpifclicktype", JumpIfClickType::new);
      BRUSH_OPERATION_REGISTRY.put("jumpifcompare", JumpIfCompareOperation::new);
      BRUSH_OPERATION_REGISTRY.put("jumpifblocktype", JumpIfBlockTypeOperation::new);
      BRUSH_OPERATION_REGISTRY.put("jumpiftoolarg", JumpIfToolArgOperation::new);
      BRUSH_OPERATION_REGISTRY.put("pattern", BlockPatternOperation::new);
      BRUSH_OPERATION_REGISTRY.put("loadmaterial", LoadMaterialFromToolArgOperation::new);
      BRUSH_OPERATION_REGISTRY.put("loadint", LoadIntFromToolArgOperation::new);
      BRUSH_OPERATION_REGISTRY.put("lift", LiftOperation::new);
      BRUSH_OPERATION_REGISTRY.put("density", SetDensity::new);
      BRUSH_OPERATION_REGISTRY.put("set", SetOperation::new);
      BRUSH_OPERATION_REGISTRY.put("smooth", SmoothOperation::new);
      BRUSH_OPERATION_REGISTRY.put("shape", ShapeOperation::new);
      BRUSH_OPERATION_REGISTRY.put("rotation", RotateOperation::new);
      BRUSH_OPERATION_REGISTRY.put("clearrotation", ClearRotationOperation::new);
      BRUSH_OPERATION_REGISTRY.put("offset", OffsetOperation::new);
      BRUSH_OPERATION_REGISTRY.put("layer", LayerOperation::new);
      BRUSH_OPERATION_REGISTRY.put("heightmaplayer", HeightmapLayerOperation::new);
      BRUSH_OPERATION_REGISTRY.put("melt", MeltOperation::new);
      BRUSH_OPERATION_REGISTRY.put("material", MaterialOperation::new);
      BRUSH_OPERATION_REGISTRY.put("delete", DeleteOperation::new);
      BRUSH_OPERATION_REGISTRY.put("disableonhold", DisableHoldInteractionOperation::new);
      BRUSH_OPERATION_REGISTRY.put("randomoffset", RandomOffsetOperation::new);
      BRUSH_OPERATION_REGISTRY.put("erode", ErodeOperation::new);
      BRUSH_OPERATION_REGISTRY.put("kernelsmooth", KernelErosionOperation::new);
      BRUSH_OPERATION_REGISTRY.put("fluidfix", FluidFixOperation::new);
      BRUSH_OPERATION_REGISTRY.put("persistentdata", PersistentDataOperation::new);
      BRUSH_OPERATION_REGISTRY.put("pasteprefab", PastePrefabOperation::new);
      BRUSH_OPERATION_REGISTRY.put("echo", EchoOperation::new);
      BRUSH_OPERATION_REGISTRY.put("echoonce", EchoOnceOperation::new);
      BRUSH_OPERATION_REGISTRY.put("replace", ReplaceOperation::new);
      BRUSH_OPERATION_REGISTRY.put("breakpoint", BreakpointOperation::new);
   }
}