TicketType.java

net.minecraft.server.level.TicketType

信息

  • 全限定名:net.minecraft.server.level.TicketType
  • 类型:public record
  • 包:net.minecraft.server.level
  • 源码路径:src/main/java/net/minecraft/server/level/TicketType.java
  • 起始行号:L10
  • 职责:

    TODO

字段/常量

  • NO_TIMEOUT

    • 类型: long
    • 修饰符: public static final
    • 源码定位: L11
    • 说明:

      TODO

  • FLAG_PERSIST

    • 类型: int
    • 修饰符: public static final
    • 源码定位: L12
    • 说明:

      TODO

  • FLAG_LOADING

    • 类型: int
    • 修饰符: public static final
    • 源码定位: L13
    • 说明:

      TODO

  • FLAG_SIMULATION

    • 类型: int
    • 修饰符: public static final
    • 源码定位: L14
    • 说明:

      TODO

  • FLAG_KEEP_DIMENSION_ACTIVE

    • 类型: int
    • 修饰符: public static final
    • 源码定位: L15
    • 说明:

      TODO

  • FLAG_CAN_EXPIRE_IF_UNLOADED

    • 类型: int
    • 修饰符: public static final
    • 源码定位: L16
    • 说明:

      TODO

  • PLAYER_SPAWN

    • 类型: TicketType
    • 修饰符: public static final
    • 源码定位: L17
    • 说明:

      TODO

  • SPAWN_SEARCH

    • 类型: TicketType
    • 修饰符: public static final
    • 源码定位: L18
    • 说明:

      TODO

  • DRAGON

    • 类型: TicketType
    • 修饰符: public static final
    • 源码定位: L19
    • 说明:

      TODO

  • PLAYER_LOADING

    • 类型: TicketType
    • 修饰符: public static final
    • 源码定位: L20
    • 说明:

      TODO

  • PLAYER_SIMULATION

    • 类型: TicketType
    • 修饰符: public static final
    • 源码定位: L21
    • 说明:

      TODO

  • FORCED

    • 类型: TicketType
    • 修饰符: public static final
    • 源码定位: L22
    • 说明:

      TODO

  • PORTAL

    • 类型: TicketType
    • 修饰符: public static final
    • 源码定位: L23
    • 说明:

      TODO

  • ENDER_PEARL

    • 类型: TicketType
    • 修饰符: public static final
    • 源码定位: L24
    • 说明:

      TODO

  • UNKNOWN

    • 类型: TicketType
    • 修饰符: public static final
    • 源码定位: L25
    • 说明:

      TODO

内部类/嵌套类型

  • net.minecraft.server.level.TicketType.Flags
    • 类型: annotation
    • 修饰符: public
    • 源码定位: L57
    • 说明:

      TODO

构造器

方法

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

private static TicketType register(String name, long timeout, int flags) @ L27

  • 方法名:register
  • 源码定位:L27
  • 返回类型:TicketType
  • 修饰符:private static

参数:

  • name: String
  • timeout: long
  • flags: int

说明:

TODO

public boolean persist() @ L31

  • 方法名:persist
  • 源码定位:L31
  • 返回类型:boolean
  • 修饰符:public

参数:

说明:

TODO

public boolean doesLoad() @ L35

  • 方法名:doesLoad
  • 源码定位:L35
  • 返回类型:boolean
  • 修饰符:public

参数:

说明:

TODO

public boolean doesSimulate() @ L39

  • 方法名:doesSimulate
  • 源码定位:L39
  • 返回类型:boolean
  • 修饰符:public

参数:

说明:

TODO

public boolean shouldKeepDimensionActive() @ L43

  • 方法名:shouldKeepDimensionActive
  • 源码定位:L43
  • 返回类型:boolean
  • 修饰符:public

参数:

说明:

TODO

public boolean canExpireIfUnloaded() @ L47

  • 方法名:canExpireIfUnloaded
  • 源码定位:L47
  • 返回类型:boolean
  • 修饰符:public

参数:

说明:

TODO

public boolean hasTimeout() @ L51

  • 方法名:hasTimeout
  • 源码定位:L51
  • 返回类型:boolean
  • 修饰符:public

参数:

说明:

TODO

代码

public record TicketType(long timeout, @TicketType.Flags int flags) {
    public static final long NO_TIMEOUT = 0L;
    public static final int FLAG_PERSIST = 1;
    public static final int FLAG_LOADING = 2;
    public static final int FLAG_SIMULATION = 4;
    public static final int FLAG_KEEP_DIMENSION_ACTIVE = 8;
    public static final int FLAG_CAN_EXPIRE_IF_UNLOADED = 16;
    public static final TicketType PLAYER_SPAWN = register("player_spawn", 20L, 2);
    public static final TicketType SPAWN_SEARCH = register("spawn_search", 1L, 2);
    public static final TicketType DRAGON = register("dragon", 0L, 6);
    public static final TicketType PLAYER_LOADING = register("player_loading", 0L, 2);
    public static final TicketType PLAYER_SIMULATION = register("player_simulation", 0L, 12);
    public static final TicketType FORCED = register("forced", 0L, 15);
    public static final TicketType PORTAL = register("portal", 300L, 15);
    public static final TicketType ENDER_PEARL = register("ender_pearl", 40L, 14);
    public static final TicketType UNKNOWN = register("unknown", 1L, 18);
 
    private static TicketType register(String name, long timeout, @TicketType.Flags int flags) {
        return Registry.register(BuiltInRegistries.TICKET_TYPE, name, new TicketType(timeout, flags));
    }
 
    public boolean persist() {
        return (this.flags & 1) != 0;
    }
 
    public boolean doesLoad() {
        return (this.flags & 2) != 0;
    }
 
    public boolean doesSimulate() {
        return (this.flags & 4) != 0;
    }
 
    public boolean shouldKeepDimensionActive() {
        return (this.flags & 8) != 0;
    }
 
    public boolean canExpireIfUnloaded() {
        return (this.flags & 16) != 0;
    }
 
    public boolean hasTimeout() {
        return this.timeout != 0L;
    }
 
    @Retention(RetentionPolicy.CLASS)
    @Target({ElementType.FIELD, ElementType.PARAMETER, ElementType.LOCAL_VARIABLE, ElementType.METHOD, ElementType.TYPE_USE})
    public @interface Flags {
    }
}

引用的其他类

  • Registry
    • 引用位置: 方法调用
    • 关联成员: Registry.register()