mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-02-16 10:30:42 +00:00
use getCheckedRegistry where possible
This commit is contained in:
@@ -63,7 +63,7 @@ public class NoiseAddon extends TerraAddon implements EventListener {
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
public void packPreLoad(ConfigPackPreLoadEvent event) {
|
||||
CheckedRegistry<NoiseProvider> noiseRegistry = event.getPack().getRegistry(NoiseProvider.class);
|
||||
CheckedRegistry<NoiseProvider> noiseRegistry = event.getPack().getCheckedRegistry(NoiseProvider.class);
|
||||
event.getPack()
|
||||
.applyLoader(NoiseSeeded.class, new NoiseSamplerBuilderLoader(noiseRegistry));
|
||||
|
||||
|
||||
@@ -33,8 +33,8 @@ public class TerraScriptAddon extends TerraAddon implements EventListener {
|
||||
}
|
||||
|
||||
public void onPackLoad(ConfigPackPreLoadEvent event) throws ConfigException {
|
||||
CheckedRegistry<Structure> structureRegistry = event.getPack().getRegistry(Structure.class);
|
||||
CheckedRegistry<LootTable> lootRegistry = event.getPack().getRegistry(LootTable.class);
|
||||
CheckedRegistry<Structure> structureRegistry = event.getPack().getCheckedRegistry(Structure.class);
|
||||
CheckedRegistry<LootTable> lootRegistry = event.getPack().getCheckedRegistry(LootTable.class);
|
||||
event.getPack().getLoader().open("", ".tesf").thenEntries(entries -> {
|
||||
for(Map.Entry<String, InputStream> entry : entries) {
|
||||
try {
|
||||
|
||||
@@ -13,8 +13,6 @@ import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
public interface ConfigPack extends LoaderRegistrar, LoaderHolder, RegistryHolder {
|
||||
<T> CheckedRegistry<T> getRegistry(Class<T> clazz);
|
||||
|
||||
BiomeProviderBuilder getBiomeProviderBuilder();
|
||||
|
||||
WorldConfig toWorldConfig(TerraWorld world);
|
||||
|
||||
@@ -6,5 +6,5 @@ import com.dfsek.terra.api.registry.Registry;
|
||||
public interface RegistryHolder {
|
||||
<T> Registry<T> getRegistry(Class<T> clazz);
|
||||
|
||||
<T>CheckedRegistry<T> getCheckedRegistry(Class<T> clazz) throws IllegalStateException;
|
||||
<T> CheckedRegistry<T> getCheckedRegistry(Class<T> clazz) throws IllegalStateException;
|
||||
}
|
||||
|
||||
@@ -249,7 +249,7 @@ public class ConfigPackImpl implements ConfigPack {
|
||||
for(ConfigType<?, ?> configType : configTypeRegistry.entries()) {
|
||||
for(AbstractableTemplate config : abstractConfigLoader.loadConfigs(configs.getOrDefault(configType, Collections.emptyList()), () -> configType.getTemplate(this, main))) {
|
||||
try {
|
||||
((CheckedRegistry) getRegistry(configType.getTypeClass())).register(config.getID(), ((ConfigFactory) configType.getFactory()).build(config, main));
|
||||
((CheckedRegistry) getCheckedRegistry(configType.getTypeClass())).register(config.getID(), ((ConfigFactory) configType.getFactory()).build(config, main));
|
||||
} catch(DuplicateEntryException e) {
|
||||
throw new LoadException("Duplicate registry entry: ", e);
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ public class WorldConfigImpl implements WorldConfig {
|
||||
pack.getRegistryMap().forEach((clazz, pair) -> registryMap.put(clazz, new LockedRegistryImpl<>(pair.getLeft())));
|
||||
|
||||
OpenRegistry<TerraBiome> biomeOpenRegistry = new OpenRegistryImpl<>();
|
||||
pack.getRegistry(BiomeBuilder.class).forEach((id, biome) -> biomeOpenRegistry.register(id, biome.apply(world.getWorld().getSeed())));
|
||||
pack.getCheckedRegistry(BiomeBuilder.class).forEach((id, biome) -> biomeOpenRegistry.register(id, biome.apply(world.getWorld().getSeed())));
|
||||
registryMap.put(TerraBiome.class, new LockedRegistryImpl<>(biomeOpenRegistry));
|
||||
|
||||
this.provider = pack.getBiomeProviderBuilder().build(world.getWorld().getSeed());
|
||||
|
||||
@@ -24,8 +24,8 @@ public class TerraListener implements EventListener {
|
||||
for(TreeType value : TreeType.values()) {
|
||||
try {
|
||||
String id = BukkitAdapter.TREE_TRANSFORMER.translate(value);
|
||||
event.getPack().getRegistry(Tree.class).register(id, new BukkitTree(value, main));
|
||||
event.getPack().getRegistry(Tree.class).get(id); // Platform trees should never be marked "dead"
|
||||
event.getPack().getCheckedRegistry(Tree.class).register(id, new BukkitTree(value, main));
|
||||
event.getPack().getCheckedRegistry(Tree.class).get(id); // Platform trees should never be marked "dead"
|
||||
} catch(DuplicateEntryException ignore) { // If another com.dfsek.terra.addon has already registered trees, do nothing.
|
||||
}
|
||||
}
|
||||
|
||||
@@ -327,7 +327,7 @@ public class TerraFabricPlugin implements TerraPlugin, ModInitializer {
|
||||
@Priority(Priority.LOWEST)
|
||||
@Global
|
||||
public void injectTrees(ConfigPackPreLoadEvent event) {
|
||||
CheckedRegistry<Tree> treeRegistry = event.getPack().getRegistry(Tree.class);
|
||||
CheckedRegistry<Tree> treeRegistry = event.getPack().getCheckedRegistry(Tree.class);
|
||||
injectTree(treeRegistry, "BROWN_MUSHROOM", ConfiguredFeatures.HUGE_BROWN_MUSHROOM);
|
||||
injectTree(treeRegistry, "RED_MUSHROOM", ConfiguredFeatures.HUGE_RED_MUSHROOM);
|
||||
injectTree(treeRegistry, "JUNGLE", ConfiguredFeatures.MEGA_JUNGLE_TREE);
|
||||
@@ -359,7 +359,7 @@ public class TerraFabricPlugin implements TerraPlugin, ModInitializer {
|
||||
BuiltinRegistries.CONFIGURED_FEATURE.getEntries().forEach(entry -> {
|
||||
if(!template.getExcludedRegistryFeatures().contains(entry.getKey().getValue())) {
|
||||
try {
|
||||
event.getPack().getRegistry(Tree.class).register(entry.getKey().getValue().toString(), (Tree) entry.getValue());
|
||||
event.getPack().getCheckedRegistry(Tree.class).register(entry.getKey().getValue().toString(), (Tree) entry.getValue());
|
||||
debugLogger.info("Injected ConfiguredFeature " + entry.getKey().getValue() + " as Tree.");
|
||||
} catch(DuplicateEntryException ignored) {
|
||||
}
|
||||
@@ -387,7 +387,7 @@ public class TerraFabricPlugin implements TerraPlugin, ModInitializer {
|
||||
public void injectBiomes(BiomeRegistrationEvent event) {
|
||||
logger.info("Registering biomes...");
|
||||
Registry<Biome> biomeRegistry = event.getRegistryManager().get(Registry.BIOME_KEY);
|
||||
configRegistry.forEach(pack -> pack.getRegistry(BiomeBuilder.class).forEach((id, biome) -> FabricUtil.registerOrOverwrite(biomeRegistry, Registry.BIOME_KEY, new Identifier("terra", FabricUtil.createBiomeID(pack, id)), FabricUtil.createBiome(biome, pack, event.getRegistryManager())))); // Register all Terra biomes.
|
||||
configRegistry.forEach(pack -> pack.getCheckedRegistry(BiomeBuilder.class).forEach((id, biome) -> FabricUtil.registerOrOverwrite(biomeRegistry, Registry.BIOME_KEY, new Identifier("terra", FabricUtil.createBiomeID(pack, id)), FabricUtil.createBiome(biome, pack, event.getRegistryManager())))); // Register all Terra biomes.
|
||||
logger.info("Biomes registered.");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user