fix: 修改 ssPlusN 函数中的排名提示信息,并优化目标玩家查找逻辑以确保排名不低于1
This commit is contained in:
parent
f21777c26f
commit
b608ab57f6
@ -76,7 +76,7 @@ func ssPlusN(msg model.Message) (reply model.Reply) {
|
||||
FromMsg: msg,
|
||||
}
|
||||
}
|
||||
resultStr.WriteString(fmt.Sprintf("您当前的区排名为:%d\n", userInfo.CountryRank))
|
||||
resultStr.WriteString(fmt.Sprintf("您当前的全区排名为:%d\n", userInfo.CountryRank))
|
||||
// 获取当前用户所在区对应+N位的玩家列表
|
||||
leaderboard, err := scoresaber.FetchCountryLeaderboard(userInfo.Country, userInfo.CountryRank-N, userInfo.ID)
|
||||
if err != nil {
|
||||
@ -91,8 +91,12 @@ func ssPlusN(msg model.Message) (reply model.Reply) {
|
||||
}
|
||||
//寻找leaderboard中排名为userInfo.CountryRank-N的玩家
|
||||
var targetPlayer scoresaber.PlayerData
|
||||
targetRank := userInfo.CountryRank - N
|
||||
if targetRank < 0 {
|
||||
targetRank = 1
|
||||
}
|
||||
for _, player := range leaderboard.Players {
|
||||
if player.CountryRank == userInfo.CountryRank-N {
|
||||
if player.CountryRank == targetRank {
|
||||
targetPlayer = player
|
||||
break
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user