diff options
author | joop <Joop Kiefte> | 2022-03-17 02:00:54 +0000 |
---|---|---|
committer | joop <Joop Kiefte> | 2022-03-17 02:00:54 +0000 |
commit | 8f8319716c50b0ab6722e545062f54f7d1029ec1 (patch) | |
tree | c6e2ce3241ce2ee77711b6e24fbf5a2eef3524f8 | |
parent | 4425fa24325ced5f39377071348f96c62e6d964b (diff) |
Add prompt for generic read function
-rw-r--r-- | go.mod | 3 | ||||
-rw-r--r-- | main.go | 14 |
2 files changed, 9 insertions, 8 deletions
@@ -0,0 +1,3 @@ +module git.kiefte.eu/lapingvino/muskapti-cli + +go 1.18 @@ -5,6 +5,8 @@ import ( "math/rand" "os" "time" + + "git.kiefte.eu/lapingvino/prompt" ) func klariguLudon(min, max, skip int) { @@ -34,7 +36,7 @@ func skipDoes(skip int) string { func askPlayers() (n int) { fmt.Print("Kiom da ludantoj estas? ") - fmt.Scan(&n) + n = prompt.MustRead[int]() if n < 1 { return 2 } @@ -43,10 +45,8 @@ func askPlayers() (n int) { func askNames(n int) (names []string) { for i := 1; i <= n; i++ { - name := "" fmt.Printf("Ludanto %d, kiel mi nomu vin? ", i) - fmt.Scan(&name) - names = append(names, name) + names = append(names, prompt.MustRead[string]()) } return names } @@ -81,8 +81,7 @@ func getNumber(min, max, skip int, guessed chan bool) (nchan chan int) { func play(name string, number int) (won bool) { fmt.Printf("Estas la vico de %s: kiu numero estas? ", name) - var guess int - fmt.Scan(&guess) + guess := prompt.MustRead[int]() switch { case number == guess: fmt.Println("Prave, la numero estas", number) @@ -99,8 +98,7 @@ func play(name string, number int) (won bool) { func again() bool { for { fmt.Print("Ĉu ludi denove, jes aŭ ne? ") - answer := "" - fmt.Scan(&answer) + answer := prompt.MustRead[string]() switch answer { case "jes": return true |