minecraft-src/net/minecraft/commands/CommandBuildContext.java
2025-07-04 02:00:41 +03:00

31 lines
990 B
Java

package net.minecraft.commands;
import java.util.Optional;
import java.util.stream.Stream;
import net.minecraft.core.HolderLookup;
import net.minecraft.core.Registry;
import net.minecraft.resources.ResourceKey;
import net.minecraft.world.flag.FeatureFlagSet;
public interface CommandBuildContext extends HolderLookup.Provider {
static CommandBuildContext simple(HolderLookup.Provider provider, FeatureFlagSet enabledFeatures) {
return new CommandBuildContext() {
@Override
public Stream<ResourceKey<? extends Registry<?>>> listRegistryKeys() {
return provider.listRegistryKeys();
}
@Override
public <T> Optional<HolderLookup.RegistryLookup<T>> lookup(ResourceKey<? extends Registry<? extends T>> registryKey) {
return provider.lookup(registryKey).map(registryLookup -> registryLookup.filterFeatures(enabledFeatures));
}
@Override
public FeatureFlagSet enabledFeatures() {
return enabledFeatures;
}
};
}
FeatureFlagSet enabledFeatures();
}