mirror of
https://github.com/HexCardGames/HexDeck.git
synced 2025-09-05 11:18:38 +02:00
feat(deck-classic): draw 7 cards per player on game start
This commit is contained in:
@ -44,6 +44,14 @@ func (deck *Classic) Init(room *types.Room) {
|
|||||||
}
|
}
|
||||||
utils.ShuffleSlice(&cards)
|
utils.ShuffleSlice(&cards)
|
||||||
deck.CardsRemaining = cards
|
deck.CardsRemaining = cards
|
||||||
|
|
||||||
|
deck.room.PlayersMutex.Lock()
|
||||||
|
defer deck.room.PlayersMutex.Unlock()
|
||||||
|
for _, player := range deck.room.Players {
|
||||||
|
player.Mutex.Lock()
|
||||||
|
defer player.Mutex.Unlock()
|
||||||
|
deck.drawMany(player, 7)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (deck *Classic) SetRoom(room *types.Room) {
|
func (deck *Classic) SetRoom(room *types.Room) {
|
||||||
@ -76,6 +84,12 @@ func (deck *Classic) drawCard(player *types.Player) types.Card {
|
|||||||
return card
|
return card
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (deck *Classic) drawMany(player *types.Player, cards int) {
|
||||||
|
for i := 0; i < cards; i++ {
|
||||||
|
deck.drawCard(player)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func (deck *Classic) getActivePlayer() int {
|
func (deck *Classic) getActivePlayer() int {
|
||||||
return utils.Mod(deck.ActivePlayer, len(deck.room.Players))
|
return utils.Mod(deck.ActivePlayer, len(deck.room.Players))
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user