MCPcopy
hub / github.com/cli/cli / drawGarden

Function drawGarden

pkg/cmd/repo/garden/garden.go:412–440  ·  view source on GitHub ↗
(io *iostreams.IOStreams, garden [][]*Cell, player *Player)

Source from the content-addressed store, hash-verified

410}
411
412func drawGarden(io *iostreams.IOStreams, garden [][]*Cell, player *Player) {
413 out := io.Out
414 cs := io.ColorScheme()
415
416 fmt.Fprint(out, "\033[?25l") // hide cursor. it needs to be restored at command exit.
417 sl := ""
418 for y, gardenRow := range garden {
419 for x, gardenCell := range gardenRow {
420 char := ""
421 underPlayer := (player.X == x && player.Y == y)
422 if underPlayer {
423 sl = gardenCell.StatusLine
424 char = cs.Bold(player.Char)
425
426 if strings.Contains(gardenCell.StatusLine, "stream") {
427 player.ShoeMoistureContent = 5
428 }
429 } else {
430 char = gardenCell.Char
431 }
432
433 fmt.Fprint(out, char)
434 }
435 fmt.Fprintln(out)
436 }
437
438 fmt.Println()
439 fmt.Fprintln(out, cs.Bold(sl))
440}
441
442func statusLine(garden [][]*Cell, player *Player, io *iostreams.IOStreams) string {
443 width := io.TerminalWidth()

Callers 1

gardenRunFunction · 0.85

Calls 4

ColorSchemeMethod · 0.80
BoldMethod · 0.80
ContainsMethod · 0.80
PrintlnMethod · 0.80

Tested by

no test coverage detected