# 段位系统
# 一、介绍
该模块提供玩家当前赛季和历史赛季的段位和战绩相关信息,以及游戏策划配置的所有段位信息的列表
# 二、使用
// 先在头部引入段位模块
import { ladderSystem } from "@timi/mogs-sdk";
1
2
2
1. 获取当前赛季的段位和战绩相关信息
每次进入游戏会进行数据的初始化
const ladderInfo = await ladderSystem.ladderInfo;
console.log(ladderInfo.ladderDetail);
1
2
2
2. 获取历史赛季的段位和战绩相关信息
每次进入游戏会进行数据的初始化
const historyLadderInfo = await ladderSystem.historyLadderInfo;
historyLadderInfo.forEach((item) => {
console.log(item.ladderDetail);
})
1
2
3
4
2
3
4
3. 获取所有段位相关信息
也就是上面提到的游戏策划配置好的所有段位信息
const ladderDetailList = await ladderSystem.ladderDetailList;
ladderDetailList.forEach((item) => {
console.log('达到此段位需要多少分?', item.currentLadderScore);
console.log('此段位和下个段位之间的分数段:', item.ladderScoreRange);
})
1
2
3
4
5
2
3
4
5
5. 汇报战绩
每次结束游戏后,需主动调用这个方法汇报战绩
await ladderSystem.reportRecord({
isWin: 1, // 输赢
battleStartTimestamp: xxxx, // 游戏的开始时间戳
fail(err){
console.error(err);
},
success(res){
console.log('reportRecord',res);
},
complete(){
console.log('complete');
}
});
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
5. 监听段位和战绩信息的变化
每次游戏结束汇报战绩之后,都会触发这个事件通知
ladderSystem.onLadderInfoChange((ev) => {
console.log('最新的信息:', ev.currentValue);
});
1
2
3
2
3
6. 监听历史段位信息的变化
汇报战绩后,如果赛季发生了切换,会触发这个事件通知(不汇报战绩的话,不会主动触发赛季变化通知)
ladderSystem.onHistoryLadderInfoChange((ev) => {
console.log('赛季切换了,最新的历史赛季列表为:', ev.currentValue);
});
1
2
3
2
3
TIP
更多段位模块的api请参考段位模块