✨ 扑克牌支持
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
package poker
|
||||
|
||||
// HandHandle 扑克牌型验证函数
|
||||
type HandHandle func(poker *Poker, cards []Card) bool
|
||||
|
||||
// HandPairs 对子
|
||||
func HandPairs() HandHandle {
|
||||
return func(poker *Poker, cards []Card) bool {
|
||||
return len(cards) == 2 && cards[0].EqualPoint(cards[1])
|
||||
}
|
||||
}
|
||||
|
||||
// HandFlushPairs 同花对子
|
||||
func HandFlushPairs() HandHandle {
|
||||
return func(poker *Poker, cards []Card) bool {
|
||||
if len(cards) != 2 {
|
||||
return false
|
||||
}
|
||||
card1, card2 := cards[0], cards[1]
|
||||
return card1.Equal(card2)
|
||||
}
|
||||
}
|
||||
|
||||
// HandSingle 单牌
|
||||
func HandSingle() HandHandle {
|
||||
return func(poker *Poker, cards []Card) bool {
|
||||
return len(cards) == 1
|
||||
}
|
||||
}
|
||||
|
||||
// HandThreeOfKind 三张
|
||||
func HandThreeOfKind() HandHandle {
|
||||
return func(poker *Poker, cards []Card) bool {
|
||||
return len(cards) == 3 && cards[0].EqualPoint(cards[1]) && cards[1].EqualPoint(cards[2])
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user