Search in sources :

Example 6 with ConfigEntryBuilder

use of me.shedaniel.clothconfig2.api.ConfigEntryBuilder in project BedrockIfy by juancarloscp52.

the class SettingsGUI method getConfigScreen.

public Screen getConfigScreen(Screen parent, boolean isTransparent) {
    ConfigBuilder builder = ConfigBuilder.create().setParentScreen(parent).setTitle(new TranslatableText("bedrockify.options.settings"));
    builder.setSavingRunnable(() -> Bedrockify.getInstance().saveSettings());
    ConfigCategory general = builder.getOrCreateCategory(new LiteralText("General"));
    ConfigEntryBuilder entryBuilder = builder.entryBuilder();
    SubCategoryBuilder bedrockOverlay = entryBuilder.startSubCategory(new TranslatableText("bedrockify.options.subCategory.bedrockOverlay"));
    bedrockOverlay.add(entryBuilder.startTextDescription(new TranslatableText("bedrockify.options.subCategory.bedrockOverlay.description")).build());
    bedrockOverlay.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.showCoordinates"), settings.showPositionHUD).setDefaultValue(true).setSaveConsumer(newValue -> settings.showPositionHUD = newValue).build());
    bedrockOverlay.add(entryBuilder.startSelector(new TranslatableText("bedrockify.options.showFPS"), new Byte[] { 0, 1, 2 }, settings.FPSHUD).setDefaultValue((byte) 0).setNameProvider((value) -> {
        switch(value) {
            case 0:
                return new TranslatableText("bedrockify.options.off");
            case 1:
                return new TranslatableText("bedrockify.options.withPosition");
            default:
                return new TranslatableText("bedrockify.options.underPosition");
        }
    }).setSaveConsumer((newValue) -> settings.FPSHUD = newValue).build());
    bedrockOverlay.add(entryBuilder.startIntSlider(new TranslatableText("bedrockify.options.coordinatesPosition"), settings.positionHUDHeight, 0, 100).setDefaultValue(50).setSaveConsumer((newValue) -> settings.positionHUDHeight = newValue).build());
    bedrockOverlay.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.showPaperDoll"), settings.showPaperDoll).setDefaultValue(true).setSaveConsumer(newValue -> settings.showPaperDoll = newValue).build());
    bedrockOverlay.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.showSavingOverlay"), settings.savingOverlay).setDefaultValue(true).setSaveConsumer(newValue -> settings.savingOverlay = newValue).build());
    general.addEntry(bedrockOverlay.build());
    SubCategoryBuilder guiImprovements = entryBuilder.startSubCategory(new TranslatableText("bedrockify.options.subCategory.visualImprovements"));
    guiImprovements.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.chatStyle"), settings.bedrockChat).setDefaultValue(true).setSaveConsumer(newValue -> settings.bedrockChat = newValue).setYesNoTextSupplier((value) -> value ? new TranslatableText("bedrockify.options.chatStyle.bedrock") : new TranslatableText("bedrockify.options.chatStyle.vanilla")).build());
    guiImprovements.add(entryBuilder.startIntSlider(new TranslatableText("bedrockify.options.screenSafeArea"), settings.screenSafeArea, 0, 30).setDefaultValue(0).setSaveConsumer((newValue) -> settings.screenSafeArea = newValue).build());
    guiImprovements.add(entryBuilder.startSelector(new TranslatableText("bedrockify.options.tooltips"), new Byte[] { 0, 1, 2 }, settings.heldItemTooltip).setDefaultValue((byte) 2).setNameProvider((value) -> {
        switch(value) {
            case 0:
                return new TranslatableText("bedrockify.options.off");
            case 1:
                return new TranslatableText("bedrockify.options.on");
            default:
                return new TranslatableText("bedrockify.options.withBackground");
        }
    }).setSaveConsumer((newValue) -> settings.heldItemTooltip = newValue).build());
    guiImprovements.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.inventoryHighlight"), settings.slotHighlight).setDefaultValue(true).setSaveConsumer(newValue -> settings.slotHighlight = newValue).build());
    guiImprovements.add(entryBuilder.startSelector(new TranslatableText("bedrockify.options.idleAnimation"), new Float[] { 0.0f, 0.5f, 1.0f, 1.5f, 2.0f, 2.5f, 3.0f, 4.0f }, settings.idleAnimation).setDefaultValue(1.0f).setNameProvider((value) -> new LiteralText("x" + value)).setSaveConsumer((newValue) -> settings.idleAnimation = newValue).build());
    guiImprovements.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.eatingAnimations"), settings.eatingAnimations).setDefaultValue(true).setSaveConsumer(newValue -> settings.eatingAnimations = newValue).build());
    guiImprovements.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.pickupAnimations"), settings.pickupAnimations).setTooltip(wrapLines(new TranslatableText("bedrockify.options.pickupAnimations.tooltip"))).setDefaultValue(true).setSaveConsumer(newValue -> settings.pickupAnimations = newValue).build());
    guiImprovements.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.loadingScreen"), settings.loadingScreen).setDefaultValue(true).setSaveConsumer(newValue -> settings.loadingScreen = newValue).build());
    general.addEntry(guiImprovements.build());
    SubCategoryBuilder reachAround = entryBuilder.startSubCategory(new TranslatableText("bedrockify.options.subCategory.Reach-Around"));
    reachAround.add(entryBuilder.startTextDescription(new TranslatableText("bedrockify.options.subCategory.Reach-Around.description")).build());
    reachAround.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.reachAround"), settings.reacharound).setDefaultValue(true).setSaveConsumer(newValue -> settings.reacharound = newValue).build());
    reachAround.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.reachAround.multiplayer"), settings.reacharoundMultiplayer).setDefaultValue(true).setSaveConsumer(newValue -> settings.reacharoundMultiplayer = newValue).build());
    reachAround.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.reachAround.sneaking"), settings.reacharoundSneaking).setDefaultValue(true).setSaveConsumer(newValue -> settings.reacharoundSneaking = newValue).build());
    reachAround.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.reachAround.indicator"), settings.reacharoundIndicator).setDefaultValue(true).setSaveConsumer(newValue -> settings.reacharoundIndicator = newValue).build());
    reachAround.add(entryBuilder.startIntSlider(new TranslatableText("bedrockify.options.reachAround.pitch"), settings.reacharoundPitchAngle, 0, 90).setDefaultValue(25).setSaveConsumer(newValue -> settings.reacharoundPitchAngle = newValue).build());
    reachAround.add(entryBuilder.startIntSlider(new TranslatableText("bedrockify.options.reachAround.distance"), MathHelper.floor(settings.reacharoundBlockDistance * 100), 0, 100).setTextGetter((integer -> new LiteralText(String.valueOf(integer / 100d)))).setDefaultValue(75).setSaveConsumer(newValue -> settings.reacharoundBlockDistance = newValue / 100d).build());
    general.addEntry(reachAround.build());
    SubCategoryBuilder otherSettings = entryBuilder.startSubCategory(new TranslatableText("bedrockify.options.subCategory.other"));
    otherSettings.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.loadingScreenChunkMap"), settings.showChunkMap).setTooltip(wrapLines(new TranslatableText("bedrockify.options.loadingScreenChunkMap.tooltip"))).setDefaultValue(false).setSaveConsumer(newValue -> settings.showChunkMap = newValue).build());
    otherSettings.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.rotationalBackground"), settings.cubeMapBackground).setDefaultValue(true).setTooltip(wrapLines(new TranslatableText("bedrockify.options.rotationalBackground.tooltip"))).setSaveConsumer(newValue -> settings.cubeMapBackground = newValue).build());
    otherSettings.add(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.showBedrockIfyButton"), settings.bedrockIfyButton).setDefaultValue(true).setTooltip(wrapLines(new TranslatableText("bedrockify.options.showBedrockIfyButton.tooltip"))).setSaveConsumer(newValue -> settings.bedrockIfyButton = newValue).build());
    general.addEntry(otherSettings.build());
    general.addEntry(entryBuilder.startBooleanToggle(new TranslatableText("bedrockify.options.recipes"), settings.bedrockRecipes).setTooltip(wrapLines(new TranslatableText("bedrockify.options.recipes.tooltip"))).setDefaultValue(true).setSaveConsumer(newValue -> settings.bedrockRecipes = newValue).build());
    return builder.setTransparentBackground(isTransparent).build();
}
Also used : BedrockifySettings(me.juancarloscp52.bedrockify.BedrockifySettings) SubCategoryBuilder(me.shedaniel.clothconfig2.impl.builders.SubCategoryBuilder) List(java.util.List) Screen(net.minecraft.client.gui.screen.Screen) Bedrockify(me.juancarloscp52.bedrockify.Bedrockify) MathHelper(net.minecraft.util.math.MathHelper) MinecraftClient(net.minecraft.client.MinecraftClient) ConfigBuilder(me.shedaniel.clothconfig2.api.ConfigBuilder) net.minecraft.text(net.minecraft.text) ConfigCategory(me.shedaniel.clothconfig2.api.ConfigCategory) ConfigEntryBuilder(me.shedaniel.clothconfig2.api.ConfigEntryBuilder) ConfigCategory(me.shedaniel.clothconfig2.api.ConfigCategory) ConfigBuilder(me.shedaniel.clothconfig2.api.ConfigBuilder) ConfigEntryBuilder(me.shedaniel.clothconfig2.api.ConfigEntryBuilder) SubCategoryBuilder(me.shedaniel.clothconfig2.impl.builders.SubCategoryBuilder)

Example 7 with ConfigEntryBuilder

use of me.shedaniel.clothconfig2.api.ConfigEntryBuilder in project frame-fabric by moddingplayground.

the class Config method addConfigListEntries.

@Environment(EnvType.CLIENT)
public void addConfigListEntries(ConfigEntryBuilder entryBuilder, Supplier<ConfigCategory> categoryCreator) {
    if (this.canDisplayInMenu()) {
        ConfigCategory category = categoryCreator.get();
        for (Map.Entry<Identifier, Option<?>> entry : this.getDisplayedOptions().entrySet()) {
            Identifier id = entry.getKey();
            Option<?> option = entry.getValue();
            option.addConfigEntries(category, id, entryBuilder);
        }
    }
}
Also used : Identifier(net.minecraft.util.Identifier) ConfigCategory(me.shedaniel.clothconfig2.api.ConfigCategory) StandardCopyOption(java.nio.file.StandardCopyOption) Option(net.moddingplayground.frame.api.config.v0.option.Option) Map(java.util.Map) HashBiMap(com.google.common.collect.HashBiMap) Environment(net.fabricmc.api.Environment)

Example 8 with ConfigEntryBuilder

use of me.shedaniel.clothconfig2.api.ConfigEntryBuilder in project Hyper-Lighting by Exploding-Creeper.

the class ClothConfigGUI method openGUI.

public static Screen openGUI(Screen screen) {
    ConfigBuilder builder = ConfigBuilder.create().setParentScreen(screen).setTitle(new StringTextComponent("Hyper Lighting Config"));
    ConfigCategory torch_config = builder.getOrCreateCategory(new StringTextComponent("Torch Config"));
    ConfigEntryBuilder configEntryBuilder = builder.entryBuilder();
    torch_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Disabled Colored Lighting"), HyperLightingConfig.torchColor.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Enable/Disable Colored Lighting Support")).setSaveConsumer(newValue -> HyperLightingConfig.torchColor.set(newValue)).build());
    torch_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Lit By Default"), HyperLightingConfig.torchOnByDefault.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Should Lights be lit when placed")).setSaveConsumer(newValue -> HyperLightingConfig.torchOnByDefault.set(newValue)).build());
    ConfigCategory lantern_config = builder.getOrCreateCategory(new StringTextComponent("Lantern Config"));
    lantern_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Disabled Colored Lighting"), HyperLightingConfig.lanternColor.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Enable/Disable Colored Lighting Support")).setSaveConsumer(newValue -> HyperLightingConfig.lanternColor.set(newValue)).build());
    lantern_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Lit By Default"), HyperLightingConfig.lanternOnByDefault.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Should Lights be lit when placed")).setSaveConsumer(newValue -> HyperLightingConfig.lanternOnByDefault.set(newValue)).build());
    ConfigCategory tiki_torch_config = builder.getOrCreateCategory(new StringTextComponent("Tiki Torch Config"));
    tiki_torch_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Disabled Colored Lighting"), HyperLightingConfig.tikiColor.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Enable/Disable Colored Lighting Support")).setSaveConsumer(newValue -> HyperLightingConfig.tikiColor.set(newValue)).build());
    tiki_torch_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Lit By Default"), HyperLightingConfig.tikiOnByDefault.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Should Lights be lit when placed")).setSaveConsumer(newValue -> HyperLightingConfig.tikiOnByDefault.set(newValue)).build());
    ConfigCategory candle_config = builder.getOrCreateCategory(new StringTextComponent("Candle Config"));
    candle_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Disabled Colored Lighting"), HyperLightingConfig.candleColor.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Enable/Disable Colored Lighting Support")).setSaveConsumer(newValue -> HyperLightingConfig.candleColor.set(newValue)).build());
    candle_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Lit By Default"), HyperLightingConfig.candleOnByDefault.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Should Lights be lit when placed")).setSaveConsumer(newValue -> HyperLightingConfig.candleOnByDefault.set(newValue)).build());
    ConfigCategory redstone_config = builder.getOrCreateCategory(new StringTextComponent("Redstone Config"));
    redstone_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Disabled Colored Lighting"), HyperLightingConfig.redstoneColor.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Enable/Disable Colored Lighting Support")).setSaveConsumer(newValue -> HyperLightingConfig.redstoneColor.set(newValue)).build());
    ConfigCategory battery_lights_config = builder.getOrCreateCategory(new StringTextComponent("Battery Lights Config"));
    battery_lights_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Disabled Colored Lighting"), HyperLightingConfig.batteryColor.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Enable/Disable Colored Lighting Support")).setSaveConsumer(newValue -> HyperLightingConfig.batteryColor.set(newValue)).build());
    battery_lights_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Lit By Default"), HyperLightingConfig.batteryOnByDefault.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Should Lights be lit when placed")).setSaveConsumer(newValue -> HyperLightingConfig.batteryOnByDefault.set(newValue)).build());
    ConfigCategory campfire_config = builder.getOrCreateCategory(new StringTextComponent("Campfire Config"));
    campfire_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Disabled Colored Lighting"), HyperLightingConfig.campfireColor.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Enable/Disable Colored Lighting Support")).setSaveConsumer(newValue -> HyperLightingConfig.campfireColor.set(newValue)).build());
    campfire_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Lit By Default"), HyperLightingConfig.campfireOnByDefault.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Should Lights be lit when placed")).setSaveConsumer(newValue -> HyperLightingConfig.campfireOnByDefault.set(newValue)).build());
    ConfigCategory jack_o_lantern_config = builder.getOrCreateCategory(new StringTextComponent("Jack O Lantern Config"));
    jack_o_lantern_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Disabled Colored Lighting"), HyperLightingConfig.jackColor.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Enable/Disable Colored Lighting Support")).setSaveConsumer(newValue -> HyperLightingConfig.jackColor.set(newValue)).build());
    jack_o_lantern_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Lit By Default"), HyperLightingConfig.jackOnByDefault.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Should Lights be lit when placed")).setSaveConsumer(newValue -> HyperLightingConfig.jackOnByDefault.set(newValue)).build());
    ConfigCategory underwater_lights_config = builder.getOrCreateCategory(new StringTextComponent("Underwater Lights Config"));
    underwater_lights_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Disabled Colored Lighting"), HyperLightingConfig.underwaterColor.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Enable/Disable Colored Lighting Support")).setSaveConsumer(newValue -> HyperLightingConfig.underwaterColor.set(newValue)).build());
    underwater_lights_config.addEntry(configEntryBuilder.startBooleanToggle(new StringTextComponent("Lit By Default"), HyperLightingConfig.underwaterOnByDefault.get()).setDefaultValue(false).setTooltip(new StringTextComponent("Should Lights be lit when placed")).setSaveConsumer(newValue -> HyperLightingConfig.underwaterOnByDefault.set(newValue)).build());
    return builder.build();
}
Also used : ConfigCategory(me.shedaniel.clothconfig2.api.ConfigCategory) ConfigBuilder(me.shedaniel.clothconfig2.api.ConfigBuilder) StringTextComponent(net.minecraft.util.text.StringTextComponent) ConfigEntryBuilder(me.shedaniel.clothconfig2.api.ConfigEntryBuilder)

