From ea9f41e5817dd278186297f8beae766955c27fa3 Mon Sep 17 00:00:00 2001 From: Luke Meyers Date: Sat, 8 Feb 2020 21:27:50 -0800 Subject: [PATCH] fiddle main conditional flow --- main.go | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/main.go b/main.go index f712bd2..374b3ef 100644 --- a/main.go +++ b/main.go @@ -48,28 +48,30 @@ func run() error { go func() { cmdC <- game.PollCommands(s) }() for !w.Closed() && !s.GameOver { - switch { - case w.Pressed(pixelgl.KeyQ): - return nil - case rs.Animating: + if rs.Animating { rs = gfx.Render(rs, sOld, s, w, *sb) if !rs.Animating { sOld = s } - case w.Pressed(pixelgl.KeySpace) || true: - log.Printf("TURN %d", turn) - rs.Animating = true - rs.Frame = 0 + } else { + switch { + case w.Pressed(pixelgl.KeyQ): + return nil + case w.Pressed(pixelgl.KeySpace) || true: + log.Printf("TURN %d", turn) + rs.Animating = true + rs.Frame = 0 - cmds := <-cmdC - s = game.UpdateState(s, sOld, cmds) - turn++ - if s.GameOver { - s = game.NewState() - sOld = s - turn = 1 + cmds := <-cmdC + s = game.UpdateState(s, sOld, cmds) + turn++ + if s.GameOver { + s = game.NewState() + sOld = s + turn = 1 + } + go func() { cmdC <- game.PollCommands(s) }() } - go func() { cmdC <- game.PollCommands(s) }() } w.Update()