31 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package net.minecraft.world.level.block;
 | |
| 
 | |
| import java.util.List;
 | |
| import java.util.Objects;
 | |
| import java.util.stream.Collectors;
 | |
| import net.minecraft.core.registries.BuiltInRegistries;
 | |
| import net.minecraft.world.item.BlockItem;
 | |
| import net.minecraft.world.item.component.SuspiciousStewEffects;
 | |
| import net.minecraft.world.level.ItemLike;
 | |
| import org.jetbrains.annotations.Nullable;
 | |
| 
 | |
| public interface SuspiciousEffectHolder {
 | |
| 	SuspiciousStewEffects getSuspiciousEffects();
 | |
| 
 | |
| 	static List<SuspiciousEffectHolder> getAllEffectHolders() {
 | |
| 		return (List<SuspiciousEffectHolder>)BuiltInRegistries.ITEM
 | |
| 			.stream()
 | |
| 			.map(SuspiciousEffectHolder::tryGet)
 | |
| 			.filter(Objects::nonNull)
 | |
| 			.collect(Collectors.toList());
 | |
| 	}
 | |
| 
 | |
| 	@Nullable
 | |
| 	static SuspiciousEffectHolder tryGet(ItemLike item) {
 | |
| 		if (item.asItem() instanceof BlockItem blockItem && blockItem.getBlock() instanceof SuspiciousEffectHolder suspiciousEffectHolder) {
 | |
| 			return suspiciousEffectHolder;
 | |
| 		} else {
 | |
| 			return item.asItem() instanceof SuspiciousEffectHolder suspiciousEffectHolder2 ? suspiciousEffectHolder2 : null;
 | |
| 		}
 | |
| 	}
 | |
| }
 |