40 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package net.minecraft.client.renderer.item;
 | |
| 
 | |
| import com.mojang.serialization.MapCodec;
 | |
| import net.fabricmc.api.EnvType;
 | |
| import net.fabricmc.api.Environment;
 | |
| import net.minecraft.client.model.geom.EntityModelSet;
 | |
| import net.minecraft.client.multiplayer.ClientLevel;
 | |
| import net.minecraft.client.resources.model.ModelBaker;
 | |
| import net.minecraft.client.resources.model.ResolvableModel;
 | |
| import net.minecraft.util.RegistryContextSwapper;
 | |
| import net.minecraft.world.entity.LivingEntity;
 | |
| import net.minecraft.world.item.ItemDisplayContext;
 | |
| import net.minecraft.world.item.ItemStack;
 | |
| import org.jetbrains.annotations.Nullable;
 | |
| 
 | |
| @Environment(EnvType.CLIENT)
 | |
| public interface ItemModel {
 | |
| 	void update(
 | |
| 		ItemStackRenderState renderState,
 | |
| 		ItemStack stack,
 | |
| 		ItemModelResolver itemModelResolver,
 | |
| 		ItemDisplayContext displayContext,
 | |
| 		@Nullable ClientLevel level,
 | |
| 		@Nullable LivingEntity entity,
 | |
| 		int seed
 | |
| 	);
 | |
| 
 | |
| 	@Environment(EnvType.CLIENT)
 | |
| 	public record BakingContext(
 | |
| 		ModelBaker blockModelBaker, EntityModelSet entityModelSet, ItemModel missingItemModel, @Nullable RegistryContextSwapper contextSwapper
 | |
| 	) {
 | |
| 	}
 | |
| 
 | |
| 	@Environment(EnvType.CLIENT)
 | |
| 	public interface Unbaked extends ResolvableModel {
 | |
| 		MapCodec<? extends ItemModel.Unbaked> type();
 | |
| 
 | |
| 		ItemModel bake(ItemModel.BakingContext context);
 | |
| 	}
 | |
| }
 |