Aggregations

ConfigCategory (me.shedaniel.clothconfig2.api.ConfigCategory)8 ConfigBuilder (me.shedaniel.clothconfig2.api.ConfigBuilder)7 ConfigEntryBuilder (me.shedaniel.clothconfig2.api.ConfigEntryBuilder)7 TranslatableText (net.minecraft.text.TranslatableText)5 Screen (net.minecraft.client.gui.screen.Screen)4 Identifier (net.minecraft.util.Identifier)3 SubCategoryBuilder (me.shedaniel.clothconfig2.impl.builders.SubCategoryBuilder)2 Environment (net.fabricmc.api.Environment)2 MinecraftClient (net.minecraft.client.MinecraftClient)2 LiteralText (net.minecraft.text.LiteralText)2 HashBiMap (com.google.common.collect.HashBiMap)1 ConfigScreenFactory (com.terraformersmc.modmenu.api.ConfigScreenFactory)1 ModMenuApi (com.terraformersmc.modmenu.api.ModMenuApi)1 StandardCopyOption (java.nio.file.StandardCopyOption)1 ArrayList (java.util.ArrayList)1 List (java.util.List)1 Map (java.util.Map)1 HashedSeedData (kaptainwutax.seedcrackerX.cracker.HashedSeedData)1 Finder (kaptainwutax.seedcrackerX.finder.Finder)1 Bedrockify (me.juancarloscp52.bedrockify.Bedrockify)1