@scrabble-solver/configs 2.12.2 → 2.12.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/build/games/index.d.ts +3 -0
- package/build/games/index.js +12 -0
- package/build/games/literaki.d.ts +25 -0
- package/build/games/literaki.js +110 -0
- package/build/games/scrabble.d.ts +18 -0
- package/build/games/scrabble.js +78 -0
- package/build/games/superScrabble.d.ts +18 -0
- package/build/games/superScrabble.js +141 -0
- package/build/getConfig.d.ts +2 -6
- package/build/getConfig.js +29 -10
- package/build/hasConfig.d.ts +3 -0
- package/build/hasConfig.js +31 -0
- package/build/index.d.ts +7 -4
- package/build/index.js +32 -9
- package/build/locales/deDe.d.ts +3 -0
- package/build/locales/deDe.js +42 -0
- package/build/locales/enGb.d.ts +3 -0
- package/build/locales/enGb.js +104 -0
- package/build/locales/enUs.d.ts +3 -0
- package/build/locales/enUs.js +104 -0
- package/build/locales/esEs.d.ts +3 -0
- package/build/locales/esEs.js +41 -0
- package/build/locales/faIr.d.ts +3 -0
- package/build/locales/faIr.js +45 -0
- package/build/locales/frFr.d.ts +3 -0
- package/build/locales/frFr.js +39 -0
- package/build/locales/index.d.ts +7 -0
- package/build/locales/index.js +20 -0
- package/build/locales/plPl.d.ts +3 -0
- package/build/locales/plPl.js +83 -0
- package/package.json +4 -4
- package/src/games/index.ts +3 -0
- package/src/games/literaki.ts +110 -0
- package/src/games/scrabble.ts +78 -0
- package/src/games/superScrabble.ts +141 -0
- package/src/getConfig.ts +8 -15
- package/src/hasConfig.ts +10 -0
- package/src/index.ts +7 -4
- package/src/locales/deDe.ts +43 -0
- package/src/locales/enGb.ts +105 -0
- package/src/locales/enUs.ts +105 -0
- package/src/locales/esEs.ts +42 -0
- package/src/locales/faIr.ts +46 -0
- package/src/locales/frFr.ts +40 -0
- package/src/locales/index.ts +7 -0
- package/src/locales/plPl.ts +84 -0
- package/build/getLocaleConfig.d.ts +0 -3
- package/build/getLocaleConfig.js +0 -10
- package/build/isConfigId.d.ts +0 -2
- package/build/isConfigId.js +0 -12
- package/build/literaki/bonuses.d.ts +0 -14
- package/build/literaki/bonuses.js +0 -99
- package/build/literaki/index.d.ts +0 -1
- package/build/literaki/index.js +0 -8
- package/build/literaki/literaki.d.ts +0 -13
- package/build/literaki/literaki.js +0 -31
- package/build/literaki/tiles/index.d.ts +0 -6
- package/build/literaki/tiles/index.js +0 -18
- package/build/literaki/tiles/tilesDe.d.ts +0 -6
- package/build/literaki/tiles/tilesDe.js +0 -34
- package/build/literaki/tiles/tilesEn.d.ts +0 -6
- package/build/literaki/tiles/tilesEn.js +0 -31
- package/build/literaki/tiles/tilesEs.d.ts +0 -6
- package/build/literaki/tiles/tilesEs.js +0 -33
- package/build/literaki/tiles/tilesFa.d.ts +0 -6
- package/build/literaki/tiles/tilesFa.js +0 -37
- package/build/literaki/tiles/tilesFr.d.ts +0 -6
- package/build/literaki/tiles/tilesFr.js +0 -31
- package/build/literaki/tiles/tilesPl.d.ts +0 -6
- package/build/literaki/tiles/tilesPl.js +0 -37
- package/build/scrabble/bonuses.d.ts +0 -7
- package/build/scrabble/bonuses.js +0 -67
- package/build/scrabble/index.d.ts +0 -1
- package/build/scrabble/index.js +0 -8
- package/build/scrabble/scrabble.d.ts +0 -13
- package/build/scrabble/scrabble.js +0 -31
- package/build/scrabble/tiles/index.d.ts +0 -6
- package/build/scrabble/tiles/index.js +0 -18
- package/build/scrabble/tiles/tilesDe.d.ts +0 -6
- package/build/scrabble/tiles/tilesDe.js +0 -34
- package/build/scrabble/tiles/tilesEn.d.ts +0 -6
- package/build/scrabble/tiles/tilesEn.js +0 -31
- package/build/scrabble/tiles/tilesEs.d.ts +0 -6
- package/build/scrabble/tiles/tilesEs.js +0 -33
- package/build/scrabble/tiles/tilesFa.d.ts +0 -6
- package/build/scrabble/tiles/tilesFa.js +0 -37
- package/build/scrabble/tiles/tilesFr.d.ts +0 -6
- package/build/scrabble/tiles/tilesFr.js +0 -31
- package/build/scrabble/tiles/tilesPl.d.ts +0 -6
- package/build/scrabble/tiles/tilesPl.js +0 -37
- package/src/getLocaleConfig.ts +0 -9
- package/src/isConfigId.ts +0 -10
- package/src/literaki/bonuses.ts +0 -99
- package/src/literaki/index.ts +0 -1
- package/src/literaki/literaki.ts +0 -30
- package/src/literaki/tiles/index.ts +0 -6
- package/src/literaki/tiles/tilesDe.ts +0 -33
- package/src/literaki/tiles/tilesEn.ts +0 -30
- package/src/literaki/tiles/tilesEs.ts +0 -32
- package/src/literaki/tiles/tilesFa.ts +0 -36
- package/src/literaki/tiles/tilesFr.ts +0 -30
- package/src/literaki/tiles/tilesPl.ts +0 -36
- package/src/scrabble/bonuses.ts +0 -67
- package/src/scrabble/index.ts +0 -1
- package/src/scrabble/scrabble.ts +0 -30
- package/src/scrabble/tiles/index.ts +0 -6
- package/src/scrabble/tiles/tilesDe.ts +0 -33
- package/src/scrabble/tiles/tilesEn.ts +0 -30
- package/src/scrabble/tiles/tilesEs.ts +0 -32
- package/src/scrabble/tiles/tilesFa.ts +0 -36
- package/src/scrabble/tiles/tilesFr.ts +0 -30
- package/src/scrabble/tiles/tilesPl.ts +0 -36
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { BONUS_CHARACTER, BONUS_WORD } from '@scrabble-solver/constants';
|
|
2
|
+
import { Game } from '@scrabble-solver/types';
|
|
3
|
+
|
|
4
|
+
const scrabble = {
|
|
5
|
+
allTilesBonusScore: 50,
|
|
6
|
+
blankScore: 0,
|
|
7
|
+
blanksCount: 2,
|
|
8
|
+
boardHeight: 15,
|
|
9
|
+
boardWidth: 15,
|
|
10
|
+
game: Game.Scrabble,
|
|
11
|
+
maximumCharactersCount: 7,
|
|
12
|
+
name: 'Scrabble',
|
|
13
|
+
bonuses: [
|
|
14
|
+
{ multiplier: 3, type: BONUS_WORD, x: 0, y: 0 },
|
|
15
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 3, y: 0 },
|
|
16
|
+
{ multiplier: 3, type: BONUS_WORD, x: 7, y: 0 },
|
|
17
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 11, y: 0 },
|
|
18
|
+
{ multiplier: 3, type: BONUS_WORD, x: 14, y: 0 },
|
|
19
|
+
{ multiplier: 2, type: BONUS_WORD, x: 1, y: 1 },
|
|
20
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 5, y: 1 },
|
|
21
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 9, y: 1 },
|
|
22
|
+
{ multiplier: 2, type: BONUS_WORD, x: 13, y: 1 },
|
|
23
|
+
{ multiplier: 2, type: BONUS_WORD, x: 2, y: 2 },
|
|
24
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 2 },
|
|
25
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 8, y: 2 },
|
|
26
|
+
{ multiplier: 2, type: BONUS_WORD, x: 12, y: 2 },
|
|
27
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 0, y: 3 },
|
|
28
|
+
{ multiplier: 2, type: BONUS_WORD, x: 3, y: 3 },
|
|
29
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 7, y: 3 },
|
|
30
|
+
{ multiplier: 2, type: BONUS_WORD, x: 11, y: 3 },
|
|
31
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 14, y: 3 },
|
|
32
|
+
{ multiplier: 2, type: BONUS_WORD, x: 4, y: 4 },
|
|
33
|
+
{ multiplier: 2, type: BONUS_WORD, x: 10, y: 4 },
|
|
34
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 1, y: 5 },
|
|
35
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 5, y: 5 },
|
|
36
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 9, y: 5 },
|
|
37
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 13, y: 5 },
|
|
38
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 2, y: 6 },
|
|
39
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 6 },
|
|
40
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 8, y: 6 },
|
|
41
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 12, y: 6 },
|
|
42
|
+
{ multiplier: 3, type: BONUS_WORD, x: 0, y: 7 },
|
|
43
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 3, y: 7 },
|
|
44
|
+
{ multiplier: 2, type: BONUS_WORD, x: 7, y: 7 },
|
|
45
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 11, y: 7 },
|
|
46
|
+
{ multiplier: 3, type: BONUS_WORD, x: 14, y: 7 },
|
|
47
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 2, y: 8 },
|
|
48
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 8 },
|
|
49
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 8, y: 8 },
|
|
50
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 12, y: 8 },
|
|
51
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 1, y: 9 },
|
|
52
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 5, y: 9 },
|
|
53
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 9, y: 9 },
|
|
54
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 13, y: 9 },
|
|
55
|
+
{ multiplier: 2, type: BONUS_WORD, x: 4, y: 10 },
|
|
56
|
+
{ multiplier: 2, type: BONUS_WORD, x: 10, y: 10 },
|
|
57
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 0, y: 11 },
|
|
58
|
+
{ multiplier: 2, type: BONUS_WORD, x: 3, y: 11 },
|
|
59
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 7, y: 11 },
|
|
60
|
+
{ multiplier: 2, type: BONUS_WORD, x: 11, y: 11 },
|
|
61
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 14, y: 11 },
|
|
62
|
+
{ multiplier: 2, type: BONUS_WORD, x: 2, y: 12 },
|
|
63
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 12 },
|
|
64
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 8, y: 12 },
|
|
65
|
+
{ multiplier: 2, type: BONUS_WORD, x: 12, y: 12 },
|
|
66
|
+
{ multiplier: 2, type: BONUS_WORD, x: 1, y: 13 },
|
|
67
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 5, y: 13 },
|
|
68
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 9, y: 13 },
|
|
69
|
+
{ multiplier: 2, type: BONUS_WORD, x: 13, y: 13 },
|
|
70
|
+
{ multiplier: 3, type: BONUS_WORD, x: 0, y: 14 },
|
|
71
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 3, y: 14 },
|
|
72
|
+
{ multiplier: 3, type: BONUS_WORD, x: 7, y: 14 },
|
|
73
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 11, y: 14 },
|
|
74
|
+
{ multiplier: 3, type: BONUS_WORD, x: 14, y: 14 },
|
|
75
|
+
],
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export default scrabble;
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { BONUS_CHARACTER, BONUS_WORD } from '@scrabble-solver/constants';
|
|
2
|
+
import { Game } from '@scrabble-solver/types';
|
|
3
|
+
|
|
4
|
+
const scrabble = {
|
|
5
|
+
allTilesBonusScore: 50,
|
|
6
|
+
blankScore: 0,
|
|
7
|
+
blanksCount: 4,
|
|
8
|
+
boardHeight: 21,
|
|
9
|
+
boardWidth: 21,
|
|
10
|
+
game: Game.SuperScrabble,
|
|
11
|
+
maximumCharactersCount: 7,
|
|
12
|
+
name: 'Super Scrabble',
|
|
13
|
+
bonuses: [
|
|
14
|
+
{ multiplier: 4, type: BONUS_WORD, x: 0, y: 0 },
|
|
15
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 3, y: 0 },
|
|
16
|
+
{ multiplier: 3, type: BONUS_WORD, x: 7, y: 0 },
|
|
17
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 10, y: 0 },
|
|
18
|
+
{ multiplier: 3, type: BONUS_WORD, x: 13, y: 0 },
|
|
19
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 17, y: 0 },
|
|
20
|
+
{ multiplier: 4, type: BONUS_WORD, x: 20, y: 0 },
|
|
21
|
+
{ multiplier: 2, type: BONUS_WORD, x: 1, y: 1 },
|
|
22
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 4, y: 1 },
|
|
23
|
+
{ multiplier: 2, type: BONUS_WORD, x: 8, y: 1 },
|
|
24
|
+
{ multiplier: 2, type: BONUS_WORD, x: 12, y: 1 },
|
|
25
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 16, y: 1 },
|
|
26
|
+
{ multiplier: 2, type: BONUS_WORD, x: 19, y: 1 },
|
|
27
|
+
{ multiplier: 2, type: BONUS_WORD, x: 2, y: 2 },
|
|
28
|
+
{ multiplier: 4, type: BONUS_CHARACTER, x: 5, y: 2 },
|
|
29
|
+
{ multiplier: 2, type: BONUS_WORD, x: 9, y: 2 },
|
|
30
|
+
{ multiplier: 2, type: BONUS_WORD, x: 11, y: 2 },
|
|
31
|
+
{ multiplier: 4, type: BONUS_CHARACTER, x: 15, y: 2 },
|
|
32
|
+
{ multiplier: 2, type: BONUS_WORD, x: 18, y: 2 },
|
|
33
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 0, y: 3 },
|
|
34
|
+
{ multiplier: 3, type: BONUS_WORD, x: 3, y: 3 },
|
|
35
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 3 },
|
|
36
|
+
{ multiplier: 3, type: BONUS_WORD, x: 10, y: 3 },
|
|
37
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 14, y: 3 },
|
|
38
|
+
{ multiplier: 3, type: BONUS_WORD, x: 17, y: 3 },
|
|
39
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 20, y: 3 },
|
|
40
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 1, y: 4 },
|
|
41
|
+
{ multiplier: 2, type: BONUS_WORD, x: 4, y: 4 },
|
|
42
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 8, y: 4 },
|
|
43
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 12, y: 4 },
|
|
44
|
+
{ multiplier: 2, type: BONUS_WORD, x: 16, y: 4 },
|
|
45
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 19, y: 4 },
|
|
46
|
+
{ multiplier: 4, type: BONUS_CHARACTER, x: 2, y: 5 },
|
|
47
|
+
{ multiplier: 2, type: BONUS_WORD, x: 5, y: 5 },
|
|
48
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 9, y: 5 },
|
|
49
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 11, y: 5 },
|
|
50
|
+
{ multiplier: 2, type: BONUS_WORD, x: 15, y: 5 },
|
|
51
|
+
{ multiplier: 4, type: BONUS_CHARACTER, x: 18, y: 5 },
|
|
52
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 3, y: 6 },
|
|
53
|
+
{ multiplier: 2, type: BONUS_WORD, x: 6, y: 6 },
|
|
54
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 10, y: 6 },
|
|
55
|
+
{ multiplier: 2, type: BONUS_WORD, x: 14, y: 6 },
|
|
56
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 17, y: 6 },
|
|
57
|
+
{ multiplier: 3, type: BONUS_WORD, x: 0, y: 7 },
|
|
58
|
+
{ multiplier: 2, type: BONUS_WORD, x: 7, y: 7 },
|
|
59
|
+
{ multiplier: 2, type: BONUS_WORD, x: 13, y: 7 },
|
|
60
|
+
{ multiplier: 3, type: BONUS_WORD, x: 20, y: 7 },
|
|
61
|
+
{ multiplier: 2, type: BONUS_WORD, x: 1, y: 8 },
|
|
62
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 4, y: 8 },
|
|
63
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 8, y: 8 },
|
|
64
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 12, y: 8 },
|
|
65
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 16, y: 8 },
|
|
66
|
+
{ multiplier: 2, type: BONUS_WORD, x: 19, y: 8 },
|
|
67
|
+
{ multiplier: 2, type: BONUS_WORD, x: 2, y: 9 },
|
|
68
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 5, y: 9 },
|
|
69
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 9, y: 9 },
|
|
70
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 11, y: 9 },
|
|
71
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 15, y: 9 },
|
|
72
|
+
{ multiplier: 2, type: BONUS_WORD, x: 18, y: 9 },
|
|
73
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 0, y: 10 },
|
|
74
|
+
{ multiplier: 3, type: BONUS_WORD, x: 3, y: 10 },
|
|
75
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 10 },
|
|
76
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 14, y: 10 },
|
|
77
|
+
{ multiplier: 3, type: BONUS_WORD, x: 17, y: 10 },
|
|
78
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 20, y: 10 },
|
|
79
|
+
{ multiplier: 2, type: BONUS_WORD, x: 2, y: 11 },
|
|
80
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 5, y: 11 },
|
|
81
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 9, y: 11 },
|
|
82
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 11, y: 11 },
|
|
83
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 15, y: 11 },
|
|
84
|
+
{ multiplier: 2, type: BONUS_WORD, x: 18, y: 11 },
|
|
85
|
+
{ multiplier: 2, type: BONUS_WORD, x: 1, y: 12 },
|
|
86
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 4, y: 12 },
|
|
87
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 8, y: 12 },
|
|
88
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 12, y: 12 },
|
|
89
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 16, y: 12 },
|
|
90
|
+
{ multiplier: 2, type: BONUS_WORD, x: 19, y: 12 },
|
|
91
|
+
{ multiplier: 3, type: BONUS_WORD, x: 0, y: 13 },
|
|
92
|
+
{ multiplier: 2, type: BONUS_WORD, x: 7, y: 13 },
|
|
93
|
+
{ multiplier: 2, type: BONUS_WORD, x: 13, y: 13 },
|
|
94
|
+
{ multiplier: 3, type: BONUS_WORD, x: 20, y: 13 },
|
|
95
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 3, y: 14 },
|
|
96
|
+
{ multiplier: 2, type: BONUS_WORD, x: 6, y: 14 },
|
|
97
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 10, y: 14 },
|
|
98
|
+
{ multiplier: 2, type: BONUS_WORD, x: 14, y: 14 },
|
|
99
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 17, y: 14 },
|
|
100
|
+
{ multiplier: 4, type: BONUS_CHARACTER, x: 2, y: 15 },
|
|
101
|
+
{ multiplier: 2, type: BONUS_WORD, x: 5, y: 15 },
|
|
102
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 9, y: 15 },
|
|
103
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 11, y: 15 },
|
|
104
|
+
{ multiplier: 2, type: BONUS_WORD, x: 15, y: 15 },
|
|
105
|
+
{ multiplier: 4, type: BONUS_CHARACTER, x: 18, y: 15 },
|
|
106
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 1, y: 16 },
|
|
107
|
+
{ multiplier: 2, type: BONUS_WORD, x: 4, y: 16 },
|
|
108
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 8, y: 16 },
|
|
109
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 12, y: 16 },
|
|
110
|
+
{ multiplier: 2, type: BONUS_WORD, x: 16, y: 16 },
|
|
111
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 19, y: 16 },
|
|
112
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 0, y: 17 },
|
|
113
|
+
{ multiplier: 3, type: BONUS_WORD, x: 3, y: 17 },
|
|
114
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 17 },
|
|
115
|
+
{ multiplier: 3, type: BONUS_WORD, x: 10, y: 17 },
|
|
116
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 14, y: 17 },
|
|
117
|
+
{ multiplier: 3, type: BONUS_WORD, x: 17, y: 17 },
|
|
118
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 20, y: 17 },
|
|
119
|
+
{ multiplier: 2, type: BONUS_WORD, x: 2, y: 18 },
|
|
120
|
+
{ multiplier: 4, type: BONUS_CHARACTER, x: 5, y: 18 },
|
|
121
|
+
{ multiplier: 2, type: BONUS_WORD, x: 9, y: 18 },
|
|
122
|
+
{ multiplier: 2, type: BONUS_WORD, x: 11, y: 18 },
|
|
123
|
+
{ multiplier: 4, type: BONUS_CHARACTER, x: 15, y: 18 },
|
|
124
|
+
{ multiplier: 2, type: BONUS_WORD, x: 18, y: 18 },
|
|
125
|
+
{ multiplier: 2, type: BONUS_WORD, x: 1, y: 19 },
|
|
126
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 4, y: 19 },
|
|
127
|
+
{ multiplier: 2, type: BONUS_WORD, x: 8, y: 19 },
|
|
128
|
+
{ multiplier: 2, type: BONUS_WORD, x: 12, y: 19 },
|
|
129
|
+
{ multiplier: 3, type: BONUS_CHARACTER, x: 16, y: 19 },
|
|
130
|
+
{ multiplier: 2, type: BONUS_WORD, x: 19, y: 19 },
|
|
131
|
+
{ multiplier: 4, type: BONUS_WORD, x: 0, y: 20 },
|
|
132
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 3, y: 20 },
|
|
133
|
+
{ multiplier: 3, type: BONUS_WORD, x: 7, y: 20 },
|
|
134
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 10, y: 20 },
|
|
135
|
+
{ multiplier: 3, type: BONUS_WORD, x: 13, y: 20 },
|
|
136
|
+
{ multiplier: 2, type: BONUS_CHARACTER, x: 17, y: 20 },
|
|
137
|
+
{ multiplier: 4, type: BONUS_WORD, x: 20, y: 20 },
|
|
138
|
+
],
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
export default scrabble;
|
package/src/getConfig.ts
CHANGED
|
@@ -1,23 +1,16 @@
|
|
|
1
|
-
import { Config, Locale } from '@scrabble-solver/types';
|
|
1
|
+
import { Config, Game, Locale } from '@scrabble-solver/types';
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
import scrabble from './scrabble';
|
|
3
|
+
import * as locales from './locales';
|
|
5
4
|
|
|
6
|
-
const
|
|
5
|
+
const getConfig = (game: Game, locale: Locale): Config => {
|
|
6
|
+
const configs = Object.values(locales).flat();
|
|
7
|
+
const localeConfig = configs.find((config) => config.game === game && config.locale === locale);
|
|
7
8
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
name: string;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
const getConfig = (configId: string): Result => {
|
|
14
|
-
const config = configs.find(({ id }) => id === configId);
|
|
15
|
-
|
|
16
|
-
if (!config) {
|
|
17
|
-
throw new Error(`Invalid "configId" parameter: not one of ${configs.map(({ id }) => id).join('/')}`);
|
|
9
|
+
if (typeof localeConfig === 'undefined') {
|
|
10
|
+
throw new Error(`No game "${game}" in "${locale}"`);
|
|
18
11
|
}
|
|
19
12
|
|
|
20
|
-
return
|
|
13
|
+
return localeConfig;
|
|
21
14
|
};
|
|
22
15
|
|
|
23
16
|
export default getConfig;
|
package/src/hasConfig.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Game, Locale } from '@scrabble-solver/types';
|
|
2
|
+
|
|
3
|
+
import * as locales from './locales';
|
|
4
|
+
|
|
5
|
+
const hasConfig = (game: Game, locale: Locale): boolean => {
|
|
6
|
+
const configs = Object.values(locales).flat();
|
|
7
|
+
return configs.some((config) => config.game === game && config.locale === locale);
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export default hasConfig;
|
package/src/index.ts
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import * as games from './games';
|
|
2
|
+
import * as locales from './locales';
|
|
3
|
+
|
|
4
|
+
const localesMap = Object.fromEntries(Object.values(locales).map((configs) => [configs[0].locale, configs]));
|
|
5
|
+
|
|
1
6
|
export { default as getConfig } from './getConfig';
|
|
2
|
-
export { default as
|
|
3
|
-
export {
|
|
4
|
-
export { default as literaki } from './literaki';
|
|
5
|
-
export { default as scrabble } from './scrabble';
|
|
7
|
+
export { default as hasConfig } from './hasConfig';
|
|
8
|
+
export { games, locales, localesMap };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Config, Locale } from '@scrabble-solver/types';
|
|
2
|
+
|
|
3
|
+
import { scrabble } from '../games';
|
|
4
|
+
|
|
5
|
+
const deDe: Config[] = [
|
|
6
|
+
new Config({
|
|
7
|
+
...scrabble,
|
|
8
|
+
locale: Locale.DE_DE,
|
|
9
|
+
tiles: [
|
|
10
|
+
{ character: 'a', count: 5, score: 1 },
|
|
11
|
+
{ character: 'ä', count: 1, score: 6 },
|
|
12
|
+
{ character: 'b', count: 2, score: 3 },
|
|
13
|
+
{ character: 'c', count: 2, score: 4 },
|
|
14
|
+
{ character: 'd', count: 4, score: 1 },
|
|
15
|
+
{ character: 'e', count: 15, score: 1 },
|
|
16
|
+
{ character: 'f', count: 2, score: 4 },
|
|
17
|
+
{ character: 'g', count: 3, score: 2 },
|
|
18
|
+
{ character: 'h', count: 4, score: 2 },
|
|
19
|
+
{ character: 'i', count: 6, score: 1 },
|
|
20
|
+
{ character: 'j', count: 1, score: 6 },
|
|
21
|
+
{ character: 'k', count: 2, score: 4 },
|
|
22
|
+
{ character: 'l', count: 3, score: 2 },
|
|
23
|
+
{ character: 'm', count: 4, score: 3 },
|
|
24
|
+
{ character: 'n', count: 9, score: 1 },
|
|
25
|
+
{ character: 'o', count: 3, score: 2 },
|
|
26
|
+
{ character: 'ö', count: 1, score: 8 },
|
|
27
|
+
{ character: 'p', count: 1, score: 4 },
|
|
28
|
+
{ character: 'q', count: 1, score: 10 },
|
|
29
|
+
{ character: 'r', count: 6, score: 1 },
|
|
30
|
+
{ character: 's', count: 7, score: 1 },
|
|
31
|
+
{ character: 't', count: 6, score: 1 },
|
|
32
|
+
{ character: 'u', count: 6, score: 1 },
|
|
33
|
+
{ character: 'ü', count: 1, score: 6 },
|
|
34
|
+
{ character: 'v', count: 1, score: 6 },
|
|
35
|
+
{ character: 'w', count: 1, score: 3 },
|
|
36
|
+
{ character: 'x', count: 1, score: 8 },
|
|
37
|
+
{ character: 'y', count: 1, score: 10 },
|
|
38
|
+
{ character: 'z', count: 1, score: 3 },
|
|
39
|
+
],
|
|
40
|
+
}),
|
|
41
|
+
];
|
|
42
|
+
|
|
43
|
+
export default deDe;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { Config, Locale } from '@scrabble-solver/types';
|
|
2
|
+
|
|
3
|
+
import { literaki, scrabble, superScrabble } from '../games';
|
|
4
|
+
|
|
5
|
+
const enGb: Config[] = [
|
|
6
|
+
new Config({
|
|
7
|
+
...scrabble,
|
|
8
|
+
locale: Locale.EN_GB,
|
|
9
|
+
tiles: [
|
|
10
|
+
{ character: 'a', count: 9, score: 1 },
|
|
11
|
+
{ character: 'b', count: 2, score: 3 },
|
|
12
|
+
{ character: 'c', count: 2, score: 3 },
|
|
13
|
+
{ character: 'd', count: 4, score: 2 },
|
|
14
|
+
{ character: 'e', count: 12, score: 1 },
|
|
15
|
+
{ character: 'f', count: 2, score: 4 },
|
|
16
|
+
{ character: 'g', count: 3, score: 2 },
|
|
17
|
+
{ character: 'h', count: 2, score: 4 },
|
|
18
|
+
{ character: 'i', count: 9, score: 1 },
|
|
19
|
+
{ character: 'j', count: 1, score: 8 },
|
|
20
|
+
{ character: 'k', count: 1, score: 5 },
|
|
21
|
+
{ character: 'l', count: 4, score: 1 },
|
|
22
|
+
{ character: 'm', count: 2, score: 3 },
|
|
23
|
+
{ character: 'n', count: 6, score: 1 },
|
|
24
|
+
{ character: 'o', count: 8, score: 1 },
|
|
25
|
+
{ character: 'p', count: 2, score: 3 },
|
|
26
|
+
{ character: 'q', count: 1, score: 10 },
|
|
27
|
+
{ character: 'r', count: 6, score: 1 },
|
|
28
|
+
{ character: 's', count: 4, score: 1 },
|
|
29
|
+
{ character: 't', count: 6, score: 1 },
|
|
30
|
+
{ character: 'u', count: 4, score: 1 },
|
|
31
|
+
{ character: 'v', count: 2, score: 4 },
|
|
32
|
+
{ character: 'w', count: 2, score: 4 },
|
|
33
|
+
{ character: 'x', count: 1, score: 8 },
|
|
34
|
+
{ character: 'y', count: 2, score: 4 },
|
|
35
|
+
{ character: 'z', count: 1, score: 10 },
|
|
36
|
+
],
|
|
37
|
+
}),
|
|
38
|
+
new Config({
|
|
39
|
+
...superScrabble,
|
|
40
|
+
locale: Locale.EN_GB,
|
|
41
|
+
tiles: [
|
|
42
|
+
{ character: 'a', count: 16, score: 1 },
|
|
43
|
+
{ character: 'b', count: 4, score: 3 },
|
|
44
|
+
{ character: 'c', count: 6, score: 3 },
|
|
45
|
+
{ character: 'd', count: 8, score: 2 },
|
|
46
|
+
{ character: 'e', count: 24, score: 1 },
|
|
47
|
+
{ character: 'f', count: 4, score: 4 },
|
|
48
|
+
{ character: 'g', count: 5, score: 2 },
|
|
49
|
+
{ character: 'h', count: 5, score: 4 },
|
|
50
|
+
{ character: 'i', count: 13, score: 1 },
|
|
51
|
+
{ character: 'j', count: 2, score: 8 },
|
|
52
|
+
{ character: 'k', count: 2, score: 5 },
|
|
53
|
+
{ character: 'l', count: 7, score: 1 },
|
|
54
|
+
{ character: 'm', count: 6, score: 3 },
|
|
55
|
+
{ character: 'n', count: 13, score: 1 },
|
|
56
|
+
{ character: 'o', count: 15, score: 1 },
|
|
57
|
+
{ character: 'p', count: 4, score: 3 },
|
|
58
|
+
{ character: 'q', count: 2, score: 10 },
|
|
59
|
+
{ character: 'r', count: 13, score: 1 },
|
|
60
|
+
{ character: 's', count: 10, score: 1 },
|
|
61
|
+
{ character: 't', count: 15, score: 1 },
|
|
62
|
+
{ character: 'u', count: 7, score: 1 },
|
|
63
|
+
{ character: 'v', count: 3, score: 4 },
|
|
64
|
+
{ character: 'w', count: 4, score: 4 },
|
|
65
|
+
{ character: 'x', count: 2, score: 8 },
|
|
66
|
+
{ character: 'y', count: 4, score: 4 },
|
|
67
|
+
{ character: 'z', count: 2, score: 10 },
|
|
68
|
+
],
|
|
69
|
+
}),
|
|
70
|
+
new Config({
|
|
71
|
+
...literaki,
|
|
72
|
+
locale: Locale.EN_GB,
|
|
73
|
+
name: 'Literaxx',
|
|
74
|
+
tiles: [
|
|
75
|
+
{ character: 'a', count: 9, score: 1 },
|
|
76
|
+
{ character: 'b', count: 2, score: 3 },
|
|
77
|
+
{ character: 'c', count: 2, score: 3 },
|
|
78
|
+
{ character: 'd', count: 4, score: 2 },
|
|
79
|
+
{ character: 'e', count: 12, score: 1 },
|
|
80
|
+
{ character: 'f', count: 2, score: 4 },
|
|
81
|
+
{ character: 'g', count: 3, score: 2 },
|
|
82
|
+
{ character: 'h', count: 2, score: 4 },
|
|
83
|
+
{ character: 'i', count: 9, score: 1 },
|
|
84
|
+
{ character: 'j', count: 1, score: 8 },
|
|
85
|
+
{ character: 'k', count: 1, score: 5 },
|
|
86
|
+
{ character: 'l', count: 4, score: 1 },
|
|
87
|
+
{ character: 'm', count: 2, score: 3 },
|
|
88
|
+
{ character: 'n', count: 6, score: 1 },
|
|
89
|
+
{ character: 'o', count: 8, score: 1 },
|
|
90
|
+
{ character: 'p', count: 2, score: 3 },
|
|
91
|
+
{ character: 'q', count: 1, score: 10 },
|
|
92
|
+
{ character: 'r', count: 6, score: 1 },
|
|
93
|
+
{ character: 's', count: 4, score: 1 },
|
|
94
|
+
{ character: 't', count: 6, score: 1 },
|
|
95
|
+
{ character: 'u', count: 4, score: 1 },
|
|
96
|
+
{ character: 'v', count: 2, score: 4 },
|
|
97
|
+
{ character: 'w', count: 2, score: 4 },
|
|
98
|
+
{ character: 'x', count: 1, score: 8 },
|
|
99
|
+
{ character: 'y', count: 2, score: 4 },
|
|
100
|
+
{ character: 'z', count: 1, score: 10 },
|
|
101
|
+
],
|
|
102
|
+
}),
|
|
103
|
+
];
|
|
104
|
+
|
|
105
|
+
export default enGb;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { Config, Locale } from '@scrabble-solver/types';
|
|
2
|
+
|
|
3
|
+
import { literaki, scrabble, superScrabble } from '../games';
|
|
4
|
+
|
|
5
|
+
const enUs: Config[] = [
|
|
6
|
+
new Config({
|
|
7
|
+
...scrabble,
|
|
8
|
+
locale: Locale.EN_US,
|
|
9
|
+
tiles: [
|
|
10
|
+
{ character: 'a', count: 9, score: 1 },
|
|
11
|
+
{ character: 'b', count: 2, score: 3 },
|
|
12
|
+
{ character: 'c', count: 2, score: 3 },
|
|
13
|
+
{ character: 'd', count: 4, score: 2 },
|
|
14
|
+
{ character: 'e', count: 12, score: 1 },
|
|
15
|
+
{ character: 'f', count: 2, score: 4 },
|
|
16
|
+
{ character: 'g', count: 3, score: 2 },
|
|
17
|
+
{ character: 'h', count: 2, score: 4 },
|
|
18
|
+
{ character: 'i', count: 9, score: 1 },
|
|
19
|
+
{ character: 'j', count: 1, score: 8 },
|
|
20
|
+
{ character: 'k', count: 1, score: 5 },
|
|
21
|
+
{ character: 'l', count: 4, score: 1 },
|
|
22
|
+
{ character: 'm', count: 2, score: 3 },
|
|
23
|
+
{ character: 'n', count: 6, score: 1 },
|
|
24
|
+
{ character: 'o', count: 8, score: 1 },
|
|
25
|
+
{ character: 'p', count: 2, score: 3 },
|
|
26
|
+
{ character: 'q', count: 1, score: 10 },
|
|
27
|
+
{ character: 'r', count: 6, score: 1 },
|
|
28
|
+
{ character: 's', count: 4, score: 1 },
|
|
29
|
+
{ character: 't', count: 6, score: 1 },
|
|
30
|
+
{ character: 'u', count: 4, score: 1 },
|
|
31
|
+
{ character: 'v', count: 2, score: 4 },
|
|
32
|
+
{ character: 'w', count: 2, score: 4 },
|
|
33
|
+
{ character: 'x', count: 1, score: 8 },
|
|
34
|
+
{ character: 'y', count: 2, score: 4 },
|
|
35
|
+
{ character: 'z', count: 1, score: 10 },
|
|
36
|
+
],
|
|
37
|
+
}),
|
|
38
|
+
new Config({
|
|
39
|
+
...superScrabble,
|
|
40
|
+
locale: Locale.EN_US,
|
|
41
|
+
tiles: [
|
|
42
|
+
{ character: 'a', count: 16, score: 1 },
|
|
43
|
+
{ character: 'b', count: 4, score: 3 },
|
|
44
|
+
{ character: 'c', count: 6, score: 3 },
|
|
45
|
+
{ character: 'd', count: 8, score: 2 },
|
|
46
|
+
{ character: 'e', count: 24, score: 1 },
|
|
47
|
+
{ character: 'f', count: 4, score: 4 },
|
|
48
|
+
{ character: 'g', count: 5, score: 2 },
|
|
49
|
+
{ character: 'h', count: 5, score: 4 },
|
|
50
|
+
{ character: 'i', count: 13, score: 1 },
|
|
51
|
+
{ character: 'j', count: 2, score: 8 },
|
|
52
|
+
{ character: 'k', count: 2, score: 5 },
|
|
53
|
+
{ character: 'l', count: 7, score: 1 },
|
|
54
|
+
{ character: 'm', count: 6, score: 3 },
|
|
55
|
+
{ character: 'n', count: 13, score: 1 },
|
|
56
|
+
{ character: 'o', count: 15, score: 1 },
|
|
57
|
+
{ character: 'p', count: 4, score: 3 },
|
|
58
|
+
{ character: 'q', count: 2, score: 10 },
|
|
59
|
+
{ character: 'r', count: 13, score: 1 },
|
|
60
|
+
{ character: 's', count: 10, score: 1 },
|
|
61
|
+
{ character: 't', count: 15, score: 1 },
|
|
62
|
+
{ character: 'u', count: 7, score: 1 },
|
|
63
|
+
{ character: 'v', count: 3, score: 4 },
|
|
64
|
+
{ character: 'w', count: 4, score: 4 },
|
|
65
|
+
{ character: 'x', count: 2, score: 8 },
|
|
66
|
+
{ character: 'y', count: 4, score: 4 },
|
|
67
|
+
{ character: 'z', count: 2, score: 10 },
|
|
68
|
+
],
|
|
69
|
+
}),
|
|
70
|
+
new Config({
|
|
71
|
+
...literaki,
|
|
72
|
+
locale: Locale.EN_US,
|
|
73
|
+
name: 'Literaxx',
|
|
74
|
+
tiles: [
|
|
75
|
+
{ character: 'a', count: 9, score: 1 },
|
|
76
|
+
{ character: 'b', count: 2, score: 3 },
|
|
77
|
+
{ character: 'c', count: 2, score: 3 },
|
|
78
|
+
{ character: 'd', count: 4, score: 2 },
|
|
79
|
+
{ character: 'e', count: 12, score: 1 },
|
|
80
|
+
{ character: 'f', count: 2, score: 4 },
|
|
81
|
+
{ character: 'g', count: 3, score: 2 },
|
|
82
|
+
{ character: 'h', count: 2, score: 4 },
|
|
83
|
+
{ character: 'i', count: 9, score: 1 },
|
|
84
|
+
{ character: 'j', count: 1, score: 8 },
|
|
85
|
+
{ character: 'k', count: 1, score: 5 },
|
|
86
|
+
{ character: 'l', count: 4, score: 1 },
|
|
87
|
+
{ character: 'm', count: 2, score: 3 },
|
|
88
|
+
{ character: 'n', count: 6, score: 1 },
|
|
89
|
+
{ character: 'o', count: 8, score: 1 },
|
|
90
|
+
{ character: 'p', count: 2, score: 3 },
|
|
91
|
+
{ character: 'q', count: 1, score: 10 },
|
|
92
|
+
{ character: 'r', count: 6, score: 1 },
|
|
93
|
+
{ character: 's', count: 4, score: 1 },
|
|
94
|
+
{ character: 't', count: 6, score: 1 },
|
|
95
|
+
{ character: 'u', count: 4, score: 1 },
|
|
96
|
+
{ character: 'v', count: 2, score: 4 },
|
|
97
|
+
{ character: 'w', count: 2, score: 4 },
|
|
98
|
+
{ character: 'x', count: 1, score: 8 },
|
|
99
|
+
{ character: 'y', count: 2, score: 4 },
|
|
100
|
+
{ character: 'z', count: 1, score: 10 },
|
|
101
|
+
],
|
|
102
|
+
}),
|
|
103
|
+
];
|
|
104
|
+
|
|
105
|
+
export default enUs;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Config, Locale } from '@scrabble-solver/types';
|
|
2
|
+
|
|
3
|
+
import { scrabble } from '../games';
|
|
4
|
+
|
|
5
|
+
const esEs: Config[] = [
|
|
6
|
+
new Config({
|
|
7
|
+
...scrabble,
|
|
8
|
+
locale: Locale.ES_ES,
|
|
9
|
+
tiles: [
|
|
10
|
+
{ character: 'a', count: 12, score: 1 },
|
|
11
|
+
{ character: 'b', count: 2, score: 3 },
|
|
12
|
+
{ character: 'c', count: 4, score: 3 },
|
|
13
|
+
{ character: 'ch', count: 1, score: 5 },
|
|
14
|
+
{ character: 'd', count: 5, score: 2 },
|
|
15
|
+
{ character: 'e', count: 12, score: 1 },
|
|
16
|
+
{ character: 'f', count: 1, score: 4 },
|
|
17
|
+
{ character: 'g', count: 2, score: 2 },
|
|
18
|
+
{ character: 'h', count: 2, score: 4 },
|
|
19
|
+
{ character: 'i', count: 6, score: 1 },
|
|
20
|
+
{ character: 'j', count: 1, score: 8 },
|
|
21
|
+
{ character: 'll', count: 1, score: 8 },
|
|
22
|
+
{ character: 'l', count: 4, score: 1 },
|
|
23
|
+
{ character: 'm', count: 2, score: 3 },
|
|
24
|
+
{ character: 'n', count: 5, score: 1 },
|
|
25
|
+
{ character: 'ñ', count: 1, score: 8 },
|
|
26
|
+
{ character: 'o', count: 9, score: 1 },
|
|
27
|
+
{ character: 'p', count: 2, score: 3 },
|
|
28
|
+
{ character: 'q', count: 1, score: 5 },
|
|
29
|
+
{ character: 'r', count: 5, score: 1 },
|
|
30
|
+
{ character: 'rr', count: 1, score: 8 },
|
|
31
|
+
{ character: 's', count: 6, score: 1 },
|
|
32
|
+
{ character: 't', count: 4, score: 1 },
|
|
33
|
+
{ character: 'u', count: 5, score: 1 },
|
|
34
|
+
{ character: 'v', count: 1, score: 4 },
|
|
35
|
+
{ character: 'x', count: 1, score: 8 },
|
|
36
|
+
{ character: 'y', count: 1, score: 4 },
|
|
37
|
+
{ character: 'z', count: 1, score: 10 },
|
|
38
|
+
],
|
|
39
|
+
}),
|
|
40
|
+
];
|
|
41
|
+
|
|
42
|
+
export default esEs;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Config, Locale } from '@scrabble-solver/types';
|
|
2
|
+
|
|
3
|
+
import { scrabble } from '../games';
|
|
4
|
+
|
|
5
|
+
const faIr: Config[] = [
|
|
6
|
+
new Config({
|
|
7
|
+
...scrabble,
|
|
8
|
+
locale: Locale.FA_IR,
|
|
9
|
+
tiles: [
|
|
10
|
+
{ character: 'ا', count: 12, score: 1 },
|
|
11
|
+
{ character: 'ب', count: 4, score: 1 },
|
|
12
|
+
{ character: 'پ', count: 1, score: 6 },
|
|
13
|
+
{ character: 'ت', count: 4, score: 1 },
|
|
14
|
+
{ character: 'ث', count: 1, score: 10 },
|
|
15
|
+
{ character: 'ج', count: 2, score: 5 },
|
|
16
|
+
{ character: 'چ', count: 1, score: 6 },
|
|
17
|
+
{ character: 'ح', count: 1, score: 6 },
|
|
18
|
+
{ character: 'خ', count: 2, score: 5 },
|
|
19
|
+
{ character: 'د', count: 6, score: 1 },
|
|
20
|
+
{ character: 'ذ', count: 1, score: 10 },
|
|
21
|
+
{ character: 'ر', count: 7, score: 1 },
|
|
22
|
+
{ character: 'ز', count: 3, score: 4 },
|
|
23
|
+
{ character: 'ژ', count: 1, score: 10 },
|
|
24
|
+
{ character: 'س', count: 3, score: 2 },
|
|
25
|
+
{ character: 'ش', count: 3, score: 3 },
|
|
26
|
+
{ character: 'ص', count: 1, score: 6 },
|
|
27
|
+
{ character: 'ض', count: 1, score: 8 },
|
|
28
|
+
{ character: 'ط', count: 1, score: 8 },
|
|
29
|
+
{ character: 'ظ', count: 1, score: 10 },
|
|
30
|
+
{ character: 'ع', count: 2, score: 5 },
|
|
31
|
+
{ character: 'غ', count: 1, score: 8 },
|
|
32
|
+
{ character: 'ف', count: 2, score: 4 },
|
|
33
|
+
{ character: 'ق', count: 2, score: 5 },
|
|
34
|
+
{ character: 'ک', count: 3, score: 3 },
|
|
35
|
+
{ character: 'گ', count: 2, score: 4 },
|
|
36
|
+
{ character: 'ل', count: 3, score: 2 },
|
|
37
|
+
{ character: 'م', count: 5, score: 1 },
|
|
38
|
+
{ character: 'ن', count: 6, score: 1 },
|
|
39
|
+
{ character: 'و', count: 5, score: 1 },
|
|
40
|
+
{ character: 'ه', count: 5, score: 1 },
|
|
41
|
+
{ character: 'ی', count: 8, score: 1 },
|
|
42
|
+
],
|
|
43
|
+
}),
|
|
44
|
+
];
|
|
45
|
+
|
|
46
|
+
export default faIr;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Config, Locale } from '@scrabble-solver/types';
|
|
2
|
+
|
|
3
|
+
import { scrabble } from '../games';
|
|
4
|
+
|
|
5
|
+
const frFr: Config[] = [
|
|
6
|
+
new Config({
|
|
7
|
+
...scrabble,
|
|
8
|
+
locale: Locale.FR_FR,
|
|
9
|
+
tiles: [
|
|
10
|
+
{ character: 'a', count: 9, score: 1 },
|
|
11
|
+
{ character: 'b', count: 2, score: 3 },
|
|
12
|
+
{ character: 'c', count: 2, score: 3 },
|
|
13
|
+
{ character: 'd', count: 3, score: 2 },
|
|
14
|
+
{ character: 'e', count: 15, score: 1 },
|
|
15
|
+
{ character: 'f', count: 2, score: 4 },
|
|
16
|
+
{ character: 'g', count: 2, score: 2 },
|
|
17
|
+
{ character: 'h', count: 2, score: 4 },
|
|
18
|
+
{ character: 'i', count: 8, score: 1 },
|
|
19
|
+
{ character: 'j', count: 1, score: 8 },
|
|
20
|
+
{ character: 'k', count: 1, score: 10 },
|
|
21
|
+
{ character: 'l', count: 5, score: 1 },
|
|
22
|
+
{ character: 'm', count: 3, score: 2 },
|
|
23
|
+
{ character: 'n', count: 6, score: 1 },
|
|
24
|
+
{ character: 'o', count: 6, score: 1 },
|
|
25
|
+
{ character: 'p', count: 2, score: 3 },
|
|
26
|
+
{ character: 'q', count: 1, score: 8 },
|
|
27
|
+
{ character: 'r', count: 6, score: 1 },
|
|
28
|
+
{ character: 's', count: 6, score: 1 },
|
|
29
|
+
{ character: 't', count: 6, score: 1 },
|
|
30
|
+
{ character: 'u', count: 6, score: 1 },
|
|
31
|
+
{ character: 'v', count: 2, score: 4 },
|
|
32
|
+
{ character: 'w', count: 1, score: 10 },
|
|
33
|
+
{ character: 'x', count: 1, score: 10 },
|
|
34
|
+
{ character: 'y', count: 1, score: 10 },
|
|
35
|
+
{ character: 'z', count: 1, score: 10 },
|
|
36
|
+
],
|
|
37
|
+
}),
|
|
38
|
+
];
|
|
39
|
+
|
|
40
|
+
export default frFr;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { default as deDe } from './deDe';
|
|
2
|
+
export { default as enGb } from './enGb';
|
|
3
|
+
export { default as enUs } from './enUs';
|
|
4
|
+
export { default as esEs } from './esEs';
|
|
5
|
+
export { default as faIr } from './faIr';
|
|
6
|
+
export { default as frFr } from './frFr';
|
|
7
|
+
export { default as plPl } from './plPl';
|