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