I'm having trouble registering a feature and using it in json files. I have a "AsteroidFeature" class:
public class AsteroidFeature<C extends IFeatureConfig> extends Feature<NoFeatureConfig> {
int steps;
int check;
ArrayList<BlockPos> plannedPos = new ArrayList<>();
ArrayList<BlockPos> plannedPosDone = new ArrayList<>();
public AsteroidFeature(Codec<NoFeatureConfig> codec) {
super(codec);
}
@Override
public boolean func_241855_a(ISeedReader reader , ChunkGenerator generator, Random rand, BlockPos pos, NoFeatureConfig config) {
if (pos.getY() <= 60) {return false;}
// do stuff
return true;
}
}
... and a registering class:
public abstract class Feature<FC extends IFeatureConfig> extends net.minecraftforge.registries.ForgeRegistryEntry<Feature<?>> {
public static final AsteroidFeature<IFeatureConfig> ASTEROID = register(new ResourceLocation(VanillaSpace.MOD_ID, "asteroid"), new AsteroidFeature<>(NoFeatureConfig.field_236558_a_));
private static <C extends IFeatureConfig, F extends net.minecraft.world.gen.feature.Feature<C>> F register(ResourceLocation key, F value) {
return Registry.register(Registry.FEATURE, key, value);
}
}
I've been basing these classes off of the "ForestRock" feature. I am adding the feature to a custom biome I created so I don't think I need to do any of the BiomeLoadingEvent stuff (correct me if I'm wrong about that). However, when I try and create a world, I get this error:
[17:14:09] [Render thread/ERROR] [minecraft/BiomeGenerationSettings]: Feature: Not a JSON object: "vspace:asteroid"
[17:14:09] [Render thread/ERROR] [minecraft/DynamicRegistries]: Error loading registry data: Unknown registry key: vspace:asteroid
Honestly, I'm not sure what to do about this anymore.