出牌规则的实现及Game.vb编程细节
出牌规则的实现(Game.vb)
Public Enum CardsType
- SingleCards '单牌
- DoubleCards '对牌:数值相同的两张牌(如梅花4+方块4)。
- SeriateStraightCards '三顺:二个或更多的连续三张牌(如:333444)
- ThreeAndOneCards '三带一:数值相同的三张牌+一张单牌。如333+6
- ThreeAndDoubleCards '三带二:数值相同的三张牌+一对牌。如444+99
- StraightCards '顺子:五张或更多的连续单牌(如:45678或78910JQK)。
- SisterCards '姊妹对:三对或更多的连续对牌(如:334455)。
- LandmineCards '地雷:数值相同的三张牌(如三个J)。
- PlatenCards '滚筒(飞机带翅膀):三顺+同数量的单牌(或对牌)。
- FourAndTwoCards '四带二
- BombCards '炸弹:四张同数值牌(如四个7)。
- RocketCards '火箭即双王(大王和小王),最大的牌
- unKnow
End Enum
Public Enum Place
- Left
- Center
- Right
End Enum
Public Class Game
Private frmMain As FrmMain
'带参构造函数
Public Sub New(ByVal frmMain As FrmMain)
Me.frmMain = frmMain
End Sub
'获取每种牌的张数
Private Function getCardsNumber(ByVal cards As IList(Of PictureBox)) As Hashtable
'见前文……
End Function
Public Enum CardsType
- SingleCards '单牌
- DoubleCards '对牌:数值相同的两张牌(如梅花4+方块4)。
- SeriateStraightCards '三顺:二个或更多的连续三张牌(如:333444)
- ThreeAndOneCards '三带一:数值相同的三张牌+一张单牌。如333+6
- ThreeAndDoubleCards '三带二:数值相同的三张牌+一对牌。如444+99
- StraightCards '顺子:五张或更多的连续单牌(如:45678或78910JQK)。
- SisterCards '姊妹对:三对或更多的连续对牌(如:334455)。
- LandmineCards '地雷:数值相同的三张牌(如三个J)。
- PlatenCards '滚筒(飞机带翅膀):三顺+同数量的单牌(或对牌)。
- FourAndTwoCards '四带二
- BombCards '炸弹:四张同数值牌(如四个7)。
- RocketCards '火箭即双王(大王和小王),最大的牌
- unKnow
End Enum
Public Enum Place
- Left
- Center
- Right
End Enum
Public Class Game
Private frmMain As FrmMain
'带参构造函数
Public Sub New(ByVal frmMain As FrmMain)
Me.frmMain = frmMain
End Sub
'获取每种牌的张数
Private Function getCardsNumber(ByVal cards As IList(Of PictureBox)) As Hashtable
'见前文……
End Function
2.53MB
文件大小:
评论区