31 lines
		
	
	
	
		
			990 B
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			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();
 | |
| }
 |