API 参考 / 事件系统
NoteJudgedEvent
想先跑起来?
这一页是签名与行为参考。判定结果的只读快照,适合做统计与联动。直接做一遍:教程 · 订阅游玩事件。
一个音符完成判定时投递(含长音符结尾判定)。投递时判定已经落地(已计分、已更新连击),快照是「判定后」状态。
方法速览
| 方法 | 用途 |
|---|---|
judgeResult() | 本次判定结果 |
context() | 判定后的游玩状态只读快照 |
judgeResult()
java
public JudgeResult judgeResult();行为:返回本次判定结果(note()、judgment()、judgeTime()、isHoldEnd())。注意访问器名不是 result():基类的 result() 是 final,承载总线结果语义,子类无法覆盖。
context()
java
public GameplayContext context();行为:返回判定后的状态快照(combo() / score() / accuracy() 均已包含本次判定)。
示例
java
ctx.eventBus().subscribe(NoteJudgedEvent.class, EventPriority.LOW, event -> {
if (event.judgeResult().isHoldEnd()) {
holdEndCount++;
}
peakCombo = Math.max(peakCombo, event.context().maxCombo());
});完整签名
java
public class NoteJudgedEvent extends Event {
public NoteJudgedEvent(JudgeResult judgeResult, GameplayContext context);
public JudgeResult judgeResult();
public GameplayContext context();
}行为核验:投递时判定已成事实,不可取消;想干预判定请用判定调整器或自定义判定等级,不要用本事件。
稳定性:2.0 起冻结,2.x 内只增不破。