mahjong_engine 1.1.2 → 1.1.4
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.
- package/.github/workflows/qlty-coverage.yml +2 -2
- package/dist/BlockDivider.d.ts +11 -0
- package/dist/BlockDivider.d.ts.map +1 -0
- package/dist/BlockDivider.js +109 -0
- package/dist/BlockDivider.js.map +1 -0
- package/dist/BlockHais.d.ts +27 -0
- package/dist/BlockHais.d.ts.map +1 -0
- package/dist/BlockHais.js +78 -0
- package/dist/BlockHais.js.map +1 -0
- package/dist/BlockHaisList.d.ts +19 -0
- package/dist/BlockHaisList.d.ts.map +1 -0
- package/dist/BlockHaisList.js +81 -0
- package/dist/BlockHaisList.js.map +1 -0
- package/dist/Hai.d.ts +16 -0
- package/dist/Hai.d.ts.map +1 -0
- package/dist/Hai.js +67 -0
- package/dist/Hai.js.map +1 -0
- package/dist/Hais.d.ts +15 -0
- package/dist/Hais.d.ts.map +1 -0
- package/dist/Hais.js +40 -0
- package/dist/Hais.js.map +1 -0
- package/dist/IMentsu.d.ts +20 -0
- package/dist/IMentsu.d.ts.map +1 -0
- package/dist/IMentsu.js +2 -0
- package/dist/IMentsu.js.map +1 -0
- package/dist/MachiCalculator.d.ts +9 -0
- package/dist/MachiCalculator.d.ts.map +1 -0
- package/dist/MachiCalculator.js +49 -0
- package/dist/MachiCalculator.js.map +1 -0
- package/dist/MahjongConsts.d.ts +43 -0
- package/dist/MahjongConsts.d.ts.map +1 -0
- package/dist/MahjongConsts.js +55 -0
- package/dist/MahjongConsts.js.map +1 -0
- package/dist/Meld.d.ts +26 -0
- package/dist/Meld.d.ts.map +1 -0
- package/dist/Meld.js +71 -0
- package/dist/Meld.js.map +1 -0
- package/dist/Melds.d.ts +9 -0
- package/dist/Melds.d.ts.map +1 -0
- package/dist/Melds.js +14 -0
- package/dist/Melds.js.map +1 -0
- package/dist/MentsuAnalyzer.d.ts +11 -0
- package/dist/MentsuAnalyzer.d.ts.map +1 -0
- package/dist/MentsuAnalyzer.js +19 -0
- package/dist/MentsuAnalyzer.js.map +1 -0
- package/dist/PlayerContext.d.ts +30 -0
- package/dist/PlayerContext.d.ts.map +1 -0
- package/dist/PlayerContext.js +26 -0
- package/dist/PlayerContext.js.map +1 -0
- package/dist/PlayerHand.d.ts +12 -0
- package/dist/PlayerHand.d.ts.map +1 -0
- package/dist/PlayerHand.js +24 -0
- package/dist/PlayerHand.js.map +1 -0
- package/dist/ShantenCalculator.d.ts +14 -0
- package/dist/ShantenCalculator.d.ts.map +1 -0
- package/dist/ShantenCalculator.js +108 -0
- package/dist/ShantenCalculator.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -0
- package/dist/modules/ShantenCalculator.d.ts +3 -3
- package/dist/modules/ShantenCalculator.d.ts.map +1 -1
- package/dist/modules/ShantenCalculator.js +2 -2
- package/dist/modules/ShantenCalculator.js.map +1 -1
- package/dist/modules/tensuu/FuCalculator.d.ts.map +1 -1
- package/dist/modules/tensuu/FuCalculator.js +6 -1
- package/dist/modules/tensuu/FuCalculator.js.map +1 -1
- package/dist/modules/tensuu/ScoreResolver.d.ts.map +1 -1
- package/dist/modules/tensuu/ScoreResolver.js +8 -1
- package/dist/modules/tensuu/ScoreResolver.js.map +1 -1
- package/dist/modules/tensuu/ScoreResult.d.ts +10 -1
- package/dist/modules/tensuu/ScoreResult.d.ts.map +1 -1
- package/dist/modules/tensuu/ScoreResult.js +7 -7
- package/dist/modules/tensuu/ScoreResult.js.map +1 -1
- package/dist/modules/yaku/NormalYakuChecker.d.ts.map +1 -1
- package/dist/modules/yaku/NormalYakuChecker.js +0 -2
- package/dist/modules/yaku/NormalYakuChecker.js.map +1 -1
- package/dist/modules/yaku/YakumanChecker.js +4 -4
- package/dist/modules/yaku/YakumanChecker.js.map +1 -1
- package/dist/modules/yaku/index.d.ts.map +1 -1
- package/dist/modules/yaku/index.js +20 -18
- package/dist/modules/yaku/index.js.map +1 -1
- package/dist/modules/yaku/normal/IppatsuChecker.d.ts +8 -0
- package/dist/modules/yaku/normal/IppatsuChecker.d.ts.map +1 -0
- package/dist/modules/yaku/normal/IppatsuChecker.js +12 -0
- package/dist/modules/yaku/normal/IppatsuChecker.js.map +1 -0
- package/dist/tensuu/FuCalculator.d.ts +15 -0
- package/dist/tensuu/FuCalculator.d.ts.map +1 -0
- package/dist/tensuu/FuCalculator.js +105 -0
- package/dist/tensuu/FuCalculator.js.map +1 -0
- package/dist/tensuu/FuDetail.d.ts +10 -0
- package/dist/tensuu/FuDetail.d.ts.map +1 -0
- package/dist/tensuu/FuDetail.js +13 -0
- package/dist/tensuu/FuDetail.js.map +1 -0
- package/dist/tensuu/ScoreResolver.d.ts +14 -0
- package/dist/tensuu/ScoreResolver.d.ts.map +1 -0
- package/dist/tensuu/ScoreResolver.js +40 -0
- package/dist/tensuu/ScoreResolver.js.map +1 -0
- package/dist/tensuu/ScoreResult.d.ts +12 -0
- package/dist/tensuu/ScoreResult.d.ts.map +1 -0
- package/dist/tensuu/ScoreResult.js +17 -0
- package/dist/tensuu/ScoreResult.js.map +1 -0
- package/dist/tensuu/TensuuCalculator.d.ts +14 -0
- package/dist/tensuu/TensuuCalculator.d.ts.map +1 -0
- package/dist/tensuu/TensuuCalculator.js +39 -0
- package/dist/tensuu/TensuuCalculator.js.map +1 -0
- package/dist/tensuu/TensuuResult.d.ts +15 -0
- package/dist/tensuu/TensuuResult.d.ts.map +1 -0
- package/dist/tensuu/TensuuResult.js +15 -0
- package/dist/tensuu/TensuuResult.js.map +1 -0
- package/dist/tests/shanten/chitoitsu.d.ts +6 -0
- package/dist/tests/shanten/chitoitsu.d.ts.map +1 -0
- package/dist/tests/shanten/chitoitsu.js +43 -0
- package/dist/tests/shanten/chitoitsu.js.map +1 -0
- package/dist/tests/shanten/kokushi.d.ts +6 -0
- package/dist/tests/shanten/kokushi.d.ts.map +1 -0
- package/dist/tests/shanten/kokushi.js +23 -0
- package/dist/tests/shanten/kokushi.js.map +1 -0
- package/dist/tests/shanten/normal.d.ts +6 -0
- package/dist/tests/shanten/normal.d.ts.map +1 -0
- package/dist/tests/shanten/normal.js +118 -0
- package/dist/tests/shanten/normal.js.map +1 -0
- package/dist/tests/shanten.test.js +6 -2
- package/dist/tests/shanten.test.js.map +1 -1
- package/dist/tests/tensuu/fu.d.ts.map +1 -1
- package/dist/tests/tensuu/fu.js +43 -0
- package/dist/tests/tensuu/fu.js.map +1 -1
- package/dist/tileDefs.d.ts +42 -0
- package/dist/tileDefs.d.ts.map +1 -0
- package/dist/tileDefs.js +20 -0
- package/dist/tileDefs.js.map +1 -0
- package/dist/yaku/NormalYakuChecker.d.ts +7 -0
- package/dist/yaku/NormalYakuChecker.d.ts.map +1 -0
- package/dist/yaku/NormalYakuChecker.js +30 -0
- package/dist/yaku/NormalYakuChecker.js.map +1 -0
- package/dist/yaku/YakuChecker.d.ts +7 -0
- package/dist/yaku/YakuChecker.d.ts.map +1 -0
- package/dist/yaku/YakuChecker.js +23 -0
- package/dist/yaku/YakuChecker.js.map +1 -0
- package/dist/yaku/YakuCheckerBase.d.ts +33 -0
- package/dist/yaku/YakuCheckerBase.d.ts.map +1 -0
- package/dist/yaku/YakuCheckerBase.js +150 -0
- package/dist/yaku/YakuCheckerBase.js.map +1 -0
- package/dist/yaku/YakuContext.d.ts +14 -0
- package/dist/yaku/YakuContext.d.ts.map +1 -0
- package/dist/yaku/YakuContext.js +17 -0
- package/dist/yaku/YakuContext.js.map +1 -0
- package/dist/yaku/YakumanChecker.d.ts +7 -0
- package/dist/yaku/YakumanChecker.d.ts.map +1 -0
- package/dist/yaku/YakumanChecker.js +32 -0
- package/dist/yaku/YakumanChecker.js.map +1 -0
- package/dist/yaku/index.d.ts +6 -0
- package/dist/yaku/index.d.ts.map +1 -0
- package/dist/yaku/index.js +82 -0
- package/dist/yaku/index.js.map +1 -0
- package/dist/yaku/normal/ChinitsuChecker.d.ts +9 -0
- package/dist/yaku/normal/ChinitsuChecker.d.ts.map +1 -0
- package/dist/yaku/normal/ChinitsuChecker.js +20 -0
- package/dist/yaku/normal/ChinitsuChecker.js.map +1 -0
- package/dist/yaku/normal/ChitoitsuChecker.d.ts +8 -0
- package/dist/yaku/normal/ChitoitsuChecker.d.ts.map +1 -0
- package/dist/yaku/normal/ChitoitsuChecker.js +16 -0
- package/dist/yaku/normal/ChitoitsuChecker.js.map +1 -0
- package/dist/yaku/normal/DaburiiChecker.d.ts +8 -0
- package/dist/yaku/normal/DaburiiChecker.d.ts.map +1 -0
- package/dist/yaku/normal/DaburiiChecker.js +14 -0
- package/dist/yaku/normal/DaburiiChecker.js.map +1 -0
- package/dist/yaku/normal/DoukouChecker.d.ts +8 -0
- package/dist/yaku/normal/DoukouChecker.d.ts.map +1 -0
- package/dist/yaku/normal/DoukouChecker.js +13 -0
- package/dist/yaku/normal/DoukouChecker.js.map +1 -0
- package/dist/yaku/normal/HonchanChecker.d.ts +8 -0
- package/dist/yaku/normal/HonchanChecker.d.ts.map +1 -0
- package/dist/yaku/normal/HonchanChecker.js +18 -0
- package/dist/yaku/normal/HonchanChecker.js.map +1 -0
- package/dist/yaku/normal/HonitsuChecker.d.ts +8 -0
- package/dist/yaku/normal/HonitsuChecker.d.ts.map +1 -0
- package/dist/yaku/normal/HonitsuChecker.js +16 -0
- package/dist/yaku/normal/HonitsuChecker.js.map +1 -0
- package/dist/yaku/normal/HonrotoChecker.d.ts +8 -0
- package/dist/yaku/normal/HonrotoChecker.d.ts.map +1 -0
- package/dist/yaku/normal/HonrotoChecker.js +17 -0
- package/dist/yaku/normal/HonrotoChecker.js.map +1 -0
- package/dist/yaku/normal/IipekoChecker.d.ts +8 -0
- package/dist/yaku/normal/IipekoChecker.d.ts.map +1 -0
- package/dist/yaku/normal/IipekoChecker.js +14 -0
- package/dist/yaku/normal/IipekoChecker.js.map +1 -0
- package/dist/yaku/normal/IppatsuChecker.d.ts +8 -0
- package/dist/yaku/normal/IppatsuChecker.d.ts.map +1 -0
- package/dist/yaku/normal/IppatsuChecker.js +12 -0
- package/dist/yaku/normal/IppatsuChecker.js.map +1 -0
- package/dist/yaku/normal/IttsuuChecker.d.ts +8 -0
- package/dist/yaku/normal/IttsuuChecker.d.ts.map +1 -0
- package/dist/yaku/normal/IttsuuChecker.js +21 -0
- package/dist/yaku/normal/IttsuuChecker.js.map +1 -0
- package/dist/yaku/normal/JunchanChecker.d.ts +8 -0
- package/dist/yaku/normal/JunchanChecker.d.ts.map +1 -0
- package/dist/yaku/normal/JunchanChecker.js +15 -0
- package/dist/yaku/normal/JunchanChecker.js.map +1 -0
- package/dist/yaku/normal/KazehaiChecker.d.ts +11 -0
- package/dist/yaku/normal/KazehaiChecker.d.ts.map +1 -0
- package/dist/yaku/normal/KazehaiChecker.js +20 -0
- package/dist/yaku/normal/KazehaiChecker.js.map +1 -0
- package/dist/yaku/normal/MenzenTsumoChecker.d.ts +8 -0
- package/dist/yaku/normal/MenzenTsumoChecker.d.ts.map +1 -0
- package/dist/yaku/normal/MenzenTsumoChecker.js +12 -0
- package/dist/yaku/normal/MenzenTsumoChecker.js.map +1 -0
- package/dist/yaku/normal/PinfuChecker.d.ts +8 -0
- package/dist/yaku/normal/PinfuChecker.d.ts.map +1 -0
- package/dist/yaku/normal/PinfuChecker.js +26 -0
- package/dist/yaku/normal/PinfuChecker.js.map +1 -0
- package/dist/yaku/normal/RenpuuhaiChecker.d.ts +8 -0
- package/dist/yaku/normal/RenpuuhaiChecker.d.ts.map +1 -0
- package/dist/yaku/normal/RenpuuhaiChecker.js +18 -0
- package/dist/yaku/normal/RenpuuhaiChecker.js.map +1 -0
- package/dist/yaku/normal/RiichiChecker.d.ts +8 -0
- package/dist/yaku/normal/RiichiChecker.d.ts.map +1 -0
- package/dist/yaku/normal/RiichiChecker.js +14 -0
- package/dist/yaku/normal/RiichiChecker.js.map +1 -0
- package/dist/yaku/normal/RyanpekoChecker.d.ts +8 -0
- package/dist/yaku/normal/RyanpekoChecker.d.ts.map +1 -0
- package/dist/yaku/normal/RyanpekoChecker.js +14 -0
- package/dist/yaku/normal/RyanpekoChecker.js.map +1 -0
- package/dist/yaku/normal/SanankoChecker.d.ts +8 -0
- package/dist/yaku/normal/SanankoChecker.d.ts.map +1 -0
- package/dist/yaku/normal/SanankoChecker.js +13 -0
- package/dist/yaku/normal/SanankoChecker.js.map +1 -0
- package/dist/yaku/normal/SankantsuChecker.d.ts +8 -0
- package/dist/yaku/normal/SankantsuChecker.d.ts.map +1 -0
- package/dist/yaku/normal/SankantsuChecker.js +13 -0
- package/dist/yaku/normal/SankantsuChecker.js.map +1 -0
- package/dist/yaku/normal/SanshokuChecker.d.ts +8 -0
- package/dist/yaku/normal/SanshokuChecker.d.ts.map +1 -0
- package/dist/yaku/normal/SanshokuChecker.js +13 -0
- package/dist/yaku/normal/SanshokuChecker.js.map +1 -0
- package/dist/yaku/normal/ShosangenChecker.d.ts +8 -0
- package/dist/yaku/normal/ShosangenChecker.d.ts.map +1 -0
- package/dist/yaku/normal/ShosangenChecker.js +16 -0
- package/dist/yaku/normal/ShosangenChecker.js.map +1 -0
- package/dist/yaku/normal/TanyaoChecker.d.ts +8 -0
- package/dist/yaku/normal/TanyaoChecker.d.ts.map +1 -0
- package/dist/yaku/normal/TanyaoChecker.js +14 -0
- package/dist/yaku/normal/TanyaoChecker.js.map +1 -0
- package/dist/yaku/normal/ToitoiChecker.d.ts +8 -0
- package/dist/yaku/normal/ToitoiChecker.d.ts.map +1 -0
- package/dist/yaku/normal/ToitoiChecker.js +13 -0
- package/dist/yaku/normal/ToitoiChecker.js.map +1 -0
- package/dist/yaku/normal/YakuhaiChecker.d.ts +9 -0
- package/dist/yaku/normal/YakuhaiChecker.d.ts.map +1 -0
- package/dist/yaku/normal/YakuhaiChecker.js +18 -0
- package/dist/yaku/normal/YakuhaiChecker.js.map +1 -0
- package/dist/yaku/yakuman/ChinrotoChecker.d.ts +6 -0
- package/dist/yaku/yakuman/ChinrotoChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/ChinrotoChecker.js +9 -0
- package/dist/yaku/yakuman/ChinrotoChecker.js.map +1 -0
- package/dist/yaku/yakuman/Churen9Checker.d.ts +10 -0
- package/dist/yaku/yakuman/Churen9Checker.d.ts.map +1 -0
- package/dist/yaku/yakuman/Churen9Checker.js +13 -0
- package/dist/yaku/yakuman/Churen9Checker.js.map +1 -0
- package/dist/yaku/yakuman/ChurenChecker.d.ts +7 -0
- package/dist/yaku/yakuman/ChurenChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/ChurenChecker.js +29 -0
- package/dist/yaku/yakuman/ChurenChecker.js.map +1 -0
- package/dist/yaku/yakuman/DaisangenChecker.d.ts +6 -0
- package/dist/yaku/yakuman/DaisangenChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/DaisangenChecker.js +11 -0
- package/dist/yaku/yakuman/DaisangenChecker.js.map +1 -0
- package/dist/yaku/yakuman/DaisushiChecker.d.ts +8 -0
- package/dist/yaku/yakuman/DaisushiChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/DaisushiChecker.js +16 -0
- package/dist/yaku/yakuman/DaisushiChecker.js.map +1 -0
- package/dist/yaku/yakuman/ExtendedYakumanChecker.d.ts +9 -0
- package/dist/yaku/yakuman/ExtendedYakumanChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/ExtendedYakumanChecker.js +14 -0
- package/dist/yaku/yakuman/ExtendedYakumanChecker.js.map +1 -0
- package/dist/yaku/yakuman/Kokushi13Checker.d.ts +10 -0
- package/dist/yaku/yakuman/Kokushi13Checker.d.ts.map +1 -0
- package/dist/yaku/yakuman/Kokushi13Checker.js +13 -0
- package/dist/yaku/yakuman/Kokushi13Checker.js.map +1 -0
- package/dist/yaku/yakuman/KokushiChecker.d.ts +7 -0
- package/dist/yaku/yakuman/KokushiChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/KokushiChecker.js +14 -0
- package/dist/yaku/yakuman/KokushiChecker.js.map +1 -0
- package/dist/yaku/yakuman/RyuisoChecker.d.ts +6 -0
- package/dist/yaku/yakuman/RyuisoChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/RyuisoChecker.js +13 -0
- package/dist/yaku/yakuman/RyuisoChecker.js.map +1 -0
- package/dist/yaku/yakuman/ShosushiChecker.d.ts +6 -0
- package/dist/yaku/yakuman/ShosushiChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/ShosushiChecker.js +11 -0
- package/dist/yaku/yakuman/ShosushiChecker.js.map +1 -0
- package/dist/yaku/yakuman/SuankoChecker.d.ts +7 -0
- package/dist/yaku/yakuman/SuankoChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/SuankoChecker.js +13 -0
- package/dist/yaku/yakuman/SuankoChecker.js.map +1 -0
- package/dist/yaku/yakuman/SuankoTankiChecker.d.ts +8 -0
- package/dist/yaku/yakuman/SuankoTankiChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/SuankoTankiChecker.js +24 -0
- package/dist/yaku/yakuman/SuankoTankiChecker.js.map +1 -0
- package/dist/yaku/yakuman/SukantsuChecker.d.ts +6 -0
- package/dist/yaku/yakuman/SukantsuChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/SukantsuChecker.js +8 -0
- package/dist/yaku/yakuman/SukantsuChecker.js.map +1 -0
- package/dist/yaku/yakuman/TsuisoChecker.d.ts +6 -0
- package/dist/yaku/yakuman/TsuisoChecker.d.ts.map +1 -0
- package/dist/yaku/yakuman/TsuisoChecker.js +9 -0
- package/dist/yaku/yakuman/TsuisoChecker.js.map +1 -0
- package/modules/ShantenCalculator.ts +5 -5
- package/modules/tensuu/FuCalculator.ts +5 -3
- package/modules/tensuu/ScoreResolver.ts +8 -1
- package/modules/tensuu/ScoreResult.ts +17 -14
- package/modules/yaku/NormalYakuChecker.ts +0 -1
- package/modules/yaku/YakumanChecker.ts +3 -3
- package/modules/yaku/index.ts +23 -18
- package/modules/yaku/normal/IppatsuChecker.ts +15 -0
- package/package.json +1 -1
- package/tests/shanten/chitoitsu.ts +42 -0
- package/tests/shanten/kokushi.ts +23 -0
- package/tests/shanten/{test1.ts → normal.ts} +7 -32
- package/tests/shanten.test.ts +6 -2
- package/tests/tensuu/fu.ts +43 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export class ScoreResult {
|
|
2
|
+
han;
|
|
3
|
+
fuBasic;
|
|
4
|
+
fuCeiled;
|
|
5
|
+
tensuu;
|
|
6
|
+
hanName;
|
|
7
|
+
fuDetail;
|
|
8
|
+
constructor(han, fuBasic, fuCeiled, tensuu, hanName, fuDetail) {
|
|
9
|
+
this.han = han;
|
|
10
|
+
this.fuBasic = fuBasic;
|
|
11
|
+
this.fuCeiled = fuCeiled;
|
|
12
|
+
this.tensuu = tensuu;
|
|
13
|
+
this.hanName = hanName;
|
|
14
|
+
this.fuDetail = fuDetail;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=ScoreResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScoreResult.js","sourceRoot":"","sources":["../../modules/tensuu/ScoreResult.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,WAAW;IACJ,GAAG,CAAS;IACZ,OAAO,CAAS;IAChB,QAAQ,CAAS;IACjB,MAAM,CAAe;IACrB,OAAO,CAAS;IAChB,QAAQ,CAAa;IAErC,YACI,GAAW,EACX,OAAe,EACf,QAAgB,EAChB,MAAoB,EACpB,OAAe,EACf,QAAoB;QAEpB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TensuuResult } from './TensuuResult.js';
|
|
2
|
+
export declare class TensuuCalculator {
|
|
3
|
+
static readonly BASE_LIMITS: {
|
|
4
|
+
han: number;
|
|
5
|
+
base: number;
|
|
6
|
+
name: string;
|
|
7
|
+
}[];
|
|
8
|
+
static calcBaseTensuu(han: number, fu: number): number;
|
|
9
|
+
static calcRonTensuu(base: number, multi: number): number;
|
|
10
|
+
static calcdividedTensuu(ronTensuu: number, divide: number): number;
|
|
11
|
+
static calcTensuuFromBase(base: number): TensuuResult;
|
|
12
|
+
static calcTensuu(han: number, fu: number): TensuuResult;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=TensuuCalculator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TensuuCalculator.d.ts","sourceRoot":"","sources":["../../modules/tensuu/TensuuCalculator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,qBAAa,gBAAgB;IACzB,MAAM,CAAC,QAAQ,CAAC,WAAW;;;;QAWzB;IAEF,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAItD,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAIzD,MAAM,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAI1D,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY;IASrD,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY;CAM3D"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { TensuuResult } from './TensuuResult.js';
|
|
2
|
+
export class TensuuCalculator {
|
|
3
|
+
static BASE_LIMITS = [
|
|
4
|
+
{ han: 78, base: 48000, name: "六倍役満" },
|
|
5
|
+
{ han: 65, base: 40000, name: "五倍役満" },
|
|
6
|
+
{ han: 52, base: 32000, name: "四倍役満" },
|
|
7
|
+
{ han: 39, base: 24000, name: "三倍役満" },
|
|
8
|
+
{ han: 26, base: 16000, name: "二倍役満" },
|
|
9
|
+
{ han: 13, base: 8000, name: "役満" },
|
|
10
|
+
{ han: 11, base: 6000, name: "三倍満" },
|
|
11
|
+
{ han: 8, base: 4000, name: "倍満" },
|
|
12
|
+
{ han: 6, base: 3000, name: "跳満" },
|
|
13
|
+
{ han: 5, base: 2000, name: "満貫" },
|
|
14
|
+
];
|
|
15
|
+
static calcBaseTensuu(han, fu) {
|
|
16
|
+
return Math.min(fu * Math.pow(2, han + 2), 2000);
|
|
17
|
+
}
|
|
18
|
+
static calcRonTensuu(base, multi) {
|
|
19
|
+
return Math.ceil(base * multi / 100) * 100;
|
|
20
|
+
}
|
|
21
|
+
static calcdividedTensuu(ronTensuu, divide) {
|
|
22
|
+
return Math.ceil(Math.floor(ronTensuu / divide) / 100) * 100;
|
|
23
|
+
}
|
|
24
|
+
static calcTensuuFromBase(base) {
|
|
25
|
+
const ronOya = this.calcRonTensuu(base, 6);
|
|
26
|
+
const ronKo = this.calcRonTensuu(base, 4);
|
|
27
|
+
const tsumoOya = this.calcdividedTensuu(ronOya, 3);
|
|
28
|
+
const tsumoKo = { oya: this.calcdividedTensuu(ronKo, 2), ko: this.calcdividedTensuu(ronKo, 4) };
|
|
29
|
+
return new TensuuResult(base, ronOya, ronKo, tsumoOya, tsumoKo);
|
|
30
|
+
}
|
|
31
|
+
static calcTensuu(han, fu) {
|
|
32
|
+
for (const limit of this.BASE_LIMITS) {
|
|
33
|
+
if (han >= limit.han)
|
|
34
|
+
return this.calcTensuuFromBase(limit.base);
|
|
35
|
+
}
|
|
36
|
+
return this.calcTensuuFromBase(this.calcBaseTensuu(han, fu));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=TensuuCalculator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TensuuCalculator.js","sourceRoot":"","sources":["../../modules/tensuu/TensuuCalculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare class TensuuResult {
|
|
2
|
+
readonly base: number;
|
|
3
|
+
readonly ronOya: number;
|
|
4
|
+
readonly ronKo: number;
|
|
5
|
+
readonly tsumoOya: number;
|
|
6
|
+
readonly tsumoKo: {
|
|
7
|
+
oya: number;
|
|
8
|
+
ko: number;
|
|
9
|
+
};
|
|
10
|
+
constructor(base: number, ronOya: number, ronKo: number, tsumoOya: number, tsumoKo: {
|
|
11
|
+
oya: number;
|
|
12
|
+
ko: number;
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=TensuuResult.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TensuuResult.d.ts","sourceRoot":"","sources":["../../modules/tensuu/TensuuResult.ts"],"names":[],"mappings":"AAAA,qBAAa,YAAY;IACrB,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,OAAO,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC,CAAC;gBAG/C,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC;CAQzC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export class TensuuResult {
|
|
2
|
+
base;
|
|
3
|
+
ronOya;
|
|
4
|
+
ronKo;
|
|
5
|
+
tsumoOya;
|
|
6
|
+
tsumoKo;
|
|
7
|
+
constructor(base, ronOya, ronKo, tsumoOya, tsumoKo) {
|
|
8
|
+
this.base = base;
|
|
9
|
+
this.ronOya = ronOya;
|
|
10
|
+
this.ronKo = ronKo;
|
|
11
|
+
this.tsumoOya = tsumoOya;
|
|
12
|
+
this.tsumoKo = tsumoKo;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=TensuuResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TensuuResult.js","sourceRoot":"","sources":["../../modules/tensuu/TensuuResult.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,YAAY;IACL,IAAI,CAAS;IACb,MAAM,CAAS;IACf,KAAK,CAAS;IACd,QAAQ,CAAS;IACjB,OAAO,CAA4B;IAEnD,YACI,IAAY,EACZ,MAAc,EACd,KAAa,EACb,QAAgB,EAChB,OAAkC;QAElC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chitoitsu.d.ts","sourceRoot":"","sources":["../../../tests/shanten/chitoitsu.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;GAyCvB,CAAA"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export const casesChitoi = [
|
|
2
|
+
{
|
|
3
|
+
name: "chitoi_1",
|
|
4
|
+
hais: [1, 1, 4, 4, 9, 9, 13, 13, 17, 17, 21, 21, 28, 28],
|
|
5
|
+
expected: -1
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
name: "chitoi_2",
|
|
9
|
+
hais: [1, 1, 4, 4, 9, 9, 13, 13, 17, 17, 21, 21, 28],
|
|
10
|
+
expected: 0
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
name: "chitoi_3",
|
|
14
|
+
hais: [2, 2, 2, 6, 6, 9, 9, 14, 14, 19, 19, 21, 21],
|
|
15
|
+
expected: 1
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
name: "chitoi_4",
|
|
19
|
+
hais: [2, 2, 2, 5, 7, 9, 9, 14, 14, 19, 19, 21, 21],
|
|
20
|
+
expected: 1
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: "chitoi_5",
|
|
24
|
+
hais: [1, 1, 1, 5, 5, 9, 9, 13, 13, 18, 18, 23, 23],
|
|
25
|
+
expected: 1
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
name: "chitoi_6",
|
|
29
|
+
hais: [2, 2, 2, 2, 7, 9, 9, 14, 14, 19, 19, 21, 21],
|
|
30
|
+
expected: 2
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
name: "chitoi_7",
|
|
34
|
+
hais: [2, 2, 2, 2, 7, 9, 11, 14, 14, 19, 19, 21, 21],
|
|
35
|
+
expected: 2
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: "chitoi_8",
|
|
39
|
+
hais: [1, 4, 9, 11, 14, 19, 21, 23, 24, 28, 29, 30, 31],
|
|
40
|
+
expected: 6
|
|
41
|
+
},
|
|
42
|
+
];
|
|
43
|
+
//# sourceMappingURL=chitoitsu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chitoitsu.js","sourceRoot":"","sources":["../../../tests/shanten/chitoitsu.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QAC3C,QAAQ,EAAE,CAAC,CAAC;KACb;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QACxC,QAAQ,EAAE,CAAC;KACZ;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QACvC,QAAQ,EAAE,CAAC;KACZ;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QACvC,QAAQ,EAAE,CAAC;KACZ;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QACvC,QAAQ,EAAE,CAAC;KACZ;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QACvC,QAAQ,EAAE,CAAC;KACZ;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QACxC,QAAQ,EAAE,CAAC;KACZ;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QAC3C,QAAQ,EAAE,CAAC;KACZ;CACF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kokushi.d.ts","sourceRoot":"","sources":["../../../tests/shanten/kokushi.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY;;;;GAqBxB,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export const casesKokushi = [
|
|
2
|
+
{
|
|
3
|
+
name: "kokushi_1",
|
|
4
|
+
hais: [1, 9, 10, 18, 19, 27, 28, 29, 30, 31, 32, 33, 34],
|
|
5
|
+
expected: 0
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
name: "kokushi_2",
|
|
9
|
+
hais: [1, 9, 10, 10, 19, 27, 28, 29, 30, 31, 32, 33, 34],
|
|
10
|
+
expected: 0
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
name: "kokushi_3",
|
|
14
|
+
hais: [1, 9, 10, 17, 19, 27, 28, 29, 30, 31, 32, 33, 34],
|
|
15
|
+
expected: 1
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
name: "kokushi_4",
|
|
19
|
+
hais: [1, 9, 10, 10, 10, 27, 28, 29, 30, 31, 32, 33, 34],
|
|
20
|
+
expected: 1
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
//# sourceMappingURL=kokushi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kokushi.js","sourceRoot":"","sources":["../../../tests/shanten/kokushi.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QAC5C,QAAQ,EAAE,CAAC;KACZ;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QAC5C,QAAQ,EAAE,CAAC;KACZ;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QAC5C,QAAQ,EAAE,CAAC;KACZ;IACD;QACE,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;QAC5C,QAAQ,EAAE,CAAC;KACZ;CACF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normal.d.ts","sourceRoot":"","sources":["../../../tests/shanten/normal.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;GAoHvB,CAAA"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
export const casesNormal = [
|
|
2
|
+
{
|
|
3
|
+
name: "naki_1_1",
|
|
4
|
+
hais: [1, 2, 3, 4, 5, 6, 7, 8, 10, 11],
|
|
5
|
+
expected: 1
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
name: "naki_1_2",
|
|
9
|
+
hais: [1, 2, 3, 4, 5, 6, 7, 8, 9, 11],
|
|
10
|
+
expected: 0
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
name: "naki_2_1",
|
|
14
|
+
hais: [1, 2, 3, 4, 5, 6, 7],
|
|
15
|
+
expected: 0
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
name: "naki_2_2",
|
|
19
|
+
hais: [1, 2, 3, 4, 5, 8, 9],
|
|
20
|
+
expected: 1
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: "naki_3_1",
|
|
24
|
+
hais: [1, 2, 4, 5],
|
|
25
|
+
expected: 1
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
name: "naki_3_2",
|
|
29
|
+
hais: [1, 2, 3, 4],
|
|
30
|
+
expected: 0
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
name: "naki_4",
|
|
34
|
+
hais: [1],
|
|
35
|
+
expected: 0
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: "churenagari",
|
|
39
|
+
hais: [1, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 9, 9],
|
|
40
|
+
expected: -1
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: "churen9",
|
|
44
|
+
hais: [1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 9, 9],
|
|
45
|
+
expected: 0
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: "tenpai_1",
|
|
49
|
+
hais: [1, 1, 1, 2, 3, 4, 5, 5, 6, 7, 8, 8, 9],
|
|
50
|
+
expected: 0
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
name: "shanten1_1",
|
|
54
|
+
hais: [1, 1, 1, 2, 3, 4, 5, 5, 5, 6, 8, 8, 9],
|
|
55
|
+
expected: 1
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
name: "shanten1_2",
|
|
59
|
+
hais: [1, 1, 1, 2, 3, 3, 4, 5, 5, 6, 8, 8, 9],
|
|
60
|
+
expected: 1
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: "shanten1_3",
|
|
64
|
+
hais: [1, 1, 1, 2, 5, 12, 12, 12, 13, 14, 15, 17, 17],
|
|
65
|
+
expected: 1
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
name: "shanten1_4",
|
|
69
|
+
hais: [1, 2, 3, 4, 5, 6, 7, 28, 28, 31, 31, 32, 32],
|
|
70
|
+
expected: 1
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
name: "shanten1_5",
|
|
74
|
+
hais: [1, 1, 1, 1, 4, 4, 4, 4, 7, 7, 7, 7, 9],
|
|
75
|
+
expected: 1
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
name: "shanten2_1",
|
|
79
|
+
hais: [1, 1, 1, 2, 5, 11, 12, 12, 13, 14, 15, 17, 18],
|
|
80
|
+
expected: 2
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
name: "shanten2_2",
|
|
84
|
+
hais: [1, 1, 1, 2, 5, 11, 12, 13, 14, 15, 17, 18, 28],
|
|
85
|
+
expected: 2
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
name: "shanten3_1",
|
|
89
|
+
hais: [1, 1, 1, 2, 5, 12, 12, 13, 14, 15, 17, 28, 29],
|
|
90
|
+
expected: 3
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: "shanten3_2",
|
|
94
|
+
hais: [1, 2, 4, 5, 7, 8, 12, 13, 15, 17, 19, 19, 22],
|
|
95
|
+
expected: 3
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
name: "shanten4_1",
|
|
99
|
+
hais: [1, 2, 3, 5, 9, 11, 13, 17, 20, 25, 26, 31, 32],
|
|
100
|
+
expected: 4
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
name: "shanten5_1",
|
|
104
|
+
hais: [1, 2, 3, 5, 9, 11, 13, 17, 20, 25, 29, 31, 32],
|
|
105
|
+
expected: 5
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
name: "shanten6_1",
|
|
109
|
+
hais: [1, 3, 5, 9, 11, 13, 17, 20, 25, 29, 31, 32, 33],
|
|
110
|
+
expected: 6
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
name: "shanten6_3",
|
|
114
|
+
hais: [1, 4, 8, 11, 14, 17, 22, 27, 28, 29, 30, 32, 33],
|
|
115
|
+
expected: 6
|
|
116
|
+
}
|
|
117
|
+
];
|
|
118
|
+
//# sourceMappingURL=normal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normal.js","sourceRoot":"","sources":["../../../tests/shanten/normal.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { Hai } from '../modules/Hai';
|
|
2
|
-
import {
|
|
2
|
+
import { casesNormal } from './shanten/normal';
|
|
3
|
+
import { casesChitoi } from './shanten/chitoitsu';
|
|
4
|
+
import { casesKokushi } from './shanten/kokushi';
|
|
3
5
|
import { ShantenCalculator } from '../modules/ShantenCalculator';
|
|
4
6
|
const testcases = new Map();
|
|
5
|
-
testcases.set("
|
|
7
|
+
testcases.set("normal", casesNormal);
|
|
8
|
+
testcases.set("chitoitsu", casesChitoi);
|
|
9
|
+
testcases.set("kokushi", casesKokushi);
|
|
6
10
|
testcases.forEach((value, key) => {
|
|
7
11
|
describe(key, () => {
|
|
8
12
|
test.each(value)('$name', ({ hais, expected }) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shanten.test.js","sourceRoot":"","sources":["../../tests/shanten.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"shanten.test.js","sourceRoot":"","sources":["../../tests/shanten.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAQjE,MAAM,SAAS,GAA+B,IAAI,GAAG,EAAE,CAAC;AACxD,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;AACrC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AACxC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAEvC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC7B,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;QACf,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAC,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YAC7E,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fu.d.ts","sourceRoot":"","sources":["../../../tests/tensuu/fu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAY,SAAS,EAAE,MAAM,eAAe,CAAC;AAM5D,eAAO,MAAM,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"fu.d.ts","sourceRoot":"","sources":["../../../tests/tensuu/fu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAY,SAAS,EAAE,MAAM,eAAe,CAAC;AAM5D,eAAO,MAAM,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EA0TzC,CAAC"}
|
package/dist/tests/tensuu/fu.js
CHANGED
|
@@ -36,6 +36,49 @@ export const caseFu = [
|
|
|
36
36
|
[{ name: "七対子", fu: 25 }]
|
|
37
37
|
]
|
|
38
38
|
},
|
|
39
|
+
{
|
|
40
|
+
name: "kuipinfu_1",
|
|
41
|
+
desc: "喰い平和",
|
|
42
|
+
agariHai: 12,
|
|
43
|
+
isTsumo: false,
|
|
44
|
+
melds: [
|
|
45
|
+
{ hai: 1, type: MeldType.CHI },
|
|
46
|
+
{ hai: 4, type: MeldType.CHI },
|
|
47
|
+
{ hai: 7, type: MeldType.CHI },
|
|
48
|
+
],
|
|
49
|
+
hais: [12, 13, 14, 16, 16],
|
|
50
|
+
expected: [
|
|
51
|
+
[{ name: "喰い平和", fu: 30 }]
|
|
52
|
+
]
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
name: "kuipinfu_2",
|
|
56
|
+
desc: "喰い平和",
|
|
57
|
+
agariHai: 12,
|
|
58
|
+
isTsumo: false,
|
|
59
|
+
kuitan: true,
|
|
60
|
+
melds: [
|
|
61
|
+
{ hai: 2, type: MeldType.CHI },
|
|
62
|
+
],
|
|
63
|
+
hais: [4, 5, 6, 7, 8, 9, 12, 13, 14, 16, 16],
|
|
64
|
+
expected: [
|
|
65
|
+
[{ name: "喰い平和", fu: 30 }]
|
|
66
|
+
]
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
name: "kuipinfu_3",
|
|
70
|
+
desc: "喰い平和",
|
|
71
|
+
agariHai: 18,
|
|
72
|
+
isTsumo: false,
|
|
73
|
+
kuitan: true,
|
|
74
|
+
melds: [
|
|
75
|
+
{ hai: 1, type: MeldType.CHI },
|
|
76
|
+
],
|
|
77
|
+
hais: [7, 8, 9, 10, 11, 12, 16, 17, 18, 27, 27],
|
|
78
|
+
expected: [
|
|
79
|
+
[{ name: "喰い平和", fu: 30 }]
|
|
80
|
+
]
|
|
81
|
+
},
|
|
39
82
|
{
|
|
40
83
|
name: "machi_tanki",
|
|
41
84
|
desc: "待ちの形",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fu.js","sourceRoot":"","sources":["../../../tests/tensuu/fu.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fu.js","sourceRoot":"","sources":["../../../tests/tensuu/fu.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export declare const TILE: {
|
|
2
|
+
readonly MANZU: readonly [1, 2, 3, 4, 5, 6, 7, 8, 9];
|
|
3
|
+
readonly PINZU: readonly [10, 11, 12, 13, 14, 15, 16, 17, 18];
|
|
4
|
+
readonly SOUZU: readonly [19, 20, 21, 22, 23, 24, 25, 26, 27];
|
|
5
|
+
readonly JIHAI: readonly [28, 29, 30, 31, 32, 33, 34];
|
|
6
|
+
readonly WIND: {
|
|
7
|
+
readonly EAST: {
|
|
8
|
+
readonly id: 28;
|
|
9
|
+
readonly name: "東";
|
|
10
|
+
};
|
|
11
|
+
readonly SOUTH: {
|
|
12
|
+
readonly id: 29;
|
|
13
|
+
readonly name: "南";
|
|
14
|
+
};
|
|
15
|
+
readonly WEST: {
|
|
16
|
+
readonly id: 30;
|
|
17
|
+
readonly name: "西";
|
|
18
|
+
};
|
|
19
|
+
readonly NORTH: {
|
|
20
|
+
readonly id: 31;
|
|
21
|
+
readonly name: "北";
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
readonly DRAGON: {
|
|
25
|
+
readonly WHITE: {
|
|
26
|
+
readonly id: 32;
|
|
27
|
+
readonly name: "白";
|
|
28
|
+
};
|
|
29
|
+
readonly GREEN: {
|
|
30
|
+
readonly id: 33;
|
|
31
|
+
readonly name: "發";
|
|
32
|
+
};
|
|
33
|
+
readonly RED: {
|
|
34
|
+
readonly id: 34;
|
|
35
|
+
readonly name: "中";
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
readonly BACK: 100;
|
|
39
|
+
};
|
|
40
|
+
export type Wind = typeof TILE.WIND[keyof typeof TILE.WIND];
|
|
41
|
+
export type Dragon = typeof TILE.DRAGON[keyof typeof TILE.DRAGON];
|
|
42
|
+
//# sourceMappingURL=tileDefs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tileDefs.d.ts","sourceRoot":"","sources":["../modules/tileDefs.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmBP,CAAC;AAEX,MAAM,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5D,MAAM,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC"}
|
package/dist/tileDefs.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//牌を数値として定義
|
|
2
|
+
export const TILE = {
|
|
3
|
+
MANZU: [1, 2, 3, 4, 5, 6, 7, 8, 9],
|
|
4
|
+
PINZU: [10, 11, 12, 13, 14, 15, 16, 17, 18],
|
|
5
|
+
SOUZU: [19, 20, 21, 22, 23, 24, 25, 26, 27],
|
|
6
|
+
JIHAI: [28, 29, 30, 31, 32, 33, 34],
|
|
7
|
+
WIND: {
|
|
8
|
+
EAST: { id: 28, name: "東" },
|
|
9
|
+
SOUTH: { id: 29, name: "南" },
|
|
10
|
+
WEST: { id: 30, name: "西" },
|
|
11
|
+
NORTH: { id: 31, name: "北" }
|
|
12
|
+
},
|
|
13
|
+
DRAGON: {
|
|
14
|
+
WHITE: { id: 32, name: "白" },
|
|
15
|
+
GREEN: { id: 33, name: "發" },
|
|
16
|
+
RED: { id: 34, name: "中" }
|
|
17
|
+
},
|
|
18
|
+
BACK: 100,
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=tileDefs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tileDefs.js","sourceRoot":"","sources":["../modules/tileDefs.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,MAAM,CAAC,MAAM,IAAI,GAAG;IAChB,KAAK,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;IACnC,KAAK,EAAE,CAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;IACnC,KAAK,EAAE,CAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,EAAC,EAAE,CAAC;IAE7B,IAAI,EAAE;QACF,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;QAC3B,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;QAC5B,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;QAC3B,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;KAC/B;IACD,MAAM,EAAE;QACJ,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;QAC5B,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;QAC5B,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;KAC7B;IAED,IAAI,EAAE,GAAG;CACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NormalYakuChecker.d.ts","sourceRoot":"","sources":["../../modules/yaku/NormalYakuChecker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,qBAAa,iBAAiB;IAC1B,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;gBAE5B,OAAO,EAAE,WAAW;IAKhC,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;CAkB/B"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { WinEvent } from '../MahjongConsts.js';
|
|
2
|
+
import { NormalYakuCheckers } from './index.js';
|
|
3
|
+
export class NormalYakuChecker {
|
|
4
|
+
context;
|
|
5
|
+
constructor(context) {
|
|
6
|
+
this.context = context;
|
|
7
|
+
}
|
|
8
|
+
//役判定
|
|
9
|
+
check() {
|
|
10
|
+
const yaku_map = new Map();
|
|
11
|
+
for (const Checker of NormalYakuCheckers) {
|
|
12
|
+
const checker = Checker(this.context);
|
|
13
|
+
if (checker.check())
|
|
14
|
+
yaku_map.set(checker.getName(), checker.getHan());
|
|
15
|
+
}
|
|
16
|
+
if (this.context.ctx.event === WinEvent.RINSHAN)
|
|
17
|
+
yaku_map.set("嶺上開花", 1);
|
|
18
|
+
if (this.context.ctx.event === WinEvent.CHANKAN)
|
|
19
|
+
yaku_map.set("槍槓", 1);
|
|
20
|
+
if (this.context.ctx.event === WinEvent.HAITEI)
|
|
21
|
+
yaku_map.set("海底摸月", 1);
|
|
22
|
+
if (this.context.ctx.event === WinEvent.HOUTEI)
|
|
23
|
+
yaku_map.set("河底撈魚", 1);
|
|
24
|
+
if (yaku_map.size > 0 && this.context.ctx.dora > 0) {
|
|
25
|
+
yaku_map.set("ドラ", this.context.ctx.dora);
|
|
26
|
+
}
|
|
27
|
+
return yaku_map;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=NormalYakuChecker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NormalYakuChecker.js","sourceRoot":"","sources":["../../modules/yaku/NormalYakuChecker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,OAAO,iBAAiB;IACP,OAAO,CAAc;IAExC,YAAY,OAAoB;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,KAAK;IACL,KAAK;QACD,MAAM,QAAQ,GAAwB,IAAI,GAAG,EAAE,CAAC;QAChD,KAAI,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtC,IAAG,OAAO,CAAC,KAAK,EAAE;gBAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,IAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,OAAO;YAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACxE,IAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,OAAO;YAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACtE,IAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,MAAM;YAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACvE,IAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,MAAM;YAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAEvE,IAAG,QAAQ,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,EAAC,CAAC;YAC/C,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ"}
|