CustomCraftingRecipeBuilder.java
net.minecraft.data.recipes.CustomCraftingRecipeBuilder
信息
- 全限定名:net.minecraft.data.recipes.CustomCraftingRecipeBuilder
- 类型:public class
- 包:net.minecraft.data.recipes
- 源码路径:src/main/java/net/minecraft/data/recipes/CustomCraftingRecipeBuilder.java
- 起始行号:L12
- 职责:
TODO
字段/常量
-
category- 类型:
RecipeCategory - 修饰符:
private final - 源码定位:
L13 - 说明:
TODO
- 类型:
-
advancementBuilder- 类型:
RecipeUnlockAdvancementBuilder - 修饰符:
private final - 源码定位:
L14 - 说明:
TODO
- 类型:
-
group- 类型:
String - 修饰符:
private - 源码定位:
L15 - 说明:
TODO
- 类型:
-
factory- 类型:
CustomCraftingRecipeBuilder.Factory - 修饰符:
private final - 源码定位:
L16 - 说明:
TODO
- 类型:
内部类/嵌套类型
net.minecraft.data.recipes.CustomCraftingRecipeBuilder.Factory- 类型:
interface - 修饰符:
public - 源码定位:
L49 - 说明:
TODO
- 类型:
构造器
public CustomCraftingRecipeBuilder(RecipeCategory category, CustomCraftingRecipeBuilder.Factory factory) @ L18
- 构造器名:CustomCraftingRecipeBuilder
- 源码定位:L18
- 修饰符:public
参数:
- category: RecipeCategory
- factory: CustomCraftingRecipeBuilder.Factory
说明:
TODO
方法
下面的方法块按源码顺序生成。
public static CustomCraftingRecipeBuilder customCrafting(RecipeCategory category, CustomCraftingRecipeBuilder.Factory factory) @ L23
- 方法名:customCrafting
- 源码定位:L23
- 返回类型:CustomCraftingRecipeBuilder
- 修饰符:public static
参数:
- category: RecipeCategory
- factory: CustomCraftingRecipeBuilder.Factory
说明:
TODO
public CustomCraftingRecipeBuilder unlockedBy(String name, Criterion<?> criterion) @ L27
- 方法名:unlockedBy
- 源码定位:L27
- 返回类型:CustomCraftingRecipeBuilder
- 修饰符:public
参数:
- name: String
- criterion: Criterion<?>
说明:
TODO
public CustomCraftingRecipeBuilder group(String group) @ L32
- 方法名:group
- 源码定位:L32
- 返回类型:CustomCraftingRecipeBuilder
- 修饰符:public
参数:
- group: String
说明:
TODO
public void save(RecipeOutput output, String name) @ L37
- 方法名:save
- 源码定位:L37
- 返回类型:void
- 修饰符:public
参数:
- output: RecipeOutput
- name: String
说明:
TODO
public void save(RecipeOutput output, ResourceKey<Recipe<?>> id) @ L41
- 方法名:save
- 源码定位:L41
- 返回类型:void
- 修饰符:public
参数:
- output: RecipeOutput
- id: ResourceKey<Recipe<?>>
说明:
TODO
代码
public class CustomCraftingRecipeBuilder {
private final RecipeCategory category;
private final RecipeUnlockAdvancementBuilder advancementBuilder = new RecipeUnlockAdvancementBuilder();
private @Nullable String group;
private final CustomCraftingRecipeBuilder.Factory factory;
public CustomCraftingRecipeBuilder(RecipeCategory category, CustomCraftingRecipeBuilder.Factory factory) {
this.category = category;
this.factory = factory;
}
public static CustomCraftingRecipeBuilder customCrafting(RecipeCategory category, CustomCraftingRecipeBuilder.Factory factory) {
return new CustomCraftingRecipeBuilder(category, factory);
}
public CustomCraftingRecipeBuilder unlockedBy(String name, Criterion<?> criterion) {
this.advancementBuilder.unlockedBy(name, criterion);
return this;
}
public CustomCraftingRecipeBuilder group(@Nullable String group) {
this.group = group;
return this;
}
public void save(RecipeOutput output, String name) {
this.save(output, ResourceKey.create(Registries.RECIPE, Identifier.parse(name)));
}
public void save(RecipeOutput output, ResourceKey<Recipe<?>> id) {
Recipe.CommonInfo commonInfo = RecipeBuilder.createCraftingCommonInfo(true);
CraftingRecipe.CraftingBookInfo bookInfo = RecipeBuilder.createCraftingBookInfo(this.category, this.group);
Recipe<?> recipe = this.factory.apply(commonInfo, bookInfo);
output.accept(id, recipe, this.advancementBuilder.build(output, id, this.category));
}
@FunctionalInterface
public interface Factory extends BiFunction<Recipe.CommonInfo, CraftingRecipe.CraftingBookInfo, Recipe<?>> {
}
}引用的其他类
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
RecipeBuilder.createCraftingBookInfo(), RecipeBuilder.createCraftingCommonInfo()
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
RecipeUnlockAdvancementBuilder
- 引用位置:
字段/构造调用 - 关联成员:
RecipeUnlockAdvancementBuilder()
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
Identifier.parse()
- 引用位置:
-
- 引用位置:
参数/方法调用 - 关联成员:
ResourceKey.create()
- 引用位置:
-
- 引用位置:
参数
- 引用位置: