RealmsSlot.java

com.mojang.realmsclient.dto.RealmsSlot

信息

  • 全限定名:com.mojang.realmsclient.dto.RealmsSlot
  • 类型:public final class
  • 包:com.mojang.realmsclient.dto
  • 源码路径:src/main/java/com/mojang/realmsclient/dto/RealmsSlot.java
  • 起始行号:L15
  • 实现:ReflectionBasedSerialization
  • 职责:

    TODO

字段/常量

  • slotId

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

      TODO

  • options

    • 类型: RealmsWorldOptions
    • 修饰符: public
    • 源码定位: L18
    • 说明:

      TODO

  • settings

    • 类型: List<RealmsSetting>
    • 修饰符: public
    • 源码定位: L21
    • 说明:

      TODO

内部类/嵌套类型

  • com.mojang.realmsclient.dto.RealmsSlot.RealmsWorldOptionsJsonAdapter
    • 类型: class
    • 修饰符: private static
    • 源码定位: L43
    • 说明:

      TODO

构造器

public RealmsSlot(int slotId, RealmsWorldOptions options, List<RealmsSetting> settings) @ L24

  • 构造器名:RealmsSlot
  • 源码定位:L24
  • 修饰符:public

参数:

  • slotId: int
  • options: RealmsWorldOptions
  • settings: List

说明:

TODO

方法

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

public static RealmsSlot defaults(int slotId) @ L30

  • 方法名:defaults
  • 源码定位:L30
  • 返回类型:RealmsSlot
  • 修饰符:public static

参数:

  • slotId: int

说明:

TODO

public RealmsSlot copy() @ L34

  • 方法名:copy
  • 源码定位:L34
  • 返回类型:RealmsSlot
  • 修饰符:public

参数:

说明:

TODO

public boolean isHardcore() @ L38

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

参数:

说明:

TODO

代码

@OnlyIn(Dist.CLIENT)
public final class RealmsSlot implements ReflectionBasedSerialization {
    @SerializedName("slotId")
    public int slotId;
    @SerializedName("options")
    @JsonAdapter(RealmsSlot.RealmsWorldOptionsJsonAdapter.class)
    public RealmsWorldOptions options;
    @SerializedName("settings")
    public List<RealmsSetting> settings;
 
    public RealmsSlot(int slotId, RealmsWorldOptions options, List<RealmsSetting> settings) {
        this.slotId = slotId;
        this.options = options;
        this.settings = settings;
    }
 
    public static RealmsSlot defaults(int slotId) {
        return new RealmsSlot(slotId, RealmsWorldOptions.createEmptyDefaults(), List.of(RealmsSetting.hardcoreSetting(false)));
    }
 
    public RealmsSlot copy() {
        return new RealmsSlot(this.slotId, this.options.copy(), new ArrayList<>(this.settings));
    }
 
    public boolean isHardcore() {
        return RealmsSetting.isHardcore(this.settings);
    }
 
    @OnlyIn(Dist.CLIENT)
    private static class RealmsWorldOptionsJsonAdapter extends TypeAdapter<RealmsWorldOptions> {
        public void write(JsonWriter jsonWriter, RealmsWorldOptions realmsSlotOptions) throws IOException {
            jsonWriter.jsonValue(new GuardedSerializer().toJson(realmsSlotOptions));
        }
 
        public RealmsWorldOptions read(JsonReader jsonReader) throws IOException {
            String json = jsonReader.nextString();
            return RealmsWorldOptions.parse(new GuardedSerializer(), json);
        }
    }
}

引用的其他类

  • GuardedSerializer

    • 引用位置: 构造调用
    • 关联成员: GuardedSerializer()
  • RealmsSetting

    • 引用位置: 参数/字段/方法调用
    • 关联成员: RealmsSetting.hardcoreSetting(), RealmsSetting.isHardcore()
  • RealmsWorldOptions

    • 引用位置: 参数/字段/方法调用
    • 关联成员: RealmsWorldOptions.createEmptyDefaults(), RealmsWorldOptions.parse()
  • ReflectionBasedSerialization

    • 引用位置: 实现