Yahtzee游戏引擎
项目描述
pyhtzee
支持常规Yahtzee规则(最高1480)、Joker规则(最高1575)和Yatzy(又称北欧Yahtzee规则,最高305)的游戏引擎。示例代码
from pyhtzee import Pyhtzee
from pyhtzee.classes import Category, Rule
from pyhtzee.utils import category_to_action_map, dice_roll_to_action_map
pyhtzee = Pyhtzee(rule=Rule.FREE_CHOICE_JOKER)
print(pyhtzee.dice)
这显示了骰子
[2, 5, 6, 1, 6]
接下来重掷骰子1、2和5
action = dice_roll_to_action_map[(True, True, False, False, True)]
pyhtzee.take_action(action)
print(pyhtzee.dice)
现在我们有两组
[4, 6, 6, 1, 1]
让我们只重掷第一颗骰子,看看我们是否能得到一个满贯
action = dice_roll_to_action_map[(True, False, False, False, False)]
pyhtzee.take_action(action)
print(pyhtzee.dice)
bingo!
[6, 6, 6, 1, 1]
现在让我们选择满贯的动作并查看计分卡
action = category_to_action_map[Category.FULL_HOUSE]
reward = pyhtzee.take_action(action)
print(f'Reward: {reward}, Scorecard: {pyhtzee.scores}')
这显示我们获得了25分的奖励,这可以在计分卡中确认
Reward: 25, Scorecard: {<Category.FULL_HOUSE: 8>: 25}
开发者指南
Pipenv推荐用于设置开发环境。在安装pipenv
之前,建议创建一个包含以下内容的.env
文件
PYTHONPATH=.
要安装pipenv和所需的依赖项,请运行以下命令
pip install pipenv
pipenv install -r requirements.txt
pipenv shell
更新依赖项
requirements.txt
是使用pip-compile
动态生成的。要重新生成requirements.txt
文件,请运行以下命令
pip-compile -U --output-file requirements.txt setup.py requirements-dev.in
Pre-commit钩子
本项目使用Git pre-commit钩子,由pre-commit提供。要安装,请运行以下命令
pre-commit install
项目详情
下载文件
下载适用于您平台的项目文件。如果您不确定选择哪一个,请了解有关安装包的更多信息。
源代码分发
pyhtzee-1.2.7.tar.gz (6.3 kB 查看哈希值)
构建分发
pyhtzee-1.2.7-py3-none-any.whl (11.0 kB 查看哈希值)
关闭
pyhtzee-1.2.7.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b1f034c64e990778c470d05b3d2c225daada317e30b21ca03bf0f1d866aa9481 |
|
MD5 | 55c32f4a74571553e523d0ae208f3dd4 |
|
BLAKE2b-256 | f841590eb6a4b8381e92103d8d5d8af87b08f17bc0e88741f0d3cf32d2f2f60a |
关闭
pyhtzee-1.2.7-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 23ccfd363c82bd7081ee291f3a75889e4c52a42fc51af2a7033840e2c89088d5 |
|
MD5 | 0aa0c66eadc134202b73b20a7843a2ec |
|
BLAKE2b-256 | 83d4b3883ee193e6b9e8b7051022bb761ff4a9c23a8e4648f320766765911bb7 |