noeldavies / cards
一套标准卡牌,用于构建任何卡牌游戏
v0.3
2016-12-16 01:30 UTC
Requires
- php: >=5.5.0
Requires (Dev)
- mockery/mockery: dev-master
- phpunit/phpunit: ~4.0
This package is auto-updated.
Last update: 2024-09-11 22:58:33 UTC
README
#Cards. 几分钟内构建卡牌游戏。
默认提供一套标准的52张卡牌,但可以自定义以构建所需的任何牌组。创建桥牌、21点、德州扑克等...
安装
通过Composer引入包。
运行 composer require noeldavies/cards
使用方法
要开始使用牌组...
$d = new Deck; $d->shuffle(); //deal... an array of cards $hand1 = $d->drawHand(10); $hand2 = $d->drawHand(10); //draw a single card $card = deck->draw(); //do something with card $value = $card->value(); $suit = $card->suit(); //special card? if($card->isFaceCard()){...} //cards left in the deck $deck->count();
当游戏结束时,只需通过洗牌(shuffle)重置牌组。现在牌组中有所有卡片(包括已抽取的)。
//start a new game... $deck->shuffle();
要自定义牌组(即哪些牌属于牌组)可以实现CardProvider接口
class MyGameDeckProvider implements CardProvider{ public function getCards(){ //return an array of card for MyGame } } //... $deck = new Deck(new MyGameDeckProvider);
你可能还想看看
Shuffleable
用于洗牌CardProvider
用于向牌组提供牌
当前实现不允许在抽取牌后将其放回牌组。洗牌会重置牌组