diff options
Diffstat (limited to 'go/game/deck.go')
| -rw-r--r-- | go/game/deck.go | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/go/game/deck.go b/go/game/deck.go index f1290fa4..569a952d 100644 --- a/go/game/deck.go +++ b/go/game/deck.go @@ -34,6 +34,20 @@ func (d *Deck) Draw(amount int) []*Card { return drawn } +func (d *Deck) DrawOne() *Card { + drawn := d.Draw(1) + if len(drawn) == 0 { + return nil + } + return drawn[0] +} + +func NewDeckFrom(cards PileOfCards) *Deck { + d := NewDeck() + cards.MoveInto(d) + return d +} + func NewDeckFromCardPaths(cardPaths []string) *Deck { d := NewDeck() for _, cardPath := range cardPaths { |
