diff options
| author | Florian Fischer <florian.fl.fischer@fau.de> | 2017-02-10 14:35:39 +0100 |
|---|---|---|
| committer | Florian Fischer <florian.fl.fischer@fau.de> | 2017-02-10 14:35:39 +0100 |
| commit | 23b75df0c9176d3c5dd39246283e45ad014928d8 (patch) | |
| tree | 3c12177ab1be49e7318ffad5ba05c233d0ad4af4 | |
| parent | 9ca84462fb49f4b32699c649fd649bb32dfb3f91 (diff) | |
| download | goffel-23b75df0c9176d3c5dd39246283e45ad014928d8.tar.gz goffel-23b75df0c9176d3c5dd39246283e45ad014928d8.zip | |
interactive: print every player's result
| -rw-r--r-- | uis/interactive.go | 35 |
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": |
