From 33685fe36a61c70128374c5cd6ae20aeba5f23e0 Mon Sep 17 00:00:00 2001 From: wish Date: Sun, 23 Oct 2022 16:30:52 +1100 Subject: [PATCH] fix road leaderboard overflow --- server/channelserver/handlers_rengoku.go | 32 ++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/server/channelserver/handlers_rengoku.go b/server/channelserver/handlers_rengoku.go index d9f58df57..1a581e80c 100644 --- a/server/channelserver/handlers_rengoku.go +++ b/server/channelserver/handlers_rengoku.go @@ -136,6 +136,10 @@ func handleMsgMhfEnumerateRengokuRanking(s *Session, p mhfpacket.MHFPacket) { ps.Uint8(bf, s.Name, true) ps.Uint8(bf, "", false) } + if i > 100 { + i++ + continue + } scoreData.WriteUint32(i) scoreData.WriteUint32(score.MaxStagesMP) ps.Uint8(scoreData, score.Name, true) @@ -152,6 +156,10 @@ func handleMsgMhfEnumerateRengokuRanking(s *Session, p mhfpacket.MHFPacket) { ps.Uint8(bf, s.Name, true) ps.Uint8(bf, "", false) } + if i > 100 { + i++ + continue + } scoreData.WriteUint32(i) scoreData.WriteUint32(score.MaxPointsMP) ps.Uint8(scoreData, score.Name, true) @@ -169,6 +177,10 @@ func handleMsgMhfEnumerateRengokuRanking(s *Session, p mhfpacket.MHFPacket) { ps.Uint8(bf, s.Name, true) ps.Uint8(bf, "", false) } + if i > 100 { + i++ + continue + } scoreData.WriteUint32(i) scoreData.WriteUint32(score.MaxStagesMP) ps.Uint8(scoreData, score.Name, true) @@ -189,6 +201,10 @@ func handleMsgMhfEnumerateRengokuRanking(s *Session, p mhfpacket.MHFPacket) { ps.Uint8(bf, s.Name, true) ps.Uint8(bf, "", false) } + if i > 100 { + i++ + continue + } scoreData.WriteUint32(i) scoreData.WriteUint32(score.MaxPointsMP) ps.Uint8(scoreData, score.Name, true) @@ -208,6 +224,10 @@ func handleMsgMhfEnumerateRengokuRanking(s *Session, p mhfpacket.MHFPacket) { ps.Uint8(bf, s.Name, true) ps.Uint8(bf, "", false) } + if i > 100 { + i++ + continue + } scoreData.WriteUint32(i) scoreData.WriteUint32(score.MaxStagesSP) ps.Uint8(scoreData, score.Name, true) @@ -224,6 +244,10 @@ func handleMsgMhfEnumerateRengokuRanking(s *Session, p mhfpacket.MHFPacket) { ps.Uint8(bf, s.Name, true) ps.Uint8(bf, "", false) } + if i > 100 { + i++ + continue + } scoreData.WriteUint32(i) scoreData.WriteUint32(score.MaxPointsSP) ps.Uint8(scoreData, score.Name, true) @@ -241,6 +265,10 @@ func handleMsgMhfEnumerateRengokuRanking(s *Session, p mhfpacket.MHFPacket) { ps.Uint8(bf, s.Name, true) ps.Uint8(bf, "", false) } + if i > 100 { + i++ + continue + } scoreData.WriteUint32(i) scoreData.WriteUint32(score.MaxStagesSP) ps.Uint8(scoreData, score.Name, true) @@ -261,6 +289,10 @@ func handleMsgMhfEnumerateRengokuRanking(s *Session, p mhfpacket.MHFPacket) { ps.Uint8(bf, s.Name, true) ps.Uint8(bf, "", false) } + if i > 100 { + i++ + continue + } scoreData.WriteUint32(i) scoreData.WriteUint32(score.MaxPointsSP) ps.Uint8(scoreData, score.Name, true)