enefel 1.2.0 → 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.
- package/.yarnrc.yml +5 -0
- package/dist/avatars.js +587 -0
- package/dist/avatarsDefault.js +136 -0
- package/dist/badge.js +60 -0
- package/dist/block.js +104 -0
- package/dist/calcul.js +11 -0
- package/dist/canUseSkills.js +46 -0
- package/dist/card.js +20 -0
- package/dist/career.js +1935 -0
- package/dist/color.js +112 -0
- package/dist/date.js +62 -0
- package/dist/dice.js +13 -0
- package/dist/elo.js +30 -0
- package/dist/game.js +64 -0
- package/dist/iconMap.js +261 -0
- package/dist/improvement.js +103 -0
- package/dist/inducement.js +59 -0
- package/dist/item.js +45 -0
- package/dist/jest.config.js +11 -0
- package/dist/league.js +250 -0
- package/dist/meteo.js +234 -0
- package/dist/moral.js +38 -0
- package/dist/move.js +70 -0
- package/dist/package-lock.json +6658 -0
- package/dist/package.json +43 -0
- package/dist/pitch.js +113 -0
- package/dist/player.js +244 -0
- package/dist/position.js +23 -0
- package/dist/race.js +355 -0
- package/dist/random.js +35 -0
- package/dist/right.js +62 -0
- package/dist/skill.js +421 -0
- package/dist/skillCoach.js +51 -0
- package/dist/stadium.js +320 -0
- package/dist/state.js +91 -0
- package/dist/status.js +52 -0
- package/dist/store.js +104 -0
- package/dist/time.js +80 -0
- package/dist/tsconfig.json +25 -0
- package/dist/types/models.js +2 -0
- package/dist/validator.js +96 -0
- package/dist/version.js +4 -0
- package/package.json +2 -2
- package/.npmrc +0 -1
- package/package-lock.json +0 -6658
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AVATAR_DEFAULT_LIST = void 0;
|
|
4
|
+
const AVATAR_DEFAULT_LIST = {
|
|
5
|
+
beastman: [
|
|
6
|
+
{ file: "4eab6dd1-d465-4b89-a36c-6ec0f3063e5d-0_0.jpeg", rarity: "c" },
|
|
7
|
+
{ file: "4eab6dd1-d465-4b89-a36c-6ec0f3063e5d-0_3.jpeg", rarity: "c" },
|
|
8
|
+
],
|
|
9
|
+
"black-orc": [
|
|
10
|
+
{ file: "5f45a123-4fc5-4529-93ec-374ecb542c16-0_0.jpeg", rarity: "c" },
|
|
11
|
+
{ file: "5f45a123-4fc5-4529-93ec-374ecb542c16-0_1.jpeg", rarity: "c" },
|
|
12
|
+
{ file: "6bc40632-3ed2-4a98-b4d6-0ee0a832061f-0_2.jpeg", rarity: "c" },
|
|
13
|
+
],
|
|
14
|
+
bloater: [
|
|
15
|
+
{ file: "78d51d4a-510c-48a9-adbc-496f5a06fcfa-0_1.jpeg", rarity: "c" },
|
|
16
|
+
{ file: "78d51d4a-510c-48a9-adbc-496f5a06fcfa-0_2.jpeg", rarity: "c" },
|
|
17
|
+
],
|
|
18
|
+
bloodspawn: [
|
|
19
|
+
{ file: "78d51d4a-510c-48a9-adbc-496f5a06fcfa-0_1.jpeg", rarity: "c" },
|
|
20
|
+
{ file: "78d51d4a-510c-48a9-adbc-496f5a06fcfa-0_2.jpeg", rarity: "c" },
|
|
21
|
+
],
|
|
22
|
+
centaur: [
|
|
23
|
+
{ file: "4eab6dd1-d465-4b89-a36c-6ec0f3063e5d-0_0.jpeg", rarity: "c" },
|
|
24
|
+
{ file: "4eab6dd1-d465-4b89-a36c-6ec0f3063e5d-0_3.jpeg", rarity: "c" },
|
|
25
|
+
],
|
|
26
|
+
"chaos-dwarf": [
|
|
27
|
+
{ file: "084c8e6b-8121-4829-bb94-e5a6172f7d18-0_0.jpeg", rarity: "c" },
|
|
28
|
+
{ file: "459e3028-5e08-4021-befd-9eed5cabc7e3-0_1.jpeg", rarity: "c" },
|
|
29
|
+
{ file: "b3a6ee12-a912-43cd-a4d4-8217ee524f86-0_1.jpeg", rarity: "c" },
|
|
30
|
+
],
|
|
31
|
+
"chaos-warrior": [
|
|
32
|
+
{ file: "1b500e57-c4a8-49df-9106-2f51771e1954-0_2.jpeg", rarity: "c" },
|
|
33
|
+
],
|
|
34
|
+
dark_elf: [
|
|
35
|
+
{ file: "1510352c-4343-4297-9de1-a07cd6328e5f-0_0.jpeg", rarity: "c" },
|
|
36
|
+
{ file: "1b9f3643-73d5-4350-9728-4a093acd2d65-0_2.jpeg", rarity: "c" },
|
|
37
|
+
{ file: "edebf121-959c-4a91-a380-6296e9ae4e6d-0_3.jpeg", rarity: "c" },
|
|
38
|
+
{ file: "f0496e9d-122c-42cb-884b-88ba5fa6ff51-0_2.jpeg", rarity: "c" },
|
|
39
|
+
],
|
|
40
|
+
dwarf: [
|
|
41
|
+
{ file: "084c8e6b-8121-4829-bb94-e5a6172f7d18-0_0.jpeg", rarity: "c" },
|
|
42
|
+
{ file: "459e3028-5e08-4021-befd-9eed5cabc7e3-0_1.jpeg", rarity: "c" },
|
|
43
|
+
{ file: "b3a6ee12-a912-43cd-a4d4-8217ee524f86-0_1.jpeg", rarity: "c" },
|
|
44
|
+
],
|
|
45
|
+
elf: [
|
|
46
|
+
{ file: "1510352c-4343-4297-9de1-a07cd6328e5f-0_0.jpeg", rarity: "c" },
|
|
47
|
+
{ file: "1b9f3643-73d5-4350-9728-4a093acd2d65-0_2.jpeg", rarity: "c" },
|
|
48
|
+
{ file: "6ee40acc-2eb9-49d0-822d-b26c4cce94ad-0_3.jpeg", rarity: "c" },
|
|
49
|
+
{ file: "edebf121-959c-4a91-a380-6296e9ae4e6d-0_3.jpeg", rarity: "c" },
|
|
50
|
+
{ file: "f0496e9d-122c-42cb-884b-88ba5fa6ff51-0_2.jpeg", rarity: "c" },
|
|
51
|
+
],
|
|
52
|
+
gobelin: [
|
|
53
|
+
{ file: "5f979389-d483-443a-9c4e-89fabd8b296a-0_0.jpeg", rarity: "c" },
|
|
54
|
+
{ file: "c0f90df3-5010-4ebb-bc0c-651b29117904-0_0.jpeg", rarity: "c" },
|
|
55
|
+
{ file: "c0f90df3-5010-4ebb-bc0c-651b29117904-0_3.jpeg", rarity: "c" },
|
|
56
|
+
],
|
|
57
|
+
golem: [
|
|
58
|
+
{ file: "2f1a1f74-fe6d-4287-866c-b4e653918b43-0_0.jpeg", rarity: "c" },
|
|
59
|
+
{ file: "2f1a1f74-fe6d-4287-866c-b4e653918b43-0_3.jpeg", rarity: "c" },
|
|
60
|
+
],
|
|
61
|
+
halfing: [
|
|
62
|
+
{ file: "3283275f-9ba2-4b39-879f-f5cb3125ad84-0_2.jpeg", rarity: "c" },
|
|
63
|
+
{ file: "8d8ea65e-4a8c-47e7-a3a4-043f3ebb96b3-0_0.jpeg", rarity: "c" },
|
|
64
|
+
],
|
|
65
|
+
human: [
|
|
66
|
+
{ file: "15241b62-c754-4df7-8e3d-e64910af0fa2-0_1.jpeg", rarity: "c" },
|
|
67
|
+
{ file: "52bc1911-da1b-488b-9027-42d57d661305-0_1.jpeg", rarity: "c" },
|
|
68
|
+
{ file: "87f9f4a8-3e16-489a-a72f-8779d54a69ba-0_3.jpeg", rarity: "c" },
|
|
69
|
+
{ file: "b6861803-fe5c-4f31-bff9-d77508512050-0_1.jpeg", rarity: "c" },
|
|
70
|
+
],
|
|
71
|
+
"human-woman": [
|
|
72
|
+
{ file: "0578b8bc-1aae-4ad2-a250-538398eb58ce-0_0.jpeg", rarity: "c" },
|
|
73
|
+
{ file: "0578b8bc-1aae-4ad2-a250-538398eb58ce-0_1.jpeg", rarity: "c" },
|
|
74
|
+
{ file: "0578b8bc-1aae-4ad2-a250-538398eb58ce-0_2.jpeg", rarity: "c" },
|
|
75
|
+
{ file: "61c0a894-327a-4773-91a9-371b940fd628-0_1.jpeg", rarity: "c" },
|
|
76
|
+
{ file: "789f766d-0bc0-4d0e-b2f7-f3a4d550977f-0_3.jpeg", rarity: "c" },
|
|
77
|
+
],
|
|
78
|
+
lezard: [
|
|
79
|
+
{ file: "8fb522f4-bf09-43b5-bc05-2f6ecb13525b-0_0.jpeg", rarity: "c" },
|
|
80
|
+
{ file: "8fb522f4-bf09-43b5-bc05-2f6ecb13525b-0_2.jpeg", rarity: "c" },
|
|
81
|
+
],
|
|
82
|
+
minotaur: [
|
|
83
|
+
{ file: "4eab6dd1-d465-4b89-a36c-6ec0f3063e5d-0_0.jpeg", rarity: "c" },
|
|
84
|
+
{ file: "4eab6dd1-d465-4b89-a36c-6ec0f3063e5d-0_3.jpeg", rarity: "c" },
|
|
85
|
+
],
|
|
86
|
+
mummie: [
|
|
87
|
+
{ file: "b8322032-cf4c-4dd5-a01b-8aa13ec6389b-0_0.jpeg", rarity: "c" },
|
|
88
|
+
{ file: "b8322032-cf4c-4dd5-a01b-8aa13ec6389b-0_3.jpeg", rarity: "c" },
|
|
89
|
+
],
|
|
90
|
+
ogre: [
|
|
91
|
+
{ file: "4d731785-93d4-4867-ba2a-05233b80bf6d-0_1.jpeg", rarity: "c" },
|
|
92
|
+
{ file: "4d731785-93d4-4867-ba2a-05233b80bf6d-0_3.jpeg", rarity: "c" },
|
|
93
|
+
{ file: "695ef977-bca4-439f-9938-c66d74550a50-0_0.jpeg", rarity: "c" },
|
|
94
|
+
{ file: "695ef977-bca4-439f-9938-c66d74550a50-0_3.jpeg", rarity: "c" },
|
|
95
|
+
],
|
|
96
|
+
orc: [
|
|
97
|
+
{ file: "4640dcc1-a8c3-4f77-a08a-9f3f1d46fdc5-0_0.jpeg", rarity: "c" },
|
|
98
|
+
{ file: "5f45a123-4fc5-4529-93ec-374ecb542c16-0_0.jpeg", rarity: "c" },
|
|
99
|
+
{ file: "9b1f8721-a195-4830-ab56-a30b29de527e-0_2.jpeg", rarity: "c" },
|
|
100
|
+
],
|
|
101
|
+
rat: [
|
|
102
|
+
{ file: "6119ea3e-4913-47f5-b2d3-a35ed5e2c13b-0_0.jpeg", rarity: "c" },
|
|
103
|
+
{ file: "6119ea3e-4913-47f5-b2d3-a35ed5e2c13b-0_3.jpeg", rarity: "c" },
|
|
104
|
+
{ file: "b01cb9ff-f00c-4c28-9c5f-0ca254df5f79-0_1.jpeg", rarity: "c" },
|
|
105
|
+
],
|
|
106
|
+
rat_ogre: [
|
|
107
|
+
{ file: "6119ea3e-4913-47f5-b2d3-a35ed5e2c13b-0_0.jpeg", rarity: "c" },
|
|
108
|
+
{ file: "6119ea3e-4913-47f5-b2d3-a35ed5e2c13b-0_3.jpeg", rarity: "c" },
|
|
109
|
+
{ file: "b01cb9ff-f00c-4c28-9c5f-0ca254df5f79-0_1.jpeg", rarity: "c" },
|
|
110
|
+
],
|
|
111
|
+
slann: [
|
|
112
|
+
{ file: "446328cf-a5f0-4920-8ca0-219ac9259069.jpeg", rarity: "c" },
|
|
113
|
+
{ file: "d0a6c1d1-a57a-41c6-8bc3-598444ea6faa.jpeg", rarity: "c" },
|
|
114
|
+
],
|
|
115
|
+
treeman: [
|
|
116
|
+
{ file: "d04cdae6-b2ff-446a-a500-d60a6fa0feeb-0_0.jpeg", rarity: "c" },
|
|
117
|
+
{ file: "d04cdae6-b2ff-446a-a500-d60a6fa0feeb-0_2.jpeg", rarity: "c" },
|
|
118
|
+
],
|
|
119
|
+
troll: [
|
|
120
|
+
{ file: "4d731785-93d4-4867-ba2a-05233b80bf6d-0_1.jpeg", rarity: "c" },
|
|
121
|
+
{ file: "4d731785-93d4-4867-ba2a-05233b80bf6d-0_2.jpeg", rarity: "c" },
|
|
122
|
+
],
|
|
123
|
+
undead: [
|
|
124
|
+
{ file: "87c105ca-2db8-4794-b67a-5378bc35950d-0_0.jpeg", rarity: "c" },
|
|
125
|
+
{ file: "87c105ca-2db8-4794-b67a-5378bc35950d-0_1.jpeg", rarity: "c" },
|
|
126
|
+
{ file: "c4f36f14-fa7a-4ba9-950b-828e95152968-0_0.jpeg", rarity: "c" },
|
|
127
|
+
],
|
|
128
|
+
werewolf: [
|
|
129
|
+
{ file: "de457153-5694-41c1-be0a-06cad63b9c45-0_1.jpeg", rarity: "c" },
|
|
130
|
+
{ file: "de457153-5694-41c1-be0a-06cad63b9c45-0_3.jpeg", rarity: "c" },
|
|
131
|
+
],
|
|
132
|
+
yhetee: [
|
|
133
|
+
{ file: "59e02654-3e19-4aab-bcbb-f1630c474ac6-0_0.jpeg", rarity: "c" },
|
|
134
|
+
],
|
|
135
|
+
};
|
|
136
|
+
exports.AVATAR_DEFAULT_LIST = AVATAR_DEFAULT_LIST;
|
package/dist/badge.js
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.badges = exports.BADGE_NAMES = void 0;
|
|
4
|
+
exports.getBadgeLevel = getBadgeLevel;
|
|
5
|
+
exports.getBadgeMaxLevel = getBadgeMaxLevel;
|
|
6
|
+
exports.hasBadge = hasBadge;
|
|
7
|
+
const career_1 = require("./career");
|
|
8
|
+
const improvement_1 = require("./improvement");
|
|
9
|
+
var BADGE_NAMES;
|
|
10
|
+
(function (BADGE_NAMES) {
|
|
11
|
+
BADGE_NAMES["BLOODTHIRSTY"] = "bloodthirsty";
|
|
12
|
+
BADGE_NAMES["DEAD_FULL_MOON"] = "dead-full-moon";
|
|
13
|
+
BADGE_NAMES["DEAD"] = "dead";
|
|
14
|
+
BADGE_NAMES["ELVEN_UNION"] = "elfen-union";
|
|
15
|
+
BADGE_NAMES["IMPERIAL"] = "imperial";
|
|
16
|
+
BADGE_NAMES["KILL"] = "kill";
|
|
17
|
+
BADGE_NAMES["NURGLE"] = "nurgle";
|
|
18
|
+
BADGE_NAMES["SNOTLING"] = "snotling";
|
|
19
|
+
BADGE_NAMES["WEAPON"] = "weapon";
|
|
20
|
+
BADGE_NAMES["VAMPIRE"] = "vampire";
|
|
21
|
+
BADGE_NAMES["SLANN"] = "slann";
|
|
22
|
+
})(BADGE_NAMES || (exports.BADGE_NAMES = BADGE_NAMES = {}));
|
|
23
|
+
const badges = {};
|
|
24
|
+
exports.badges = badges;
|
|
25
|
+
// "human-career": ranges,
|
|
26
|
+
// "orc-career": ranges,
|
|
27
|
+
// ...
|
|
28
|
+
Object.values((0, career_1.getCareers)()).forEach((r) => {
|
|
29
|
+
if (!badges[r.badge]) {
|
|
30
|
+
badges[r.badge] = [0, ...improvement_1.ranges];
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
badges[BADGE_NAMES.KILL] = [0, 1, 2, 3, 5, 7, 9]; // 10 max
|
|
34
|
+
badges[BADGE_NAMES.DEAD] = [0, 1, 2, 3, 5, 7, 9];
|
|
35
|
+
badges[BADGE_NAMES.DEAD_FULL_MOON] = [0];
|
|
36
|
+
badges[BADGE_NAMES.BLOODTHIRSTY] = [0]; // 1 max
|
|
37
|
+
badges[BADGE_NAMES.NURGLE] = [0];
|
|
38
|
+
badges[BADGE_NAMES.VAMPIRE] = [0]; // Store
|
|
39
|
+
badges[BADGE_NAMES.ELVEN_UNION] = [0]; // Store
|
|
40
|
+
badges[BADGE_NAMES.SNOTLING] = [0]; // Store
|
|
41
|
+
badges[BADGE_NAMES.IMPERIAL] = [0]; // Store
|
|
42
|
+
badges[BADGE_NAMES.SLANN] = [0]; // Store
|
|
43
|
+
badges[BADGE_NAMES.WEAPON] = [0];
|
|
44
|
+
function getBadgeMaxLevel(badge) {
|
|
45
|
+
return badges[badge.badge_id].length;
|
|
46
|
+
}
|
|
47
|
+
function getBadgeLevel(badge) {
|
|
48
|
+
const meta = badges[badge.badge_id];
|
|
49
|
+
let level = meta.findIndex((lvl) => badge.quantity <= lvl);
|
|
50
|
+
if (level === -1) {
|
|
51
|
+
return getBadgeMaxLevel(badge);
|
|
52
|
+
}
|
|
53
|
+
return level;
|
|
54
|
+
}
|
|
55
|
+
function hasBadge(badgeId, user, quantity = 1) {
|
|
56
|
+
const hasBadgeQte = user.badges.find((b) => {
|
|
57
|
+
return b.badge_id === badgeId && b.quantity >= quantity;
|
|
58
|
+
});
|
|
59
|
+
return hasBadgeQte != null;
|
|
60
|
+
}
|
package/dist/block.js
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getOrderDiceAgainst = exports.getOrderDice = void 0;
|
|
4
|
+
exports.isFrenzyAvailable = isFrenzyAvailable;
|
|
5
|
+
const skill_1 = require("./skill");
|
|
6
|
+
function isFrenzyAvailable(player, defender) {
|
|
7
|
+
if ((0, skill_1.hasSkill)(defender, skill_1.SKILL_NAMES.FEND) &&
|
|
8
|
+
!(0, skill_1.hasSkill)(player, skill_1.SKILL_NAMES.JUGGERNAUT)) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
return player.current_MA + player.current_gfi <= 1
|
|
12
|
+
? false
|
|
13
|
+
: (0, skill_1.hasSkill)(player, skill_1.SKILL_NAMES.FRENZY, true);
|
|
14
|
+
}
|
|
15
|
+
const hasDefenserDodge = (attacker, defender) => {
|
|
16
|
+
let hasDefenderDodge = (0, skill_1.hasSkill)(defender, skill_1.SKILL_NAMES.DODGE);
|
|
17
|
+
let hasAttackerTacle = (0, skill_1.hasSkill)(attacker, skill_1.SKILL_NAMES.TACKLE);
|
|
18
|
+
return hasDefenderDodge && !hasAttackerTacle;
|
|
19
|
+
};
|
|
20
|
+
// ah oui si je suis bloqué à deux dès contre et que j'ai pas blocage, en effet je voudrais 1 3 2 4 5voir 1 3 4 2 5 si j'ai esquive
|
|
21
|
+
// c'est vrai
|
|
22
|
+
// la ligne if (!hasSkill(defender, SKILL_NAMES.BLOCK)) { doit aussi s'appliquer quand l'attaque a pas blocage du coup
|
|
23
|
+
// mais que quand c'est en dés contre c'est ca?
|
|
24
|
+
// je vérifierai ca
|
|
25
|
+
// faut que je le dessine
|
|
26
|
+
const getOrderDice = (attacker, defender) => {
|
|
27
|
+
let order = [
|
|
28
|
+
{ value: 5, isReroll: false }, // Never change
|
|
29
|
+
{ value: 4, isReroll: false },
|
|
30
|
+
{ value: 3, isReroll: false },
|
|
31
|
+
{ value: 2, isReroll: true },
|
|
32
|
+
{ value: 1, isReroll: true }, // Never change
|
|
33
|
+
];
|
|
34
|
+
// Only block can make change the order
|
|
35
|
+
if ((0, skill_1.hasSkill)(attacker, skill_1.SKILL_NAMES.BLOCK)) {
|
|
36
|
+
// If attacker has block, he will not reroll a 2 result
|
|
37
|
+
const diceTwo = order.find((o) => o.value === 2);
|
|
38
|
+
if (diceTwo) {
|
|
39
|
+
diceTwo.isReroll = false;
|
|
40
|
+
}
|
|
41
|
+
// If def also have block, Nothing happen
|
|
42
|
+
if (!(0, skill_1.hasSkill)(defender, skill_1.SKILL_NAMES.BLOCK)) {
|
|
43
|
+
if (hasDefenserDodge(attacker, defender)) {
|
|
44
|
+
order = [
|
|
45
|
+
{ value: 5, isReroll: false },
|
|
46
|
+
{ value: 2, isReroll: false },
|
|
47
|
+
{ value: 4, isReroll: false },
|
|
48
|
+
{ value: 3, isReroll: false },
|
|
49
|
+
{ value: 1, isReroll: true },
|
|
50
|
+
];
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
order = [
|
|
54
|
+
{ value: 5, isReroll: false },
|
|
55
|
+
{ value: 4, isReroll: false },
|
|
56
|
+
{ value: 2, isReroll: false },
|
|
57
|
+
{ value: 3, isReroll: false },
|
|
58
|
+
{ value: 1, isReroll: true },
|
|
59
|
+
];
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return order;
|
|
64
|
+
};
|
|
65
|
+
exports.getOrderDice = getOrderDice;
|
|
66
|
+
const getOrderDiceAgainst = (attacker, defender) => {
|
|
67
|
+
if ((0, skill_1.hasSkill)(defender, skill_1.SKILL_NAMES.BLOCK)) {
|
|
68
|
+
if ((0, skill_1.hasSkill)(defender, skill_1.SKILL_NAMES.WRESTLE)) {
|
|
69
|
+
return [
|
|
70
|
+
{ value: 1, isReroll: true },
|
|
71
|
+
{ value: 3, isReroll: false },
|
|
72
|
+
{ value: 2, isReroll: !(0, skill_1.hasSkill)(attacker, skill_1.SKILL_NAMES.BLOCK) },
|
|
73
|
+
{ value: 4, isReroll: false },
|
|
74
|
+
{ value: 5, isReroll: false },
|
|
75
|
+
];
|
|
76
|
+
}
|
|
77
|
+
return [
|
|
78
|
+
{ value: 1, isReroll: true },
|
|
79
|
+
{ value: 2, isReroll: !(0, skill_1.hasSkill)(attacker, skill_1.SKILL_NAMES.BLOCK) },
|
|
80
|
+
{ value: 3, isReroll: false },
|
|
81
|
+
{ value: 4, isReroll: false },
|
|
82
|
+
{ value: 5, isReroll: false },
|
|
83
|
+
];
|
|
84
|
+
}
|
|
85
|
+
if (hasDefenserDodge(attacker, defender)) {
|
|
86
|
+
return [
|
|
87
|
+
{ value: 1, isReroll: true },
|
|
88
|
+
{ value: 3, isReroll: false },
|
|
89
|
+
{ value: 4, isReroll: false },
|
|
90
|
+
{ value: 2, isReroll: !(0, skill_1.hasSkill)(attacker, skill_1.SKILL_NAMES.BLOCK) },
|
|
91
|
+
{ value: 5, isReroll: false },
|
|
92
|
+
];
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
return [
|
|
96
|
+
{ value: 1, isReroll: true },
|
|
97
|
+
{ value: 3, isReroll: false },
|
|
98
|
+
{ value: 2, isReroll: !(0, skill_1.hasSkill)(attacker, skill_1.SKILL_NAMES.BLOCK) },
|
|
99
|
+
{ value: 4, isReroll: false },
|
|
100
|
+
{ value: 5, isReroll: false },
|
|
101
|
+
];
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
exports.getOrderDiceAgainst = getOrderDiceAgainst;
|
package/dist/calcul.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.distanceSquares = exports.distance = void 0;
|
|
4
|
+
const distance = (p1, p2) => {
|
|
5
|
+
return Math.sqrt(Math.pow(p1.x - p2.x, 2) + Math.pow(p1.y - p2.y, 2));
|
|
6
|
+
};
|
|
7
|
+
exports.distance = distance;
|
|
8
|
+
const distanceSquares = (p1, p2, distance) => {
|
|
9
|
+
return Math.abs(p1.x - p2.x) <= distance && Math.abs(p1.y - p2.y) <= distance;
|
|
10
|
+
};
|
|
11
|
+
exports.distanceSquares = distanceSquares;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.canUseFend = canUseFend;
|
|
4
|
+
exports.canUsePileDriver = canUsePileDriver;
|
|
5
|
+
exports.canUseStandFirm = canUseStandFirm;
|
|
6
|
+
exports.canUseStandWrestle = canUseStandWrestle;
|
|
7
|
+
const position_1 = require("./position");
|
|
8
|
+
const skill_1 = require("./skill");
|
|
9
|
+
const status_1 = require("./status");
|
|
10
|
+
function canUseFend(playerFrom, playerTo, isBlitz) {
|
|
11
|
+
if (!(0, skill_1.hasSkill)(playerTo, skill_1.SKILL_NAMES.FEND)) {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
if ((0, skill_1.hasSkill)(playerFrom, skill_1.SKILL_NAMES.JUGGERNAUT) && isBlitz) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
function canUseStandFirm(playerFrom, playerTo, isBlitz) {
|
|
20
|
+
if (playerTo && !(0, skill_1.hasSkill)(playerTo, skill_1.SKILL_NAMES.STAND_FIRM)) {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
if (playerFrom && (0, skill_1.hasSkill)(playerFrom, skill_1.SKILL_NAMES.JUGGERNAUT) && isBlitz) {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
function canUseStandWrestle(playerFrom, playerTo, isBlitz) {
|
|
29
|
+
if ((0, skill_1.hasSkill)(playerFrom, skill_1.SKILL_NAMES.JUGGERNAUT) && isBlitz) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
if ((0, skill_1.hasSkill)(playerFrom, skill_1.SKILL_NAMES.WRESTLE) ||
|
|
33
|
+
(0, skill_1.hasSkill)(playerTo, skill_1.SKILL_NAMES.WRESTLE)) {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
function canUsePileDriver(playerFrom, playerTo) {
|
|
39
|
+
if ((0, skill_1.hasSkill)(playerFrom, skill_1.SKILL_NAMES.PILE_DRIVER) &&
|
|
40
|
+
(0, status_1.hasStatusTacleZone)(playerFrom) &&
|
|
41
|
+
(0, status_1.hasStatusFall)(playerTo) &&
|
|
42
|
+
(0, position_1.isAdjacent)(playerFrom, playerTo)) {
|
|
43
|
+
return true;
|
|
44
|
+
}
|
|
45
|
+
return false;
|
|
46
|
+
}
|
package/dist/card.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.USER_CARD_RARITY = exports.CARD_TYPE = exports.CARD_RARITY = void 0;
|
|
4
|
+
const CARD_TYPE = {
|
|
5
|
+
PLAYER: "player",
|
|
6
|
+
TEAM: "team",
|
|
7
|
+
};
|
|
8
|
+
exports.CARD_TYPE = CARD_TYPE;
|
|
9
|
+
const CARD_RARITY = {
|
|
10
|
+
COMMUN: "c",
|
|
11
|
+
UNCOMMUN: "u",
|
|
12
|
+
RARE: "r",
|
|
13
|
+
};
|
|
14
|
+
exports.CARD_RARITY = CARD_RARITY;
|
|
15
|
+
const USER_CARD_RARITY = {
|
|
16
|
+
SHINY_NONE: "0", // no foil
|
|
17
|
+
SHINY_RARE: "1", // rare foil (1x100)
|
|
18
|
+
SHINY_UNIQUE: "2", // unique foil (only player user)
|
|
19
|
+
};
|
|
20
|
+
exports.USER_CARD_RARITY = USER_CARD_RARITY;
|