From d4d2b659dc566239c4c5783ff97cab7cb5b0e6ba Mon Sep 17 00:00:00 2001 From: dfsek Date: Wed, 23 Jun 2021 14:53:00 -0700 Subject: [PATCH] fabric pass 1 --- .../dfsek/terra/api/config/ConfigPack.java | 13 ++++++++ .../dfsek/terra/api/config/WorldConfig.java | 6 ++++ .../terra/api/util/logging/DebugLogger.java | 8 ++--- .../terra/config/pack/ConfigPackImpl.java | 30 +++++++++++++++++++ .../terra/config/pack/WorldConfigImpl.java | 15 ++++++++++ .../terra/registry/master/ConfigRegistry.java | 7 +++-- .../com/dfsek/terra/world/TerraWorldImpl.java | 5 ++-- .../generators/DefaultChunkGenerator3D.java | 9 +++--- .../dfsek/terra/fabric/TerraFabricPlugin.java | 15 +++++----- .../dfsek/terra/fabric/block/FabricBlock.java | 3 +- .../FabricChunkGeneratorWrapper.java | 22 +++++++------- .../fabric/generation/TerraBiomeSource.java | 6 ++-- .../fabric/generation/TerraGeneratorType.java | 7 +++-- .../fabric/handle/FabricWorldHandle.java | 3 +- .../mixin/implementations/BiomeMixin.java | 2 +- .../client/MinecraftClientMixin.java | 2 +- .../server/GeneratorOptionsMixin.java | 3 +- .../dfsek/terra/fabric/util/FabricUtil.java | 9 +++--- .../terra/fabric/util/WorldEditUtil.java | 3 +- 19 files changed, 121 insertions(+), 47 deletions(-) diff --git a/common/api/src/main/java/com/dfsek/terra/api/config/ConfigPack.java b/common/api/src/main/java/com/dfsek/terra/api/config/ConfigPack.java index d9c58e274..08eda2099 100644 --- a/common/api/src/main/java/com/dfsek/terra/api/config/ConfigPack.java +++ b/common/api/src/main/java/com/dfsek/terra/api/config/ConfigPack.java @@ -6,6 +6,7 @@ import com.dfsek.terra.api.registry.CheckedRegistry; import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.biome.generation.BiomeProvider; +import java.util.Map; import java.util.Set; public interface ConfigPack extends LoaderRegistrar { @@ -25,4 +26,16 @@ public interface ConfigPack extends LoaderRegistrar { String getAuthor(); String getVersion(); + + boolean vanillaMobs(); + + boolean vanillaStructures(); + + boolean vanillaCaves(); + + boolean disableStructures(); + + Map getLocatable(); + + boolean doBetaCarvers(); } diff --git a/common/api/src/main/java/com/dfsek/terra/api/config/WorldConfig.java b/common/api/src/main/java/com/dfsek/terra/api/config/WorldConfig.java index 84ea2de10..9a54bbcd1 100644 --- a/common/api/src/main/java/com/dfsek/terra/api/config/WorldConfig.java +++ b/common/api/src/main/java/com/dfsek/terra/api/config/WorldConfig.java @@ -28,4 +28,10 @@ public interface WorldConfig { boolean disableFlora(); boolean disableStructures(); + + String getID(); + + String getAuthor(); + + String getVersion(); } diff --git a/common/implementation/src/main/java/com/dfsek/terra/api/util/logging/DebugLogger.java b/common/implementation/src/main/java/com/dfsek/terra/api/util/logging/DebugLogger.java index a22d805eb..fee065a77 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/api/util/logging/DebugLogger.java +++ b/common/implementation/src/main/java/com/dfsek/terra/api/util/logging/DebugLogger.java @@ -2,7 +2,7 @@ package com.dfsek.terra.api.util.logging; import com.dfsek.terra.api.Logger; -public class DebugLogger { +public class DebugLogger implements Logger { private final Logger logger; private boolean debug = false; @@ -22,15 +22,15 @@ public class DebugLogger { if(debug) logger.info(message); } - public void warn(String message) { + public void warning(String message) { if(debug) logger.warning(message); } - public void error(String message) { + public void severe(String message) { if(debug) logger.severe(message); } - public void stack(Exception e) { + public void stack(Throwable e) { if(debug) e.printStackTrace(); } } diff --git a/common/implementation/src/main/java/com/dfsek/terra/config/pack/ConfigPackImpl.java b/common/implementation/src/main/java/com/dfsek/terra/config/pack/ConfigPackImpl.java index 3f110cf41..2ce3b99a5 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/config/pack/ConfigPackImpl.java +++ b/common/implementation/src/main/java/com/dfsek/terra/config/pack/ConfigPackImpl.java @@ -338,4 +338,34 @@ public class ConfigPackImpl implements ConfigPack { public String getVersion() { return template.getVersion(); } + + @Override + public boolean vanillaMobs() { + return template.vanillaMobs(); + } + + @Override + public boolean vanillaStructures() { + return template.vanillaStructures(); + } + + @Override + public boolean vanillaCaves() { + return template.vanillaCaves(); + } + + @Override + public boolean disableStructures() { + return template.disableStructures(); + } + + @Override + public Map getLocatable() { + return template.getLocatable(); + } + + @Override + public boolean doBetaCarvers() { + return template.doBetaCarvers(); + } } diff --git a/common/implementation/src/main/java/com/dfsek/terra/config/pack/WorldConfigImpl.java b/common/implementation/src/main/java/com/dfsek/terra/config/pack/WorldConfigImpl.java index a952f19f9..b74d89e2b 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/config/pack/WorldConfigImpl.java +++ b/common/implementation/src/main/java/com/dfsek/terra/config/pack/WorldConfigImpl.java @@ -94,6 +94,21 @@ public class WorldConfigImpl implements WorldConfig { return pack.getTemplate().disableStructures(); } + @Override + public String getID() { + return pack.getID(); + } + + @Override + public String getAuthor() { + return pack.getAuthor(); + } + + @Override + public String getVersion() { + return pack.getVersion(); + } + public Set getStructures() { return new HashSet<>(getRegistry(TerraStructure.class).entries()); } diff --git a/common/implementation/src/main/java/com/dfsek/terra/registry/master/ConfigRegistry.java b/common/implementation/src/main/java/com/dfsek/terra/registry/master/ConfigRegistry.java index a4c13c187..2285c8ba7 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/registry/master/ConfigRegistry.java +++ b/common/implementation/src/main/java/com/dfsek/terra/registry/master/ConfigRegistry.java @@ -2,6 +2,7 @@ package com.dfsek.terra.registry.master; import com.dfsek.tectonic.exception.ConfigException; import com.dfsek.terra.api.TerraPlugin; +import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.config.pack.ConfigPackImpl; import com.dfsek.terra.registry.OpenRegistryImpl; @@ -12,10 +13,10 @@ import java.util.zip.ZipFile; /** * Class to hold config packs */ -public class ConfigRegistry extends OpenRegistryImpl { +public class ConfigRegistry extends OpenRegistryImpl { public void load(File folder, TerraPlugin main) throws ConfigException { - ConfigPackImpl pack = new ConfigPackImpl(folder, main); - add(pack.getTemplate().getID(), pack); + ConfigPack pack = new ConfigPackImpl(folder, main); + add(pack.getID(), pack); } public boolean loadAll(TerraPlugin main) { diff --git a/common/implementation/src/main/java/com/dfsek/terra/world/TerraWorldImpl.java b/common/implementation/src/main/java/com/dfsek/terra/world/TerraWorldImpl.java index ed9ac1dfb..38ee2a1d9 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/world/TerraWorldImpl.java +++ b/common/implementation/src/main/java/com/dfsek/terra/world/TerraWorldImpl.java @@ -1,6 +1,7 @@ package com.dfsek.terra.world; import com.dfsek.terra.api.TerraPlugin; +import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.event.events.world.TerraWorldLoadEvent; import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.api.world.TerraWorld; @@ -24,10 +25,10 @@ public class TerraWorldImpl implements TerraWorld { private final BlockData air; - public TerraWorldImpl(World w, ConfigPackImpl c, TerraPlugin main) { + public TerraWorldImpl(World w, ConfigPack c, TerraPlugin main) { if(!w.isTerraWorld()) throw new IllegalArgumentException("World " + w + " is not a Terra World!"); this.world = w; - config = c.toWorldConfig(this); + config = (WorldConfigImpl) c.toWorldConfig(this); this.provider = config.getProvider(); air = main.getWorldHandle().createBlockData("minecraft:air"); main.getEventManager().callEvent(new TerraWorldLoadEvent(this, c)); diff --git a/common/implementation/src/main/java/com/dfsek/terra/world/generation/generators/DefaultChunkGenerator3D.java b/common/implementation/src/main/java/com/dfsek/terra/world/generation/generators/DefaultChunkGenerator3D.java index b017db9e9..1f9ca86bf 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/world/generation/generators/DefaultChunkGenerator3D.java +++ b/common/implementation/src/main/java/com/dfsek/terra/world/generation/generators/DefaultChunkGenerator3D.java @@ -1,6 +1,7 @@ package com.dfsek.terra.world.generation.generators; import com.dfsek.terra.api.TerraPlugin; +import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.math.range.ConstantRange; import com.dfsek.terra.api.vector.Vector3; import com.dfsek.terra.api.world.TerraWorld; @@ -43,7 +44,7 @@ import java.util.Map; import java.util.Random; public class DefaultChunkGenerator3D implements TerraChunkGenerator { - private final ConfigPackImpl configPack; + private final ConfigPack configPack; private final TerraPlugin main; private final BlockType water; private final PaletteImpl.Singleton blank; @@ -51,7 +52,7 @@ public class DefaultChunkGenerator3D implements TerraChunkGenerator { private final Carver carver; - public DefaultChunkGenerator3D(ConfigPackImpl c, TerraPlugin main) { + public DefaultChunkGenerator3D(ConfigPack c, TerraPlugin main) { this.configPack = c; this.main = main; @@ -67,7 +68,7 @@ public class DefaultChunkGenerator3D implements TerraChunkGenerator { } @Override - public ConfigPackImpl getConfigPack() { + public ConfigPack getConfigPack() { return configPack; } @@ -131,7 +132,7 @@ public class DefaultChunkGenerator3D implements TerraChunkGenerator { } } } - if(configPack.getTemplate().doBetaCarvers()) { + if(configPack.doBetaCarvers()) { carver.carve(world, chunkX, chunkZ, chunk); } return chunk; diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/TerraFabricPlugin.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/TerraFabricPlugin.java index 2e3a14971..205e20900 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/TerraFabricPlugin.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/TerraFabricPlugin.java @@ -28,7 +28,6 @@ import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.Tree; import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.registry.CheckedRegistry; -import com.dfsek.terra.api.registry.LockedRegistry; import com.dfsek.terra.api.transform.TransformerImpl; import com.dfsek.terra.api.transform.Validator; import com.dfsek.terra.api.util.generic.pair.Pair; @@ -53,6 +52,8 @@ import com.dfsek.terra.fabric.util.ProtoBiome; import com.dfsek.terra.api.profiler.Profiler; import com.dfsek.terra.profiler.ProfilerImpl; import com.dfsek.terra.api.registry.DuplicateEntryException; +import com.dfsek.terra.registry.CheckedRegistryImpl; +import com.dfsek.terra.registry.LockedRegistryImpl; import com.dfsek.terra.registry.master.AddonRegistry; import com.dfsek.terra.registry.master.ConfigRegistry; import com.dfsek.terra.world.TerraWorldImpl; @@ -119,11 +120,11 @@ public class TerraFabricPlugin implements TerraPlugin, ModInitializer { private final ItemHandle itemHandle = new FabricItemHandle(); private final WorldHandle worldHandle = new FabricWorldHandle(); private final ConfigRegistry configRegistry = new ConfigRegistry(); - private final CheckedRegistry checkedRegistry = new CheckedRegistry<>(configRegistry); + private final CheckedRegistry checkedRegistry = new CheckedRegistryImpl<>(configRegistry); private final FabricAddon fabricAddon = new FabricAddon(); private final AddonRegistry addonRegistry = new AddonRegistry(fabricAddon, this); - private final LockedRegistry addonLockedRegistry = new LockedRegistry<>(addonRegistry); + private final com.dfsek.terra.api.registry.Registry addonLockedRegistry = new LockedRegistryImpl<>(addonRegistry); private final PluginConfig config = new PluginConfigImpl(); @@ -194,7 +195,7 @@ public class TerraFabricPlugin implements TerraPlugin, ModInitializer { } @Override - public LockedRegistry getAddons() { + public com.dfsek.terra.api.registry.Registry getAddons() { return addonLockedRegistry; } @@ -205,7 +206,7 @@ public class TerraFabricPlugin implements TerraPlugin, ModInitializer { boolean succeed = configRegistry.loadAll(this); worldMap.forEach((seed, pair) -> { pair.getRight().getConfig().getSamplerCache().clear(); - String packID = pair.getRight().getConfig().getTemplate().getID(); + String packID = pair.getRight().getConfig().getID(); pair.setRight(new TerraWorldImpl(pair.getRight().getWorld(), configRegistry.get(packID), this)); }); return succeed; @@ -232,7 +233,7 @@ public class TerraFabricPlugin implements TerraPlugin, ModInitializer { } @Override - public DebugLogger getDebugLogger() { + public Logger getDebugLogger() { return debugLogger; } @@ -241,7 +242,7 @@ public class TerraFabricPlugin implements TerraPlugin, ModInitializer { genericLoaders.register(registry); registry .registerLoader(BlockData.class, (t, o, l) -> worldHandle.createBlockData((String) o)) - .registerLoader(com.dfsek.terra.api.world.Biome.class, (t, o, l) -> biomeFixer.translate((String) o)) + .registerLoader(com.dfsek.terra.api.world.biome.Biome.class, (t, o, l) -> biomeFixer.translate((String) o)) .registerLoader(Identifier.class, (t, o, l) -> { Identifier identifier = Identifier.tryParse((String) o); if(identifier == null) throw new LoadException("Invalid identifier: " + o); diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/block/FabricBlock.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/block/FabricBlock.java index b4e428bb0..38d6c7680 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/block/FabricBlock.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/block/FabricBlock.java @@ -1,5 +1,6 @@ package com.dfsek.terra.fabric.block; +import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.vector.LocationImpl; import com.dfsek.terra.api.block.Block; import com.dfsek.terra.api.block.BlockData; @@ -49,7 +50,7 @@ public class FabricBlock implements Block { } @Override - public LocationImpl getLocation() { + public Location getLocation() { return FabricAdapter.adapt(delegate.position).toLocation((World) delegate.worldAccess); } diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java index 04a847c1a..47f3f2313 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java @@ -54,7 +54,7 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener public static final Codec PACK_CODEC = RecordCodecBuilder.create( config -> config.group( Codec.STRING.fieldOf("pack") - .forGetter(pack -> pack.getTemplate().getID()) + .forGetter(pack -> pack.getID()) ).apply(config, config.stable(TerraFabricPlugin.getInstance().getConfigRegistry()::get))); public static final Codec CODEC = RecordCodecBuilder.create( @@ -72,15 +72,15 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener private final DefaultChunkGenerator3D delegate; private final TerraBiomeSource biomeSource; - private final ConfigPackImpl pack; + private final ConfigPack pack; private DimensionType dimensionType; - public FabricChunkGeneratorWrapper(TerraBiomeSource biomeSource, long seed, ConfigPackImpl configPack) { + public FabricChunkGeneratorWrapper(TerraBiomeSource biomeSource, long seed, ConfigPack configPack) { super(biomeSource, new StructuresConfig(false)); this.pack = configPack; this.delegate = new DefaultChunkGenerator3D(pack, TerraFabricPlugin.getInstance()); - delegate.getMain().logger().info("Loading world with config pack " + pack.getTemplate().getID()); + delegate.getMain().logger().info("Loading world with config pack " + pack.getID()); this.biomeSource = biomeSource; this.seed = seed; @@ -97,7 +97,7 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener return new FabricChunkGeneratorWrapper((TerraBiomeSource) this.biomeSource.withSeed(seed), seed, pack); } - public ConfigPackImpl getPack() { + public ConfigPack getPack() { return pack; } @@ -113,10 +113,10 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener @Nullable @Override public BlockPos locateStructure(ServerWorld world, StructureFeature feature, BlockPos center, int radius, boolean skipExistingChunks) { - if(!pack.getTemplate().disableStructures()) { + if(!pack.disableStructures()) { String name = Objects.requireNonNull(Registry.STRUCTURE_FEATURE.getId(feature)).toString(); TerraWorld terraWorld = TerraFabricPlugin.getInstance().getWorld((World) world); - TerraStructure located = pack.getRegistry(TerraStructure.class).get(pack.getTemplate().getLocatable().get(name)); + TerraStructure located = pack.getRegistry(TerraStructure.class).get(pack.getLocatable().get(name)); if(located != null) { CompletableFuture result = new CompletableFuture<>(); AsyncStructureFinder finder = new AsyncStructureFinder(terraWorld.getBiomeProvider(), located, FabricAdapter.adapt(center).toLocation((World) world), 0, 500, location -> { @@ -135,14 +135,14 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener @Override public void carve(long seed, BiomeAccess access, Chunk chunk, GenerationStep.Carver carver) { - if(pack.getTemplate().vanillaCaves()) { + if(pack.vanillaCaves()) { super.carve(seed, access, chunk, carver); } } @Override public void setStructureStarts(DynamicRegistryManager dynamicRegistryManager, StructureAccessor structureAccessor, Chunk chunk, StructureManager structureManager, long worldSeed) { - if(pack.getTemplate().vanillaStructures()) { + if(pack.vanillaStructures()) { super.setStructureStarts(dynamicRegistryManager, structureAccessor, chunk, structureManager, worldSeed); } } @@ -163,7 +163,7 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener @Override public boolean isStrongholdStartingChunk(ChunkPos chunkPos) { - if(pack.getTemplate().vanillaStructures()) { + if(pack.vanillaStructures()) { return super.isStrongholdStartingChunk(chunkPos); } return false; @@ -196,7 +196,7 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener @Override public void populateEntities(ChunkRegion region) { - if(pack.getTemplate().vanillaMobs()) { + if(pack.vanillaMobs()) { int cx = region.getCenterPos().x; int cy = region.getCenterPos().z; Biome biome = region.getBiome((new ChunkPos(cx, cy)).getStartPos()); diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/TerraBiomeSource.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/TerraBiomeSource.java index 716a59918..ba24dc759 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/TerraBiomeSource.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/TerraBiomeSource.java @@ -19,7 +19,7 @@ import java.util.stream.Collectors; public class TerraBiomeSource extends BiomeSource { public static final Codec PACK_CODEC = (RecordCodecBuilder.create(config -> config.group( - Codec.STRING.fieldOf("pack").forGetter(pack -> pack.getTemplate().getID()) + Codec.STRING.fieldOf("pack").forGetter(ConfigPack::getID) ).apply(config, config.stable(TerraFabricPlugin.getInstance().getConfigRegistry()::get)))); public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( RegistryLookupCodec.of(Registry.BIOME_KEY).forGetter(source -> source.biomeRegistry), @@ -30,9 +30,9 @@ public class TerraBiomeSource extends BiomeSource { private final Registry biomeRegistry; private final long seed; private final BiomeProvider grid; - private final ConfigPackImpl pack; + private final ConfigPack pack; - public TerraBiomeSource(Registry biomes, long seed, ConfigPackImpl pack) { + public TerraBiomeSource(Registry biomes, long seed, ConfigPack pack) { super(biomes.stream() .filter(biome -> Objects.requireNonNull(biomes.getId(biome)).getNamespace().equals("terra")) // Filter out non-Terra biomes. .collect(Collectors.toList())); diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/TerraGeneratorType.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/TerraGeneratorType.java index 78ec90a94..6d646fbe1 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/TerraGeneratorType.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/TerraGeneratorType.java @@ -1,5 +1,6 @@ package com.dfsek.terra.fabric.generation; +import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.config.pack.ConfigPackImpl; import com.dfsek.terra.fabric.TerraFabricPlugin; import com.dfsek.terra.fabric.event.BiomeRegistrationEvent; @@ -15,10 +16,10 @@ import net.minecraft.world.gen.chunk.ChunkGeneratorSettings; @Environment(EnvType.CLIENT) public class TerraGeneratorType extends GeneratorType { - private final ConfigPackImpl pack; + private final ConfigPack pack; - public TerraGeneratorType(ConfigPackImpl pack) { - super("terra." + pack.getTemplate().getID()); + public TerraGeneratorType(ConfigPack pack) { + super("terra." + pack.getID()); this.pack = pack; } diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/handle/FabricWorldHandle.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/handle/FabricWorldHandle.java index f6c8b7f12..95680239c 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/handle/FabricWorldHandle.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/handle/FabricWorldHandle.java @@ -1,5 +1,6 @@ package com.dfsek.terra.fabric.handle; +import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.vector.LocationImpl; import com.dfsek.terra.api.entity.EntityType; import com.dfsek.terra.api.entity.Player; @@ -39,7 +40,7 @@ public class FabricWorldHandle implements WorldHandle { } @Override - public Pair getSelectedLocation(Player player) { + public Pair getSelectedLocation(Player player) { try { Class.forName("com.sk89q.worldedit.WorldEdit"); } catch(ClassNotFoundException e) { diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/implementations/BiomeMixin.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/implementations/BiomeMixin.java index 22d8eb3b3..357edda81 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/implementations/BiomeMixin.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/implementations/BiomeMixin.java @@ -7,7 +7,7 @@ import org.spongepowered.asm.mixin.Intrinsic; import org.spongepowered.asm.mixin.Mixin; @Mixin(Biome.class) -@Implements(@Interface(iface = com.dfsek.terra.api.world.Biome.class, prefix = "terra$", remap = Interface.Remap.NONE)) +@Implements(@Interface(iface = com.dfsek.terra.api.world.biome.Biome.class, prefix = "terra$", remap = Interface.Remap.NONE)) public abstract class BiomeMixin { @Intrinsic public Object terra$getHandle() { diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/lifecycle/client/MinecraftClientMixin.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/lifecycle/client/MinecraftClientMixin.java index aa2a4aee1..bfd0852ee 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/lifecycle/client/MinecraftClientMixin.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/lifecycle/client/MinecraftClientMixin.java @@ -23,7 +23,7 @@ public class MinecraftClientMixin { TerraFabricPlugin.getInstance().getConfigRegistry().forEach(pack -> { final GeneratorType generatorType = new TerraGeneratorType(pack); //noinspection ConstantConditions - ((GeneratorTypeAccessor) generatorType).setTranslationKey(new LiteralText("Terra:" + pack.getTemplate().getID())); + ((GeneratorTypeAccessor) generatorType).setTranslationKey(new LiteralText("Terra:" + pack.getID())); GeneratorTypeAccessor.getValues().add(1, generatorType); }); } diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/lifecycle/server/GeneratorOptionsMixin.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/lifecycle/server/GeneratorOptionsMixin.java index 6ad5efd51..93e6f706e 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/lifecycle/server/GeneratorOptionsMixin.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/lifecycle/server/GeneratorOptionsMixin.java @@ -1,5 +1,6 @@ package com.dfsek.terra.fabric.mixin.lifecycle.server; +import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.config.pack.ConfigPackImpl; import com.dfsek.terra.fabric.TerraFabricPlugin; import com.dfsek.terra.fabric.event.BiomeRegistrationEvent; @@ -56,7 +57,7 @@ public abstract class GeneratorOptionsMixin { prop = prop.substring(prop.indexOf(":") + 1); - ConfigPackImpl config = main.getConfigRegistry().get(prop); + ConfigPack config = main.getConfigRegistry().get(prop); if(config == null) throw new IllegalArgumentException("No such pack " + prop); diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/util/FabricUtil.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/util/FabricUtil.java index 1b523b01d..024dd8265 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/util/FabricUtil.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/util/FabricUtil.java @@ -1,5 +1,6 @@ package com.dfsek.terra.fabric.util; +import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.util.generic.pair.Pair; import com.dfsek.terra.config.builder.BiomeBuilder; import com.dfsek.terra.config.pack.ConfigPackImpl; @@ -29,8 +30,8 @@ import java.util.Map; import java.util.function.Supplier; public final class FabricUtil { - public static String createBiomeID(ConfigPackImpl pack, String biomeID) { - return pack.getTemplate().getID().toLowerCase() + "/" + biomeID.toLowerCase(Locale.ROOT); + public static String createBiomeID(ConfigPack pack, String biomeID) { + return pack.getID().toLowerCase() + "/" + biomeID.toLowerCase(Locale.ROOT); } /** @@ -40,7 +41,7 @@ public final class FabricUtil { * @param pack The ConfigPack this biome belongs to. * @return The Minecraft delegate biome. */ - public static Biome createBiome(BiomeBuilder biome, ConfigPackImpl pack, DynamicRegistryManager registryManager) { + public static Biome createBiome(BiomeBuilder biome, ConfigPack pack, DynamicRegistryManager registryManager) { BiomeTemplate template = biome.getTemplate(); Map colors = template.getColors(); @@ -55,7 +56,7 @@ public final class FabricUtil { generationSettings.feature(GenerationStep.Feature.VEGETAL_DECORATION, TerraFabricPlugin.POPULATOR_CONFIGURED_FEATURE); - if(pack.getTemplate().vanillaCaves()) { + if(pack.vanillaCaves()) { for(GenerationStep.Carver carver : GenerationStep.Carver.values()) { for(Supplier> configuredCarverSupplier : vanilla.getGenerationSettings().getCarversForStep(carver)) { generationSettings.carver(carver, configuredCarverSupplier.get()); diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/util/WorldEditUtil.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/util/WorldEditUtil.java index 3680fa146..373a9ee8d 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/util/WorldEditUtil.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/util/WorldEditUtil.java @@ -1,5 +1,6 @@ package com.dfsek.terra.fabric.util; +import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.vector.LocationImpl; import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.util.generic.pair.Pair; @@ -11,7 +12,7 @@ import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.world.World; public final class WorldEditUtil { - public static Pair getSelection(Player player) { + public static Pair getSelection(Player player) { WorldEdit worldEdit = WorldEdit.getInstance(); try { Region selection = worldEdit.getSessionManager()