TutorialSteps.java

net.minecraft.client.tutorial.TutorialSteps

信息

  • 全限定名:net.minecraft.client.tutorial.TutorialSteps
  • 类型:public enum
  • 包:net.minecraft.client.tutorial
  • 源码路径:src/main/java/net/minecraft/client/tutorial/TutorialSteps.java
  • 起始行号:L8
  • 职责:

    TODO

字段/常量

  • new, new, new, new, new, new

    • 类型: MOVEMENT(,MovementTutorialStepInstance ::
    • 修饰符: package-private
    • 源码定位: L9
    • 说明:

      TODO

  • name

    • 类型: String
    • 修饰符: private final
    • 源码定位: L16
    • 说明:

      TODO

  • constructor

    • 类型: Function<Tutorial,?extends TutorialStepInstance>
    • 修饰符: private final
    • 源码定位: L17
    • 说明:

      TODO

内部类/嵌套类型

构造器

private TutorialSteps(String name, Function<Tutorial,T> constructor) @ L19

  • 构造器名:TutorialSteps
  • 源码定位:L19
  • 修饰符:private

参数:

  • name: String
  • constructor: Function<Tutorial,T>

说明:

TODO

方法

下面的方法块按源码顺序生成。

public TutorialStepInstance create(Tutorial tutorial) @ L24

  • 方法名:create
  • 源码定位:L24
  • 返回类型:TutorialStepInstance
  • 修饰符:public

参数:

  • tutorial: Tutorial

说明:

TODO

public String getName() @ L28

  • 方法名:getName
  • 源码定位:L28
  • 返回类型:String
  • 修饰符:public

参数:

说明:

TODO

public static TutorialSteps getByName(String name) @ L32

  • 方法名:getByName
  • 源码定位:L32
  • 返回类型:TutorialSteps
  • 修饰符:public static

参数:

  • name: String

说明:

TODO

代码

@OnlyIn(Dist.CLIENT)
public enum TutorialSteps {
    MOVEMENT("movement", MovementTutorialStepInstance::new),
    FIND_TREE("find_tree", FindTreeTutorialStepInstance::new),
    PUNCH_TREE("punch_tree", PunchTreeTutorialStepInstance::new),
    OPEN_INVENTORY("open_inventory", OpenInventoryTutorialStep::new),
    CRAFT_PLANKS("craft_planks", CraftPlanksTutorialStep::new),
    NONE("none", CompletedTutorialStepInstance::new);
 
    private final String name;
    private final Function<Tutorial, ? extends TutorialStepInstance> constructor;
 
    private <T extends TutorialStepInstance> TutorialSteps(String name, Function<Tutorial, T> constructor) {
        this.name = name;
        this.constructor = constructor;
    }
 
    public TutorialStepInstance create(Tutorial tutorial) {
        return this.constructor.apply(tutorial);
    }
 
    public String getName() {
        return this.name;
    }
 
    public static TutorialSteps getByName(String name) {
        for (TutorialSteps step : values()) {
            if (step.name.equals(name)) {
                return step;
            }
        }
 
        return NONE;
    }
}

引用的其他类