mirror of
https://github.com/Team254/cheesy-arena-lite.git
synced 2026-03-09 13:46:44 -04:00
Show series wins in final score view.
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
package field
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/Team254/cheesy-arena/game"
|
||||
"github.com/Team254/cheesy-arena/led"
|
||||
"github.com/Team254/cheesy-arena/model"
|
||||
@@ -156,6 +157,36 @@ func (arena *Arena) generateRealtimeScoreMessage() interface{} {
|
||||
}
|
||||
|
||||
func (arena *Arena) generateScorePostedMessage() interface{} {
|
||||
// For elimination matches, summarize the state of the series.
|
||||
var seriesStatus, seriesLeader string
|
||||
if arena.SavedMatch.Type == "elimination" {
|
||||
matches, _ := arena.Database.GetMatchesByElimRoundGroup(arena.SavedMatch.ElimRound, arena.SavedMatch.ElimGroup)
|
||||
var redWins, blueWins int
|
||||
for _, match := range matches {
|
||||
if match.Winner == "R" {
|
||||
redWins++
|
||||
} else if match.Winner == "B" {
|
||||
blueWins++
|
||||
}
|
||||
}
|
||||
|
||||
if redWins == 2 {
|
||||
seriesStatus = fmt.Sprintf("Red Wins Series %d-%d", redWins, blueWins)
|
||||
seriesLeader = "red"
|
||||
} else if blueWins == 2 {
|
||||
seriesStatus = fmt.Sprintf("Blue Wins Series %d-%d", blueWins, redWins)
|
||||
seriesLeader = "blue"
|
||||
} else if redWins > blueWins {
|
||||
seriesStatus = fmt.Sprintf("Red Leads Series %d-%d", redWins, blueWins)
|
||||
seriesLeader = "red"
|
||||
} else if blueWins > redWins {
|
||||
seriesStatus = fmt.Sprintf("Blue Leads Series %d-%d", blueWins, redWins)
|
||||
seriesLeader = "blue"
|
||||
} else {
|
||||
seriesStatus = fmt.Sprintf("Series Tied %d-%d", redWins, blueWins)
|
||||
}
|
||||
}
|
||||
|
||||
return &struct {
|
||||
MatchType string
|
||||
Match *model.Match
|
||||
@@ -165,10 +196,12 @@ func (arena *Arena) generateScorePostedMessage() interface{} {
|
||||
BlueFouls []game.Foul
|
||||
RedCards map[string]string
|
||||
BlueCards map[string]string
|
||||
SeriesStatus string
|
||||
SeriesLeader string
|
||||
}{arena.SavedMatch.CapitalizedType(), arena.SavedMatch, arena.SavedMatchResult.RedScoreSummary(),
|
||||
arena.SavedMatchResult.BlueScoreSummary(), populateFoulDescriptions(arena.SavedMatchResult.RedScore.Fouls),
|
||||
populateFoulDescriptions(arena.SavedMatchResult.BlueScore.Fouls), arena.SavedMatchResult.RedCards,
|
||||
arena.SavedMatchResult.BlueCards}
|
||||
arena.SavedMatchResult.BlueCards, seriesStatus, seriesLeader}
|
||||
}
|
||||
|
||||
func (arena *Arena) generateScoringStatusMessage() interface{} {
|
||||
|
||||
@@ -362,6 +362,23 @@ html {
|
||||
[data-checked=false] {
|
||||
color: #e00;
|
||||
}
|
||||
.final-footer {
|
||||
float: left;
|
||||
width: 33.3%;
|
||||
}
|
||||
#finalSeriesStatus {
|
||||
text-align: center;
|
||||
min-height: 1px;
|
||||
}
|
||||
#finalSeriesStatus[data-leader="red"] {
|
||||
color: #f66;
|
||||
}
|
||||
#finalSeriesStatus[data-leader="blue"] {
|
||||
color: #39f;
|
||||
}
|
||||
#finalMatchName {
|
||||
text-align: right;
|
||||
}
|
||||
#sponsor {
|
||||
position: fixed;
|
||||
width: 1000px;
|
||||
|
||||
@@ -145,6 +145,8 @@ var handleScorePosted = function(data) {
|
||||
$("#" + blueSide + "FinalAutoQuest").attr("data-checked", data.BlueScoreSummary.AutoQuest);
|
||||
$("#" + blueSide + "FinalFaceTheBoss").html(data.BlueScoreSummary.FaceTheBoss ? "✔" : "✘");
|
||||
$("#" + blueSide + "FinalFaceTheBoss").attr("data-checked", data.BlueScoreSummary.FaceTheBoss);
|
||||
$("#finalSeriesStatus").text(data.SeriesStatus);
|
||||
$("#finalSeriesStatus").attr("data-leader", data.SeriesLeader);
|
||||
$("#finalMatchName").text(data.MatchType + " " + data.Match.DisplayName);
|
||||
};
|
||||
|
||||
|
||||
@@ -142,8 +142,9 @@
|
||||
</span>
|
||||
</div>
|
||||
<div id="finalEventMatchInfo">
|
||||
<span>{{.EventSettings.Name}} 2018</span>
|
||||
<span class="pull-right" id="finalMatchName"></span>
|
||||
<div class="final-footer">{{.EventSettings.Name}} 2018</div>
|
||||
<div class="final-footer" id="finalSeriesStatus"> </div>
|
||||
<div class="final-footer" id="finalMatchName"> </div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="sponsor" class="carousel slide">
|
||||
|
||||
Reference in New Issue
Block a user