CustomBossEvents.java
net.minecraft.server.bossevents.CustomBossEvents
信息
- 全限定名:net.minecraft.server.bossevents.CustomBossEvents
- 类型:public class
- 包:net.minecraft.server.bossevents
- 源码路径:src/main/java/net/minecraft/server/bossevents/CustomBossEvents.java
- 起始行号:L19
- 继承:SavedData
- 职责:
TODO
字段/常量
-
EVENTS_CODEC- 类型:
Codec<Map<Identifier,CustomBossEvent.Packed>> - 修饰符:
private static final - 源码定位:
L20 - 说明:
TODO
- 类型:
-
CODEC- 类型:
Codec<CustomBossEvents> - 修饰符:
private static final - 源码定位:
L21 - 说明:
TODO
- 类型:
-
TYPE- 类型:
SavedDataType<CustomBossEvents> - 修饰符:
public static final - 源码定位:
L26 - 说明:
TODO
- 类型:
-
events- 类型:
Map<Identifier,CustomBossEvent> - 修饰符:
private final - 源码定位:
L29 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
- 无
方法
下面的方法块按源码顺序生成。
public CustomBossEvent get(Identifier id) @ L31
- 方法名:get
- 源码定位:L31
- 返回类型:CustomBossEvent
- 修饰符:public
参数:
- id: Identifier
说明:
TODO
public CustomBossEvent create(RandomSource random, Identifier id, Component name) @ L35
- 方法名:create
- 源码定位:L35
- 返回类型:CustomBossEvent
- 修饰符:public
参数:
- random: RandomSource
- id: Identifier
- name: Component
说明:
TODO
public void remove(CustomBossEvent event) @ L42
- 方法名:remove
- 源码定位:L42
- 返回类型:void
- 修饰符:public
参数:
- event: CustomBossEvent
说明:
TODO
public Collection<Identifier> getIds() @ L48
- 方法名:getIds
- 源码定位:L48
- 返回类型:Collection
- 修饰符:public
参数:
- 无
说明:
TODO
public Collection<CustomBossEvent> getEvents() @ L52
- 方法名:getEvents
- 源码定位:L52
- 返回类型:Collection
- 修饰符:public
参数:
- 无
说明:
TODO
public void onPlayerConnect(ServerPlayer player) @ L56
- 方法名:onPlayerConnect
- 源码定位:L56
- 返回类型:void
- 修饰符:public
参数:
- player: ServerPlayer
说明:
TODO
public void onPlayerDisconnect(ServerPlayer player) @ L62
- 方法名:onPlayerDisconnect
- 源码定位:L62
- 返回类型:void
- 修饰符:public
参数:
- player: ServerPlayer
说明:
TODO
代码
public class CustomBossEvents extends SavedData {
private static final Codec<Map<Identifier, CustomBossEvent.Packed>> EVENTS_CODEC = Codec.unboundedMap(Identifier.CODEC, CustomBossEvent.Packed.CODEC);
private static final Codec<CustomBossEvents> CODEC = EVENTS_CODEC.xmap(events -> {
CustomBossEvents r = new CustomBossEvents();
events.forEach((id, packed) -> r.events.put(id, CustomBossEvent.load(UUID.randomUUID(), id, packed, r::setDirty)));
return r;
}, c -> Util.mapValues(c.events, CustomBossEvent::pack));
public static final SavedDataType<CustomBossEvents> TYPE = new SavedDataType<>(
Identifier.withDefaultNamespace("custom_boss_events"), CustomBossEvents::new, CODEC, DataFixTypes.SAVED_DATA_CUSTOM_BOSS_EVENTS
);
private final Map<Identifier, CustomBossEvent> events = Maps.newHashMap();
public @Nullable CustomBossEvent get(Identifier id) {
return this.events.get(id);
}
public CustomBossEvent create(RandomSource random, Identifier id, Component name) {
CustomBossEvent result = new CustomBossEvent(Mth.createInsecureUUID(random), id, name, this::setDirty);
this.events.put(id, result);
this.setDirty();
return result;
}
public void remove(CustomBossEvent event) {
if (this.events.remove(event.customId()) != null) {
this.setDirty();
}
}
public Collection<Identifier> getIds() {
return this.events.keySet();
}
public Collection<CustomBossEvent> getEvents() {
return this.events.values();
}
public void onPlayerConnect(ServerPlayer player) {
for (CustomBossEvent event : this.events.values()) {
event.onPlayerConnect(player);
}
}
public void onPlayerDisconnect(ServerPlayer player) {
for (CustomBossEvent event : this.events.values()) {
event.onPlayerDisconnect(player);
}
}
}引用的其他类
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数/字段/方法调用/返回值 - 关联成员:
Identifier.withDefaultNamespace()
- 引用位置:
-
- 引用位置:
参数/字段/方法调用/构造调用/返回值 - 关联成员:
CustomBossEvent(), CustomBossEvent.load()
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
Mth.createInsecureUUID()
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
Util.mapValues()
- 引用位置:
-
- 引用位置:
继承
- 引用位置:
-
- 引用位置:
字段
- 引用位置: