classpublicPriority 3
LoadBrushConfigOperation
com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.saveandload.LoadBrushConfigOperation
extends SequenceBrushOperation
0
Methods
0
Public Methods
1
Fields
1
Constructors
Constants
BuilderCodec<LoadBrushConfigOperation>CODEC= BuilderCodec.builder(LoadBrushConfigOperation.class, LoadBrushConfigOperation::new)
.append...
Constructors
public
LoadBrushConfigOperation()Fields
Public Fields (1)
public
String variableNameArgInheritance
Parent
Current
Interface
Child
Use mouse wheel to zoom, drag to pan. Click nodes to navigate.
Related Classes
Source Code
package com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.sequential.saveandload;
import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.BrushConfig;
import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.BrushConfigCommandExecutor;
import com.hypixel.hytale.builtin.buildertools.scriptedbrushes.operations.system.SequenceBrushOperation;
import com.hypixel.hytale.codec.Codec;
import com.hypixel.hytale.codec.KeyedCodec;
import com.hypixel.hytale.codec.builder.BuilderCodec;
import com.hypixel.hytale.codec.codecs.EnumCodec;
import com.hypixel.hytale.codec.codecs.array.ArrayCodec;
import com.hypixel.hytale.component.ComponentAccessor;
import com.hypixel.hytale.component.Ref;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
import java.util.Arrays;
import java.util.List;
import javax.annotation.Nonnull;
public class LoadBrushConfigOperation extends SequenceBrushOperation {
public static final BuilderCodec<LoadBrushConfigOperation> CODEC = BuilderCodec.builder(LoadBrushConfigOperation.class, LoadBrushConfigOperation::new)
.append(new KeyedCodec<>("StoredName", Codec.STRING), (op, val) -> op.variableNameArg = val, op -> op.variableNameArg)
.documentation("The name to store the snapshot of this brush config under")
.add()
.<BrushConfig.DataSettingFlags[]>append(
new KeyedCodec<>("ParametersToLoad", new ArrayCodec<>(new EnumCodec<>(BrushConfig.DataSettingFlags.class), BrushConfig.DataSettingFlags[]::new)),
(op, val) -> op.dataSettingFlagArg = val != null ? Arrays.asList(val) : List.of(),
op -> op.dataSettingFlagArg.toArray(new BrushConfig.DataSettingFlags[0])
)
.documentation("A list of the different parameters to load from the stored config")
.add()
.documentation("Restore a saved brush config snapshot")
.build();
@Nonnull
public String variableNameArg = "Undefined";
@Nonnull
public List<BrushConfig.DataSettingFlags> dataSettingFlagArg = List.of();
public LoadBrushConfigOperation() {
super("Load Brush Config Snapshot", "Restore a saved brush config snapshot", false);
}
@Override
public void modifyBrushConfig(
@Nonnull Ref<EntityStore> ref,
@Nonnull BrushConfig brushConfig,
@Nonnull BrushConfigCommandExecutor brushConfigCommandExecutor,
@Nonnull ComponentAccessor<EntityStore> componentAccessor
) {
brushConfigCommandExecutor.loadBrushConfigSnapshot(this.variableNameArg, this.dataSettingFlagArg.toArray(BrushConfig.DataSettingFlags[]::new));
}
}