Unicopia/src/main/java/com/minelittlepony/unicopia/Config.java

51 lines
3 KiB
Java
Raw Normal View History

package com.minelittlepony.unicopia;
import java.util.HashSet;
2020-04-25 13:32:33 +02:00
import java.util.Set;
2023-09-10 19:51:21 +02:00
import com.google.gson.GsonBuilder;
2020-04-25 13:32:33 +02:00
import com.minelittlepony.common.util.GamePaths;
2023-09-10 19:51:21 +02:00
import com.minelittlepony.common.util.registry.RegistryTypeAdapter;
import com.minelittlepony.common.util.settings.*;
public class Config extends com.minelittlepony.common.util.settings.Config {
public final Setting<Set<String>> speciesWhiteList = value("server", "speciesWhiteList", (Set<String>)new HashSet<String>())
.addComment("A whitelist of races permitted on the server")
.addComment("Races added to this list can be used by anyone,")
.addComment("whilst any ones left off are not permitted")
.addComment("An empty list disables whitelisting entirely.");
public final Setting<Set<String>> wantItNeedItEntityExcludelist = value("server", "wantItNeedItEntityExcludelist", (Set<String>)new HashSet<>(Set.of("minecraft:creeper")))
.addComment("A list of entity types that are immune to the want it need it spell's effects");
public final Setting<Boolean> enableCheats = value("server", "enableCheats", false)
.addComment("Allows use of the /race, /disguise, and /gravity commands");
2022-10-11 17:19:50 +02:00
public final Setting<Race> preferredRace = value("client", "preferredRace", Race.EARTH)
.addComment("The default preferred race")
.addComment("This is the race a client requests when first joining a game")
.addComment("It is the default used both when Mine Little Pony is not installed")
.addComment("and when they respond with a human race.");
public final Setting<Boolean> ignoreMineLP = value("client", "ignoreMineLP", false)
.addComment("If true Mine Little Pony will not be considered when determining the race to use")
.addComment("The result will always be what is set by this config file.");
2022-12-27 20:40:24 +01:00
public final Setting<Integer> hudPage = value("client", "hudActivePage", 0)
.addComment("The page of abilities currently visible in the HUD. You can change this in-game using the PG_UP and PG_DWN keys (configurable)");
public final Setting<Boolean> disableWaterPlantsFix = value("compatibility", "disableWaterPlantsFix", false)
.addComment("Disables this mod's built in fix for making sea plants waterlogged")
.addComment("Turn this ON if you're using another mod that does something similar of if you encounter copatibility issues with other mods.");
public final Setting<Boolean> disableButterflySpawning = value("compatibility", "disableButterflySpawning", false)
.addComment("Removes butterflies from spawning in your world")
.addComment("Turn this ON if you have another mod that adds butterflies.");
public Config() {
2023-09-10 19:51:21 +02:00
super(new HeirarchicalJsonConfigAdapter(new GsonBuilder()
.registerTypeAdapter(Race.class, RegistryTypeAdapter.of(Race.REGISTRY))
), GamePaths.getConfigDirectory().resolve("unicopia.json"));
}
}