Theseus 模组文档
API 参考 / 事件系统

GameStartEvent


一局游玩开始时投递一次:谱面已加载完成、音乐启动。宿主在同一帧先投递 ChartLoadEvent,紧接着投递本事件。

方法速览

方法用途
context()本局游玩状态的只读快照

context()

java
public GameplayContext context();

行为:返回本局游玩状态只读快照。可读 chartTitle() / chartDifficulty() / totalNoteCount() / combo() 等;快照反映投递瞬间的状态。不要长期持有快照,也不要写入。

示例:

java
ctx.eventBus().subscribe(GameStartEvent.class, event -> {
    GameplayContext snapshot = event.context();
    judgedInThisRun = 0;
    ctx.getLogger().info("本局开始:" + snapshot.chartTitle()
            + "(难度 " + snapshot.chartDifficulty() + ")");
});

完整签名

java
public class GameStartEvent extends Event {
    public GameStartEvent(GameplayContext context);
    public GameplayContext context();
}

行为核验:投递时本局已经在跑,「取消开始」没有可执行的默认动作,因此不可取消,setResult 无效。

稳定性:2.0 起冻结,2.x 内只增不破。