摄像机与实体追踪
本页面记录了 速度计 (Speedometer) 在摄像机视角或玩家状态改变时如何安全解析目标实体。
📊 实体追踪信息框
| 视角上下文 | 计算评估目标 | 速度数据来源 |
|---|---|---|
| 普通第一/第三人称 | 玩家实体 (client.player) | entity.getKnownSpeed() |
| 旁观模式(自由飞行) | 旁观相机实体 | entity.getKnownSpeed() |
| 旁观模式(骑乘/附身生物) | 目标生物/玩家 | entity.getKnownSpeed() |
| 骑乘船/马/矿车 | 载具实体 | entity.getKnownSpeed() |
| 实体空指针安全 | 回退零值字符串 | Speed: 0.00 b/s (H: 0.00, V: 0.00) |
🔄 实体解析逻辑
java
Entity entity = client.getCameraEntity();
if (entity == null) {
entity = client.player;
}
if (entity == null) {
displayer.addLine("Speed: 0.00 b/s (H: 0.00, V: 0.00)");
return;
}client.getCameraEntity():检查当前活跃渲染视点的主查找。entity == null回退:若相机实体返回 null,代码回退至client.player。- 空指针安全保护:若相机实体与玩家均为空,Speedometer 安全输出零速度而不引发崩溃。
