Commit 7c2f7dbeabaefae80776cc63aa7ce82454886aad
1 parent
bd19c0ca
Exists in
master
feat:机器人分数最低是报名分数
Showing
1 changed file
with
10 additions
and
22 deletions
Show diff stats
service/roomrank/room.go
| @@ -274,7 +274,10 @@ func TrySettleRoom(gameId string, room *Room, config *confroomrank.ActivityConfi | @@ -274,7 +274,10 @@ func TrySettleRoom(gameId string, room *Room, config *confroomrank.ActivityConfi | ||
| 274 | } | 274 | } |
| 275 | confRobot, hasConfRobot := config.Robot[roomPlayer.RobotConfigId] | 275 | confRobot, hasConfRobot := config.Robot[roomPlayer.RobotConfigId] |
| 276 | if hasConfRobot { | 276 | if hasConfRobot { |
| 277 | - roomPlayer.Score = GetRobotScoreCurrent(&confRobot, percent) | 277 | + roomPlayer.Score = GetRobotScoreCurrent(config, &confRobot, percent) |
| 278 | + if roomPlayer.Score < int64(confRobot.MinScore) { | ||
| 279 | + roomPlayer.Score = int64(confRobot.MinScore) | ||
| 280 | + } | ||
| 278 | } | 281 | } |
| 279 | } | 282 | } |
| 280 | 283 | ||
| @@ -317,11 +320,7 @@ func TryResetRobot(room *Room, config *confroomrank.ActivityConfig) { | @@ -317,11 +320,7 @@ func TryResetRobot(room *Room, config *confroomrank.ActivityConfig) { | ||
| 317 | } | 320 | } |
| 318 | confRobot, hasConfRobot := config.Robot[roomPlayer.RobotConfigId] | 321 | confRobot, hasConfRobot := config.Robot[roomPlayer.RobotConfigId] |
| 319 | if hasConfRobot { | 322 | if hasConfRobot { |
| 320 | - roomPlayer.Score = GetRobotScoreCurrent(&confRobot, percent) | ||
| 321 | - // 机器人分数最低是报名分数 | ||
| 322 | - if roomPlayer.Score < config.OpenScore { | ||
| 323 | - roomPlayer.Score = config.OpenScore | ||
| 324 | - } | 323 | + roomPlayer.Score = GetRobotScoreCurrent(config, &confRobot, percent) |
| 325 | } | 324 | } |
| 326 | } | 325 | } |
| 327 | } | 326 | } |
| @@ -333,23 +332,12 @@ func TryReSort(room *Room, config *confroomrank.ActivityConfig) { | @@ -333,23 +332,12 @@ func TryReSort(room *Room, config *confroomrank.ActivityConfig) { | ||
| 333 | } | 332 | } |
| 334 | 333 | ||
| 335 | // GetRobotScoreCurrent 从机器人配置里得到实时得分 | 334 | // GetRobotScoreCurrent 从机器人配置里得到实时得分 |
| 336 | -func GetRobotScoreCurrent(confRobot *confroomrank.RobotConfig, percent float64) int64 { | ||
| 337 | - score := (float64(confRobot.TotalScore-confRobot.MinScore) * | 335 | +func GetRobotScoreCurrent(config *confroomrank.ActivityConfig, confRobot *confroomrank.RobotConfig, percent float64) int64 { |
| 336 | + score := (float64(confRobot.TotalScore-int(config.OpenScore)) * | ||
| 338 | float64(100-confRobot.Range+rand.Intn(confRobot.Range*2)) / 100) * percent / 100 | 337 | float64(100-confRobot.Range+rand.Intn(confRobot.Range*2)) / 100) * percent / 100 |
| 339 | - result := int64(confRobot.MinScore) + int64(math.Ceil(score)) | ||
| 340 | - if result < int64(confRobot.MinScore) { | ||
| 341 | - result = int64(confRobot.MinScore) | ||
| 342 | - } | ||
| 343 | - return result | ||
| 344 | -} | ||
| 345 | - | ||
| 346 | -// GetRobotScoreMax 从机器人配置里得到最高分 | ||
| 347 | -func GetRobotScoreMax(confRobot *confroomrank.RobotConfig) int64 { | ||
| 348 | - score := float64(confRobot.TotalScore-confRobot.MinScore) * | ||
| 349 | - float64(100-confRobot.Range+rand.Intn(confRobot.Range*2)) / float64(100) | ||
| 350 | - result := int64(confRobot.MinScore) + int64(math.Ceil(score)) | ||
| 351 | - if result < int64(confRobot.MinScore) { | ||
| 352 | - result = int64(confRobot.MinScore) | 338 | + result := config.OpenScore + int64(math.Ceil(score)) |
| 339 | + if result < config.OpenScore { | ||
| 340 | + result = config.OpenScore | ||
| 353 | } | 341 | } |
| 354 | return result | 342 | return result |
| 355 | } | 343 | } |