aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fl.fischer@fau.de>2017-02-10 14:35:39 +0100
committerFlorian Fischer <florian.fl.fischer@fau.de>2017-02-10 14:35:39 +0100
commit23b75df0c9176d3c5dd39246283e45ad014928d8 (patch)
tree3c12177ab1be49e7318ffad5ba05c233d0ad4af4
parent9ca84462fb49f4b32699c649fd649bb32dfb3f91 (diff)
downloadgoffel-23b75df0c9176d3c5dd39246283e45ad014928d8.tar.gz
goffel-23b75df0c9176d3c5dd39246283e45ad014928d8.zip
interactive: print every player's result
-rw-r--r--uis/interactive.go35
1 files changed, 22 insertions, 13 deletions
diff --git a/uis/interactive.go b/uis/interactive.go
index 1bbcc7f..f742d9a 100644
--- a/uis/interactive.go
+++ b/uis/interactive.go
@@ -48,26 +48,32 @@ func (ui *Interactive) Round(r int) error {
}
func (ui *Interactive) BroadcastWinner() {
- w := []intPlayer{}
- s := 0
+ fmt.Println("Fin!")
+ winners := []intPlayer{}
+ max := 0
- for _, p := range ui.players {
- t := p.score.Score()
- if t > s || len(w) == 0 {
- s = t
- w = []intPlayer{p}
- } else if t == s {
- w = append(w, p)
+ for _, player := range ui.players {
+ t := player.score.Score()
+ if t > max || len(winners) == 0 {
+ for _, winner := range winners {
+ fmt.Printf("\t%v scored %v points\n", winner.name, max)
+ }
+ max = t
+ winners = []intPlayer{player}
+ } else if t == max {
+ winners = append(winners, player)
+ } else {
+ fmt.Printf("\t%v scored %v points\n", player.name, t)
}
}
- if len(w) == 1 {
+ if len(winners) == 1 {
fmt.Println("The Winner is:")
} else {
fmt.Println("The Winners are:")
}
- for _, p := range w {
- fmt.Println(p.name, "with", p.score.Score(), "points")
+ for _, winner := range winners {
+ fmt.Printf("\t%v with %v points\n", winner.name, max)
}
}
@@ -93,7 +99,10 @@ func turn(p *intPlayer) {
}
switch cmd.Cmd {
case "h":
- print(CmdHelp(cmd.Argv[0]))
+ fmt.Println()
+ for _, helpLine := range CmdHelp(cmd.Argv[0]) {
+ fmt.Println(helpLine)
+ }
case "p":
fmt.Println(p.score)
case "d":