poker-resolver
TypeScript icon, indicating that this package has built-in type declarations

0.0.2 • Public • Published

Poker Resolver

Design

To solve a classic poker puzzle: 十八罗汉对四大金刚

Rules

The same rules with the mentioned poker puzzle.

  • pionter order: 2 > A > K > Q > J > ... > 3
  • can played with single/double/triple same pointer
  • player can skip on his/her turn

Usage

First install it:

npm i poker-resolver or yarn add poker-resolver

Import it, and get a Resolver object.

import { PokerResolver } from 'poker-resolver';
Resolver.resolve('234455667799QQQKKK', 'TTAA').isFirstWin(); // false

Notify:Point 10 would be represented with charactor T

The played who ownes 234455667799QQQKKK will lose this game.

API

Resolver

Main export class, pass hand pokers as constructor params, and it calculate result automatically.

Useage:

import { PokerResolver } from 'poker-resolver';
// replace arguments with yours
const pokerResolver = new PokerResolver('23445', 'TTA');

Tips: You can create with Resolver object like Resolver.resolve('23445', 'TTA')

isFirstWin

Verify the winner is the first played player.

pokerResolver.isFirstWin();

yieldWithInput

The yieldWithInput is a generator function, it yields a value when next method called with an input.

Note: You should yield a value at first.

const generator = pokerResolver.yieldWithInput();
// when cpu played first, should yield a value at first
const firstYield = generator.next().value;
 
const secondYiled = generator.next('2' /* what you input */);
secondYield.value; // CPU played point
secondYield.done; // verify game over

getInfo

This will return two-member tumple with current scene: What are cards left inside each player.

Once generator started, it may changed by playing cards. It always return the latest info.

pokerResolver.getInfo(); // ['33', 'TTT']

Author

License

MIT

Package Sidebar

Install

npm i poker-resolver

Weekly Downloads

0

Version

0.0.2

License

MIT

Unpacked Size

108 kB

Total Files

20

Last publish

Collaborators

  • fengkun