DebugEntrySpawnCounts.java
net.minecraft.client.gui.components.debug.DebugEntrySpawnCounts
信息
- 全限定名:net.minecraft.client.gui.components.debug.DebugEntrySpawnCounts
- 类型:public class
- 包:net.minecraft.client.gui.components.debug
- 源码路径:src/main/java/net/minecraft/client/gui/components/debug/DebugEntrySpawnCounts.java
- 起始行号:L19
- 实现:DebugScreenEntry
- 职责:
TODO
字段/常量
- 无
内部类/嵌套类型
- 无
构造器
- 无
方法
下面的方法块按源码顺序生成。
public void display(DebugScreenDisplayer displayer, Level serverOrClientLevel, LevelChunk clientChunk, LevelChunk serverChunk) @ L20
- 方法名:display
- 源码定位:L20
- 返回类型:void
- 修饰符:public
参数:
- displayer: DebugScreenDisplayer
- serverOrClientLevel: Level
- clientChunk: LevelChunk
- serverChunk: LevelChunk
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public class DebugEntrySpawnCounts implements DebugScreenEntry {
@Override
public void display(DebugScreenDisplayer displayer, @Nullable Level serverOrClientLevel, @Nullable LevelChunk clientChunk, @Nullable LevelChunk serverChunk) {
Minecraft minecraft = Minecraft.getInstance();
Entity entity = minecraft.getCameraEntity();
ServerLevel serverLevel = serverOrClientLevel instanceof ServerLevel ? (ServerLevel)serverOrClientLevel : null;
if (entity != null && serverLevel != null) {
ServerChunkCache chunkSource = serverLevel.getChunkSource();
NaturalSpawner.SpawnState lastSpawnState = chunkSource.getLastSpawnState();
if (lastSpawnState != null) {
Object2IntMap<MobCategory> mobCategoryCounts = lastSpawnState.getMobCategoryCounts();
int chunkCount = lastSpawnState.getSpawnableChunkCount();
displayer.addLine(
"SC: "
+ chunkCount
+ ", "
+ Stream.of(MobCategory.values())
.map(c -> Character.toUpperCase(c.getName().charAt(0)) + ": " + mobCategoryCounts.getInt(c))
.collect(Collectors.joining(", "))
);
}
}
}
}引用的其他类
-
- 引用位置:
方法调用 - 关联成员:
Minecraft.getInstance()
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
实现
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
MobCategory.values()
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数
- 引用位置: