fix: 优化 blPlus 和 ssPlusN 函数中的提示信息逻辑,合并重复代码,确保对非Top1玩家的提示更加清晰
This commit is contained in:
parent
a08a1da3a4
commit
b5488ac165
@ -108,23 +108,24 @@ func blPlus(msg model.Message) (reply *model.Reply) {
|
||||
} else {
|
||||
resultStr.WriteString(fmt.Sprintf("注意:你最多只需要提升%d名就是%s区Top1了。\n", userInfo.CountryRank-1, userInfo.Country))
|
||||
}
|
||||
}
|
||||
//寻找leaderboard中排名为userInfo.CountryRank-N的玩家
|
||||
var targetPlayer beatleader.PlayerDataLite
|
||||
targetRank := userInfo.CountryRank - N
|
||||
if targetRank < 0 {
|
||||
targetRank = 1
|
||||
}
|
||||
for _, player := range leaderboard {
|
||||
if player.CountryRank == targetRank {
|
||||
targetPlayer = player
|
||||
break
|
||||
} else if userInfo.CountryRank != 1 {
|
||||
//寻找leaderboard中排名为userInfo.CountryRank-N的玩家
|
||||
var targetPlayer beatleader.PlayerDataLite
|
||||
targetRank := userInfo.CountryRank - N
|
||||
if targetRank < 0 {
|
||||
targetRank = 1
|
||||
}
|
||||
for _, player := range leaderboard {
|
||||
if player.CountryRank == targetRank {
|
||||
targetPlayer = player
|
||||
break
|
||||
}
|
||||
}
|
||||
if isPlus {
|
||||
resultStr.WriteString(fmt.Sprintf("您只需要再打出%.2fpp就能超越%s,达到%s区第%d名。", targetPlayer.PP-userInfo.PP, targetPlayer.Name, userInfo.Country, targetPlayer.CountryRank))
|
||||
} else {
|
||||
resultStr.WriteString(fmt.Sprintf("%s区的第%d名是%s,对方只需要再打出%.2fpp就能超过你。", userInfo.Country, targetPlayer.CountryRank, targetPlayer.Name, userInfo.PP-targetPlayer.PP))
|
||||
}
|
||||
}
|
||||
if isPlus {
|
||||
resultStr.WriteString(fmt.Sprintf("您只需要再打出%.2fpp就能超越%s,达到%s区第%d名。", targetPlayer.PP-userInfo.PP, targetPlayer.Name, userInfo.Country, targetPlayer.CountryRank))
|
||||
} else {
|
||||
resultStr.WriteString(fmt.Sprintf("%s区的第%d名是%s,对方只需要再打出%.2fpp就能超过你。", userInfo.Country, targetPlayer.CountryRank, targetPlayer.Name, userInfo.PP-targetPlayer.PP))
|
||||
}
|
||||
return &model.Reply{
|
||||
ReplyMsg: resultStr.String(),
|
||||
|
@ -106,23 +106,24 @@ func ssPlusN(msg model.Message) (reply *model.Reply) {
|
||||
} else {
|
||||
resultStr.WriteString(fmt.Sprintf("注意:你最多只需要提升%d名就是%s区Top1了。\n", userInfo.CountryRank-1, userInfo.Country))
|
||||
}
|
||||
}
|
||||
//寻找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 == targetRank {
|
||||
targetPlayer = player
|
||||
break
|
||||
} else if userInfo.CountryRank != 1 {
|
||||
//寻找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 == targetRank {
|
||||
targetPlayer = player
|
||||
break
|
||||
}
|
||||
}
|
||||
if isPlus {
|
||||
resultStr.WriteString(fmt.Sprintf("您只需要再打出%.2fpp就能超越%s,达到%s区第%d名。", targetPlayer.PP-userInfo.PP, targetPlayer.Name, userInfo.Country, targetPlayer.CountryRank))
|
||||
} else {
|
||||
resultStr.WriteString(fmt.Sprintf("%s区的第%d名是%s,对方只需要再打出%.2fpp就能超过你。", userInfo.Country, targetPlayer.CountryRank, targetPlayer.Name, userInfo.PP-targetPlayer.PP))
|
||||
}
|
||||
}
|
||||
if isPlus {
|
||||
resultStr.WriteString(fmt.Sprintf("您只需要再打出%.2fpp就能超越%s,达到%s区第%d名。", targetPlayer.PP-userInfo.PP, targetPlayer.Name, userInfo.Country, targetPlayer.CountryRank))
|
||||
} else {
|
||||
resultStr.WriteString(fmt.Sprintf("%s区的第%d名是%s,对方只需要再打出%.2fpp就能超过你。", userInfo.Country, targetPlayer.CountryRank, targetPlayer.Name, userInfo.PP-targetPlayer.PP))
|
||||
}
|
||||
return &model.Reply{
|
||||
ReplyMsg: resultStr.String(),
|
||||
|
Loading…
x
Reference in New Issue
Block a user