克里贝奇计分工具
cribbage-scorer的Python项目详细描述
克里比奇记分器
Cribebage scorer是经典纸牌游戏的简单计分引擎。在
有关游戏的详细信息和历史记录Wikipedia has a good summary
有关如何播放和规则的说明,请参阅American Cribbage Congress
安装
pip install cribbage-scorer
得分
下面是如何使用该库的示例。在
在库和示例中,我使用了以下约定:
- 1:王牌
- 2-10:非正面卡。在
- 11:杰克
- 12:女王
- 13:国王
D=钻石, H=心脏, C=俱乐部, S=黑桃。在
球员按比赛顺序排列。所以。。。在
- Abi玩了5个钻石
- Bob打了5个黑桃
- Abi玩了5个俱乐部
- Bob玩了一把钻石。在
…表示为:
^{pr2}$切口
cut_calc_score
函数在游戏的“剪切”阶段使用。在
这是一个简单的功能,分配2点给经销商,如果pone切断一个插孔作为启动卡。在
fromcribbage_scorerimportcribbage_scorercut_card=(11,"D")players=["Abi","Bob"]dealer="Bob"scores,msg=cribbage_scorer.cut_calc_score(cut_card,players,dealer)print(scores,msg)
结果:
{'Abi': 0, 'Bob': 2} Cut card is a Jack, Dealer scores 2pts.
这出戏
play_calc_score_whole_game
函数用于游戏的“播放”阶段。在
play_calc_score_whole_game
处理3个和4个玩家以及标准的2人游戏。它也能理解“Go”呼叫。在
要使用,请从GitHub克隆并运行以下Python代码:
fromcribbage_scorerimportcribbage_scorerplayers=["Abi","Bob"]played_cards=[(5,"D"),(5,"S"),(5,"C"),(11,"D")]scores,current_count,play_log=cribbage_scorer.play_calc_score_whole_game(played_cards,players)print(scores,current_count,play_log)
结果:
{'Abi': 8, 'Bob': 3}25['Count: 5, No Points scored, None said Go. ', 'Count: 10, Bob: 2 of a kind (2pts), score so far: 2 ', 'Count: 15, Abi: 15 for 2pts, 3 of a kind (6pts), score so far: 8 ', 'Count: 25, Bob: Last card (1pt), score so far: 3 ']
节目
show_calc_score
函数在游戏的“表演”阶段使用。在
show_calc_score
处理庄家和非庄家手牌,对于标准的6张牌(4张在你手上,2张给婴儿床)+游戏的启动卡/切牌版本。在
要使用,请从GitHub克隆并运行以下Python代码:
fromcribbage_scorerimportcribbage_scorerstarter=(5,"D")hand=[(5,"D"),(5,"S"),(5,"C"),(11,"D")]crib=Falsescore,msg=cribbage_scorer.show_calc_score(starter,hand,crib)print(score,msg)
结果:
(29, "Four of a kind: 5s (12pts), Made 15 from [(5, 'D'), (11, 'D')] (2pts), Made 15 from [(5, 'S'), (11, 'D')] (2pts), Made 15 from [(5, 'C'), (11, 'D')] (2pts), Made 15 from [(11, 'D'), (5, 'D')] (2pts), Made 15 from [(5, 'D'), (5, 'S'), (5, 'C')] (2pts), Made 15 from [(5, 'D'), (5, 'S'), (5, 'D')] (2pts), Made 15 from [(5, 'D'), (5, 'C'), (5, 'D')] (2pts), Made 15 from [(5, 'S'), (5, 'C'), (5, 'D')] (2pts), One for his nobs (1pt)")
许可证:
版权所有©2020彼得·霍顿
特此免费授予获得本软件和相关文档文件(以下简称“软件”)副本的任何人无限制地使用本软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,并允许向其提供软件的人提供软件,但须符合以下条件:
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。在
本软件按“原样”提供,无任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性的保证。在任何情况下,作者或版权持有人均不对因本软件或本软件的使用或其他交易而引起的、与之相关的任何索赔、损害赔偿或其他责任负责,无论是合同诉讼、侵权诉讼还是其他诉讼。在
- 项目
标签: