Commit 1f50c8d9638b387d11c7d2c13e5c552bd544a4b8
1 parent
46e54ae7
Exists in
master
fix:房间排行最大评级修改
Showing
2 changed files
with
19 additions
and
5 deletions
Show diff stats
service/roomrank/dto-player.go
| ... | ... | @@ -57,10 +57,10 @@ func (d *Player) Init(uid int64, topType int) { |
| 57 | 57 | d.CreateTime = lxtime.NowUninx() |
| 58 | 58 | } |
| 59 | 59 | |
| 60 | -func (d *Player) AddUserScore(count int) { | |
| 60 | +func (d *Player) AddUserScore(count int, userClassMax int) { | |
| 61 | 61 | d.UserScore += count |
| 62 | 62 | userScoreMin := UserClassMin * 10 |
| 63 | - userScoreMax := UserClassMax*10 + 20 | |
| 63 | + userScoreMax := userClassMax*10 + 20 | |
| 64 | 64 | if d.UserScore < userScoreMin { |
| 65 | 65 | d.UserScore = userScoreMin |
| 66 | 66 | } |
| ... | ... | @@ -71,8 +71,8 @@ func (d *Player) AddUserScore(count int) { |
| 71 | 71 | if d.UserClass < UserClassMin { |
| 72 | 72 | d.UserClass = UserClassMin |
| 73 | 73 | } |
| 74 | - if d.UserClass > UserClassMax { | |
| 75 | - d.UserClass = UserClassMax | |
| 74 | + if d.UserClass > userClassMax { | |
| 75 | + d.UserClass = userClassMax | |
| 76 | 76 | } |
| 77 | 77 | } |
| 78 | 78 | ... | ... |
service/roomrank/logic.go
| ... | ... | @@ -42,6 +42,19 @@ func GetTimeEnd(activityTime int64, releaseTime string) time.Time { |
| 42 | 42 | return dt |
| 43 | 43 | } |
| 44 | 44 | |
| 45 | +func GetUserClassMax(config *confroomrank.ActivityConfig) int { | |
| 46 | + c := 0 | |
| 47 | + for _, roomConfig := range config.Room { | |
| 48 | + if roomConfig.UserClass > c { | |
| 49 | + c = roomConfig.UserClass | |
| 50 | + } | |
| 51 | + } | |
| 52 | + if c < 1 { | |
| 53 | + c = 1 | |
| 54 | + } | |
| 55 | + return c | |
| 56 | +} | |
| 57 | + | |
| 45 | 58 | // TrySettle 尝试判断结算 |
| 46 | 59 | func TrySettle(gameId string, topType int, player *Player) (hasChange bool) { |
| 47 | 60 | hasChange = false |
| ... | ... | @@ -95,7 +108,8 @@ func TrySettle(gameId string, topType int, player *Player) (hasChange bool) { |
| 95 | 108 | player.SettleAward = confAward |
| 96 | 109 | } |
| 97 | 110 | if len(confRoom.SettleScores) > rankIndex { |
| 98 | - player.AddUserScore(confRoom.SettleScores[rankIndex]) | |
| 111 | + userClassMax := GetUserClassMax(confActivity) | |
| 112 | + player.AddUserScore(confRoom.SettleScores[rankIndex], userClassMax) | |
| 99 | 113 | player.SettleUserClass = player.UserClass |
| 100 | 114 | } |
| 101 | 115 | if len(confRoom.SettleUserType) > rankIndex { | ... | ... |