|
@@ -11,6 +11,7 @@ import net.minecraft.client.resource.language.I18n;
|
|
import java.util.HashSet;
|
|
import java.util.HashSet;
|
|
import java.util.Optional;
|
|
import java.util.Optional;
|
|
import java.util.Set;
|
|
import java.util.Set;
|
|
|
|
+import java.util.function.Function;
|
|
|
|
|
|
@NoArgsConstructor(access = AccessLevel.PRIVATE)
|
|
@NoArgsConstructor(access = AccessLevel.PRIVATE)
|
|
public final class CompleteConfig {
|
|
public final class CompleteConfig {
|
|
@@ -70,6 +71,15 @@ public final class CompleteConfig {
|
|
.setSaveConsumer(saveConsumer)
|
|
.setSaveConsumer(saveConsumer)
|
|
.build()
|
|
.build()
|
|
);
|
|
);
|
|
|
|
+ registry.registerBoundedTypeProvider(Float.TYPE, (translationKey, type, value, defaultValue, extras, saveConsumer) -> ConfigEntryBuilder
|
|
|
|
+ .create()
|
|
|
|
+ .startFloatField(translationKey, value)
|
|
|
|
+ .setDefaultValue(defaultValue)
|
|
|
|
+ //TODO: Add error message
|
|
|
|
+ .setErrorSupplier(v -> v < extras.getBounds().getMin() || v > extras.getBounds().getMax() ? Optional.of("") : Optional.empty())
|
|
|
|
+ .setSaveConsumer(saveConsumer)
|
|
|
|
+ .build()
|
|
|
|
+ );
|
|
registry.registerTypeProvider(Double.TYPE, (translationKey, type, value, defaultValue, extras, saveConsumer) -> ConfigEntryBuilder
|
|
registry.registerTypeProvider(Double.TYPE, (translationKey, type, value, defaultValue, extras, saveConsumer) -> ConfigEntryBuilder
|
|
.create()
|
|
.create()
|
|
.startDoubleField(translationKey, value)
|
|
.startDoubleField(translationKey, value)
|
|
@@ -77,6 +87,15 @@ public final class CompleteConfig {
|
|
.setSaveConsumer(saveConsumer)
|
|
.setSaveConsumer(saveConsumer)
|
|
.build()
|
|
.build()
|
|
);
|
|
);
|
|
|
|
+ registry.registerBoundedTypeProvider(Double.TYPE, (translationKey, type, value, defaultValue, extras, saveConsumer) -> ConfigEntryBuilder
|
|
|
|
+ .create()
|
|
|
|
+ .startDoubleField(translationKey, value)
|
|
|
|
+ .setDefaultValue(defaultValue)
|
|
|
|
+ //TODO: Add error message
|
|
|
|
+ .setErrorSupplier(v -> v < extras.getBounds().getMin() || v > extras.getBounds().getMax() ? Optional.of("") : Optional.empty())
|
|
|
|
+ .setSaveConsumer(saveConsumer)
|
|
|
|
+ .build()
|
|
|
|
+ );
|
|
registry.registerProvider((field, type, extras) -> Enum.class.isAssignableFrom(type), (GuiProvider<? extends Enum>) (translationKey, type, value, defaultValue, extras, saveConsumer) -> ConfigEntryBuilder
|
|
registry.registerProvider((field, type, extras) -> Enum.class.isAssignableFrom(type), (GuiProvider<? extends Enum>) (translationKey, type, value, defaultValue, extras, saveConsumer) -> ConfigEntryBuilder
|
|
.create()
|
|
.create()
|
|
.startEnumSelector(translationKey, type, value)
|
|
.startEnumSelector(translationKey, type, value)
|