samth-dissertation/squad.scm
Sam Tobin-Hochstadt 9c7a001a36 init
2017-07-10 13:02:10 -04:00

16 lines
644 B
Scheme

(: play-one-turn (Player Cards Cards Hand ->
(values Boolean RCard Hand Attacks From)))
(define (play-one-turn player deck stck fst:discs)
(define trn (create-turn (player-name player) deck stck fst:discs))
;; --- go play
(define res (player-take-turn player trn))
;; the-return-card could be false
(define-values (the-end the-return-card)
(cond
[(ret? res) (values #f (ret-card res))]
[(end? res) (values #t (end-card res))]))
(define discards:squadrons (done-discards res))
(define attacks (done-attacks res))
(define et (turn-end trn))
(values the-end the-return-card discards:squadrons attacks et))