shufflecom-calculations 1.2.1 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,6 +7,14 @@ export declare enum BlackjackAction {
7
7
  BUY_INSURANCE = "BUY_INSURANCE",
8
8
  REJECT_INSURANCE = "REJECT_INSURANCE"
9
9
  }
10
+ export declare enum HandOutcome {
11
+ WIN = "WIN",
12
+ LOSS = "LOSS",
13
+ PUSH = "PUSH",
14
+ BLACKJACK = "BLACKJACK",
15
+ PENDING = "PENDING",
16
+ NONE = "NONE"
17
+ }
10
18
  export declare enum PerfectPairType {
11
19
  PERFECT_PAIR = "PERFECT_PAIR",
12
20
  COLORED_PAIR = "COLORED_PAIR",
@@ -30,19 +38,23 @@ export interface SettleBetVars {
30
38
  mainPlayerHand: number[];
31
39
  splitPlayerHand: number[];
32
40
  dealerHand: number[];
33
- mainHandBetAmount: BigNumber;
34
- splitHandBetAmount: BigNumber;
41
+ mainBetAmount: BigNumber;
35
42
  twentyOnePlusThreeAmount: BigNumber;
36
43
  perfectPairAmount: BigNumber;
37
44
  boughtInsurance: boolean;
38
45
  hasSplit: boolean;
46
+ mainHandDoubleDown: boolean;
47
+ splitHandDoubleDown: boolean;
39
48
  }
40
49
  export declare const perfectPairPayout: Record<PerfectPairType, BigNumber>;
41
50
  export declare const twentyOnePlusThreePayout: Record<TwentyOnePlusThreeType, BigNumber>;
42
51
  export declare class Blackjack {
43
52
  static availableNextActions(currentPlayerHand: number[], dealerCards: number[], insuranceStatus: InsuranceStatus, atMainHandAndHasNotSplit: boolean): BlackjackAction[];
44
53
  static playingMainHand(mainPlayerCards: number[], splitPlayerCards: number[], mainPlayerActions: BlackjackAction[], splitPlayerActions: BlackjackAction[]): boolean;
45
- static calcMainBetMultiplier(dealerCards: number[], playerCards: number[], hasSplit: boolean): BigNumber;
54
+ static getHandOutcome(dealerCards: number[], playerCards: number[], hasSplit: boolean): {
55
+ multiplier: BigNumber;
56
+ outcome: HandOutcome;
57
+ };
46
58
  static calcSideBetWins(dealerUpCard: number, playerCards: number[]): {
47
59
  perfectPair?: PerfectPairType;
48
60
  twentyOnePlusThree?: TwentyOnePlusThreeType;
@@ -54,5 +66,11 @@ export declare class Blackjack {
54
66
  static canSplit(mainHand: number[]): boolean;
55
67
  static canDoubleDown(playerCards: number[]): boolean;
56
68
  static isBlackjack(cards: number[]): boolean;
57
- static getPayout({ mainPlayerHand, splitPlayerHand, dealerHand, mainHandBetAmount, splitHandBetAmount, twentyOnePlusThreeAmount, perfectPairAmount, boughtInsurance, hasSplit, }: SettleBetVars): BigNumber;
69
+ static getGameOutcome(data: SettleBetVars): {
70
+ payout: BigNumber;
71
+ multiplier: BigNumber;
72
+ mainHandOutcome: HandOutcome;
73
+ splitHandOutcome: HandOutcome;
74
+ };
75
+ private static getMainBetPayout;
58
76
  }
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Blackjack = exports.twentyOnePlusThreePayout = exports.perfectPairPayout = exports.InsuranceStatus = exports.TwentyOnePlusThreeType = exports.PerfectPairType = exports.BlackjackAction = void 0;
6
+ exports.Blackjack = exports.twentyOnePlusThreePayout = exports.perfectPairPayout = exports.InsuranceStatus = exports.TwentyOnePlusThreeType = exports.PerfectPairType = exports.HandOutcome = exports.BlackjackAction = void 0;
7
7
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
8
  const cardGames_1 = require("./cardGames");
9
9
  var BlackjackAction;
@@ -15,6 +15,15 @@ var BlackjackAction;
15
15
  BlackjackAction["BUY_INSURANCE"] = "BUY_INSURANCE";
16
16
  BlackjackAction["REJECT_INSURANCE"] = "REJECT_INSURANCE";
17
17
  })(BlackjackAction = exports.BlackjackAction || (exports.BlackjackAction = {}));
18
+ var HandOutcome;
19
+ (function (HandOutcome) {
20
+ HandOutcome["WIN"] = "WIN";
21
+ HandOutcome["LOSS"] = "LOSS";
22
+ HandOutcome["PUSH"] = "PUSH";
23
+ HandOutcome["BLACKJACK"] = "BLACKJACK";
24
+ HandOutcome["PENDING"] = "PENDING";
25
+ HandOutcome["NONE"] = "NONE";
26
+ })(HandOutcome = exports.HandOutcome || (exports.HandOutcome = {}));
18
27
  var PerfectPairType;
19
28
  (function (PerfectPairType) {
20
29
  PerfectPairType["PERFECT_PAIR"] = "PERFECT_PAIR";
@@ -94,34 +103,34 @@ class Blackjack {
94
103
  }
95
104
  throw new Error('No available action');
96
105
  }
97
- static calcMainBetMultiplier(dealerCards, playerCards, hasSplit) {
98
- const dealerBlackjack = this.isBlackjack(dealerCards.slice(0, 2));
99
- const playerBlackjack = this.isBlackjack(playerCards.slice(0, 2));
106
+ static getHandOutcome(dealerCards, playerCards, hasSplit) {
107
+ const dealerBlackjack = this.isBlackjack(dealerCards);
108
+ const playerBlackjack = this.isBlackjack(playerCards);
100
109
  if (playerBlackjack && !dealerBlackjack && !hasSplit) {
101
- return new bignumber_js_1.default(2.5);
110
+ return { multiplier: new bignumber_js_1.default(2.5), outcome: HandOutcome.BLACKJACK };
102
111
  }
103
112
  if (dealerBlackjack && !playerBlackjack) {
104
- return new bignumber_js_1.default(0);
113
+ return { multiplier: new bignumber_js_1.default(0), outcome: HandOutcome.LOSS };
105
114
  }
106
115
  if (dealerBlackjack && playerBlackjack) {
107
- return new bignumber_js_1.default(1);
116
+ return { multiplier: new bignumber_js_1.default(1), outcome: HandOutcome.PUSH };
108
117
  }
109
118
  if (this.hasBusted(playerCards)) {
110
- return new bignumber_js_1.default(0);
119
+ return { multiplier: new bignumber_js_1.default(0), outcome: HandOutcome.LOSS };
111
120
  }
112
121
  if (this.hasBusted(dealerCards)) {
113
- return new bignumber_js_1.default(2);
122
+ return { multiplier: new bignumber_js_1.default(2), outcome: HandOutcome.WIN };
114
123
  }
115
124
  const playerSum = this.calcHandValue(playerCards);
116
125
  const dealerSum = this.calcHandValue(dealerCards);
117
126
  if (playerSum > dealerSum) {
118
- return new bignumber_js_1.default(2);
127
+ return { multiplier: new bignumber_js_1.default(2), outcome: HandOutcome.WIN };
119
128
  }
120
129
  else if (playerSum < dealerSum) {
121
- return new bignumber_js_1.default(0);
130
+ return { multiplier: new bignumber_js_1.default(0), outcome: HandOutcome.LOSS };
122
131
  }
123
132
  else {
124
- return new bignumber_js_1.default(1);
133
+ return { multiplier: new bignumber_js_1.default(1), outcome: HandOutcome.PUSH };
125
134
  }
126
135
  }
127
136
  static calcSideBetWins(dealerUpCard, playerCards) {
@@ -232,21 +241,50 @@ class Blackjack {
232
241
  }
233
242
  return this.calcHandValue(cards) === 21;
234
243
  }
235
- static getPayout({ mainPlayerHand, splitPlayerHand, dealerHand, mainHandBetAmount, splitHandBetAmount, twentyOnePlusThreeAmount, perfectPairAmount, boughtInsurance, hasSplit, }) {
236
- const mainBetPayout = Blackjack.calcMainBetMultiplier(dealerHand, mainPlayerHand, hasSplit).times(mainHandBetAmount);
237
- const splitBetPayout = splitPlayerHand.length > 0 ? Blackjack.calcMainBetMultiplier(dealerHand, splitPlayerHand, hasSplit).times(splitHandBetAmount) : new bignumber_js_1.default(0);
238
- const insurancePayout = boughtInsurance && Blackjack.isBlackjack(dealerHand) ? mainHandBetAmount.dividedBy(2).times(3) : new bignumber_js_1.default(0);
244
+ static getGameOutcome(data) {
245
+ const mainHandBetAmount = data.mainHandDoubleDown ? data.mainBetAmount.times(2) : data.mainBetAmount;
246
+ let splitHandBetAmount = new bignumber_js_1.default(0);
247
+ if (data.hasSplit) {
248
+ splitHandBetAmount = data.splitHandDoubleDown ? data.mainBetAmount.times(2) : data.mainBetAmount;
249
+ }
239
250
  let perfectPairPayoutAmt = new bignumber_js_1.default(0);
240
251
  let twentyOnePlusThreePayoutAmt = new bignumber_js_1.default(0);
241
- const playerHand = hasSplit ? [mainPlayerHand[0], splitPlayerHand[0]] : [mainPlayerHand[0], mainPlayerHand[1]];
242
- const { perfectPair, twentyOnePlusThree } = Blackjack.calcSideBetWins(dealerHand[0], playerHand);
243
- if (exports.perfectPairPayout[perfectPair] && perfectPairAmount.gt(0)) {
244
- perfectPairPayoutAmt = perfectPairAmount.times(exports.perfectPairPayout[perfectPair]);
252
+ const { mainHandOutcome, payout: mainBetPayout, splitHandOutcome } = Blackjack.getMainBetPayout(Object.assign(Object.assign({}, data), { mainHandBetAmount, splitHandBetAmount }));
253
+ const playerHand = data.hasSplit ? [data.mainPlayerHand[0], data.splitPlayerHand[0]] : [data.mainPlayerHand[0], data.mainPlayerHand[1]];
254
+ const { perfectPair, twentyOnePlusThree } = Blackjack.calcSideBetWins(data.dealerHand[0], playerHand);
255
+ if (exports.perfectPairPayout[perfectPair] && data.perfectPairAmount.gt(0)) {
256
+ perfectPairPayoutAmt = data.perfectPairAmount.times(exports.perfectPairPayout[perfectPair]);
245
257
  }
246
- if (exports.twentyOnePlusThreePayout[twentyOnePlusThree] && twentyOnePlusThreeAmount.gt(0)) {
247
- twentyOnePlusThreePayoutAmt = twentyOnePlusThreeAmount.times(exports.twentyOnePlusThreePayout[twentyOnePlusThree]);
258
+ if (exports.twentyOnePlusThreePayout[twentyOnePlusThree] && data.twentyOnePlusThreeAmount.gt(0)) {
259
+ twentyOnePlusThreePayoutAmt = data.twentyOnePlusThreeAmount.times(exports.twentyOnePlusThreePayout[twentyOnePlusThree]);
260
+ }
261
+ const payout = mainBetPayout.plus(perfectPairPayoutAmt).plus(twentyOnePlusThreePayoutAmt);
262
+ const insuranceCost = data.boughtInsurance ? data.mainBetAmount.dividedBy(2) : new bignumber_js_1.default(0);
263
+ const totalBetAmount = mainHandBetAmount.plus(splitHandBetAmount).plus(data.perfectPairAmount).plus(data.twentyOnePlusThreeAmount).plus(insuranceCost);
264
+ let multiplier = payout.dividedBy(totalBetAmount);
265
+ if (totalBetAmount.isZero()) {
266
+ const mainHandBetAmount = data.mainHandDoubleDown ? new bignumber_js_1.default(2) : new bignumber_js_1.default(1);
267
+ let splitHandBetAmount = new bignumber_js_1.default(0);
268
+ if (data.hasSplit) {
269
+ splitHandBetAmount = data.splitHandDoubleDown ? new bignumber_js_1.default(2) : new bignumber_js_1.default(1);
270
+ }
271
+ const insuranceCost = data.boughtInsurance ? new bignumber_js_1.default(0.5) : new bignumber_js_1.default(0);
272
+ const totalBetAmount = mainHandBetAmount.plus(splitHandBetAmount).plus(insuranceCost);
273
+ multiplier = Blackjack.getMainBetPayout(Object.assign(Object.assign({}, data), { mainHandBetAmount, splitHandBetAmount })).payout.dividedBy(totalBetAmount);
248
274
  }
249
- return mainBetPayout.plus(splitBetPayout).plus(insurancePayout).plus(perfectPairPayoutAmt).plus(twentyOnePlusThreePayoutAmt);
275
+ return { payout, multiplier, mainHandOutcome, splitHandOutcome };
276
+ }
277
+ static getMainBetPayout({ mainPlayerHand, splitPlayerHand, dealerHand, mainHandBetAmount, splitHandBetAmount, boughtInsurance, hasSplit, }) {
278
+ const { multiplier: mainHandMultiplier, outcome: mainHandOutcome } = Blackjack.getHandOutcome(dealerHand, mainPlayerHand, hasSplit);
279
+ const mainHandPayout = mainHandMultiplier.times(mainHandBetAmount);
280
+ const { multiplier: splitHandMultiplier, outcome: splitHandOutcome } = Blackjack.getHandOutcome(dealerHand, splitPlayerHand, hasSplit);
281
+ const splitHandPayout = splitPlayerHand.length > 0 ? splitHandMultiplier.times(splitHandBetAmount) : new bignumber_js_1.default(0);
282
+ const insurancePayout = boughtInsurance && Blackjack.isBlackjack(dealerHand) ? mainHandBetAmount.dividedBy(2).times(3) : new bignumber_js_1.default(0);
283
+ return {
284
+ mainHandOutcome,
285
+ splitHandOutcome: hasSplit ? splitHandOutcome : HandOutcome.NONE,
286
+ payout: mainHandPayout.plus(splitHandPayout).plus(insurancePayout),
287
+ };
250
288
  }
251
289
  }
252
290
  exports.Blackjack = Blackjack;
@@ -1 +1 @@
1
- {"version":3,"file":"blackjack.js","sourceRoot":"","sources":["../../src/games/blackjack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blackjack.js","sourceRoot":"","sources":["../../src/games/blackjack.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -8,4 +8,4 @@ export { Limbo } from './games/limbo';
8
8
  export { Keno, KenoRiskLevel } from './games/keno';
9
9
  export { Hilo, HiloGuess } from './games/hilo';
10
10
  export { CardGames, CardDetail, CardValue, Suits, suitsArr } from './games/cardGames';
11
- export { BlackjackAction, Blackjack, InsuranceStatus, PerfectPairType, TwentyOnePlusThreeType, perfectPairPayout, twentyOnePlusThreePayout, } from './games/blackjack';
11
+ export { BlackjackAction, Blackjack, InsuranceStatus, PerfectPairType, TwentyOnePlusThreeType, perfectPairPayout, twentyOnePlusThreePayout, HandOutcome, } from './games/blackjack';
package/lib/index.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.twentyOnePlusThreePayout = exports.perfectPairPayout = exports.TwentyOnePlusThreeType = exports.PerfectPairType = exports.InsuranceStatus = exports.Blackjack = exports.BlackjackAction = exports.suitsArr = exports.Suits = exports.CardGames = exports.HiloGuess = exports.Hilo = exports.KenoRiskLevel = exports.Keno = exports.Limbo = exports.Crash = exports.PlinkoRiskLevel = exports.Plinko = exports.Mines = exports.DiceDirection = exports.Dice = void 0;
17
+ exports.HandOutcome = exports.twentyOnePlusThreePayout = exports.perfectPairPayout = exports.TwentyOnePlusThreeType = exports.PerfectPairType = exports.InsuranceStatus = exports.Blackjack = exports.BlackjackAction = exports.suitsArr = exports.Suits = exports.CardGames = exports.HiloGuess = exports.Hilo = exports.KenoRiskLevel = exports.Keno = exports.Limbo = exports.Crash = exports.PlinkoRiskLevel = exports.Plinko = exports.Mines = exports.DiceDirection = exports.Dice = void 0;
18
18
  __exportStar(require("./regex"), exports);
19
19
  __exportStar(require("./utils"), exports);
20
20
  var dice_1 = require("./games/dice");
@@ -47,4 +47,5 @@ Object.defineProperty(exports, "PerfectPairType", { enumerable: true, get: funct
47
47
  Object.defineProperty(exports, "TwentyOnePlusThreeType", { enumerable: true, get: function () { return blackjack_1.TwentyOnePlusThreeType; } });
48
48
  Object.defineProperty(exports, "perfectPairPayout", { enumerable: true, get: function () { return blackjack_1.perfectPairPayout; } });
49
49
  Object.defineProperty(exports, "twentyOnePlusThreePayout", { enumerable: true, get: function () { return blackjack_1.twentyOnePlusThreePayout; } });
50
+ Object.defineProperty(exports, "HandOutcome", { enumerable: true, get: function () { return blackjack_1.HandOutcome; } });
50
51
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,0CAAwB;AACxB,qCAAmD;AAA1C,4FAAA,IAAI,OAAA;AAAE,qGAAA,aAAa,OAAA;AAC5B,uCAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,yCAAyD;AAAhD,gGAAA,MAAM,OAAA;AAAE,yGAAA,eAAe,OAAA;AAChC,uCAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,uCAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,qCAAmD;AAA1C,4FAAA,IAAI,OAAA;AAAE,qGAAA,aAAa,OAAA;AAC5B,qCAA+C;AAAtC,4FAAA,IAAI,OAAA;AAAE,iGAAA,SAAS,OAAA;AACxB,+CAAsF;AAA7E,sGAAA,SAAS,OAAA;AAAyB,kGAAA,KAAK,OAAA;AAAE,qGAAA,QAAQ,OAAA;AAC1D,+CAQ2B;AAPzB,4GAAA,eAAe,OAAA;AACf,sGAAA,SAAS,OAAA;AACT,4GAAA,eAAe,OAAA;AACf,4GAAA,eAAe,OAAA;AACf,mHAAA,sBAAsB,OAAA;AACtB,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,0CAAwB;AACxB,qCAAmD;AAA1C,4FAAA,IAAI,OAAA;AAAE,qGAAA,aAAa,OAAA;AAC5B,uCAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,yCAAyD;AAAhD,gGAAA,MAAM,OAAA;AAAE,yGAAA,eAAe,OAAA;AAChC,uCAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,uCAAsC;AAA7B,8FAAA,KAAK,OAAA;AACd,qCAAmD;AAA1C,4FAAA,IAAI,OAAA;AAAE,qGAAA,aAAa,OAAA;AAC5B,qCAA+C;AAAtC,4FAAA,IAAI,OAAA;AAAE,iGAAA,SAAS,OAAA;AACxB,+CAAsF;AAA7E,sGAAA,SAAS,OAAA;AAAyB,kGAAA,KAAK,OAAA;AAAE,qGAAA,QAAQ,OAAA;AAC1D,+CAS2B;AARzB,4GAAA,eAAe,OAAA;AACf,sGAAA,SAAS,OAAA;AACT,4GAAA,eAAe,OAAA;AACf,4GAAA,eAAe,OAAA;AACf,mHAAA,sBAAsB,OAAA;AACtB,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA;AACxB,wGAAA,WAAW,OAAA"}