func main() { if err := termbox.Init(); err != nil { log.Fatalln(err) } termbox.SetOutputMode(termbox.Output256) defer termbox.Close() f, err := os.Create("diwe.log") if err != nil { log.Fatalln(err) } log.SetOutput(f) g := NewGame() js, _ := joystick.Open(0) g.js = js if _, err := os.Stat(highscoreFilename); err == nil { g.loadHighscores() } g.Listen() g.FitScreen() if g.checkSize() { g.GoMenu() } else { g.GoWarn() } g.FitScreen() main: for { select { case ev := <-g.evq: switch ev.Type { case termbox.EventKey: switch ev.Key { case 0: if ev.Ch == 'q' { break main } default: g.HandleKey(ev.Key) } case termbox.EventResize: g.FitScreen() } default: } g.Update() g.Draw() } }
func openJoystick(config Config) joystick.Joystick { js, err := joystick.Open(config.JoystickIdx) exitOnError(err) return js }