enefel 1.0.163 → 1.0.165

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/canUseSkills.js CHANGED
@@ -1,7 +1,7 @@
1
- const { isAdjacent } = require("enefel");
2
- const { SKILL_NAMES } = require("enefel/skill");
3
- const { hasStatusTacleZone, hasStatusFall } = require("enefel/status");
4
- const { hasSkill } = require("enefel/skill");
1
+ const { isAdjacent } = require("./index");
2
+ const { SKILL_NAMES } = require("./skill");
3
+ const { hasStatusTacleZone, hasStatusFall } = require("./status");
4
+ const { hasSkill } = require("./skill");
5
5
 
6
6
  function canUseFend(playerFrom, playerTo, isBlitz) {
7
7
  if (!hasSkill(playerTo, SKILL_NAMES.FEND)) {
package/card.js CHANGED
@@ -9,16 +9,15 @@ const CARD_RARITY = {
9
9
  RARE: "r",
10
10
  };
11
11
 
12
- const CARD_DISPLAY = {
13
- N1: "1",
14
- N2: "2",
15
- N3: "3",
16
- N4: "4",
12
+ const USER_CARD_RARITY = {
13
+ SHINY_NONE: "0", // no foil
14
+ SHINY_RARE: "1", // rare foil (1x100)
15
+ SHINY_UNIQUE: "2", // unique foil (only player user)
17
16
  };
18
17
 
19
18
  const card = {
20
19
  CARD_TYPE,
21
20
  CARD_RARITY,
22
- CARD_DISPLAY,
21
+ USER_CARD_RARITY,
23
22
  };
24
23
  module.exports = card;
package/date.js CHANGED
@@ -37,4 +37,24 @@ function isFullMoon(currentDate = new Date()) {
37
37
  return getMoonPhase(year, month, day) === 4;
38
38
  }
39
39
 
40
- module.exports = { isFullMoon };
40
+ function isDateMoreThanDays(dateString, days = 30) {
41
+ // Convert the date string to a Date object
42
+ const endDate = new Date(dateString);
43
+
44
+ // Get the current date
45
+ const now = new Date();
46
+
47
+ // Calculate the difference in milliseconds between the two dates
48
+ const difference = now.getTime() - endDate.getTime();
49
+
50
+ // Convert the difference to days
51
+ const daysDiff = difference / (1000 * 3600 * 24);
52
+
53
+ // Convert the days to months
54
+ const monthsDiff = daysDiff / days;
55
+
56
+ // If the difference is greater than or equal to 1, the date is more than one month ago
57
+ return monthsDiff >= 1;
58
+ }
59
+
60
+ module.exports = { isFullMoon, isDateMoreThanDays };
package/improvement.js CHANGED
@@ -20,8 +20,8 @@ const SPP = {
20
20
  EXP_REU: 1,
21
21
  EXP_SOR: 2,
22
22
  EXP_TD: 3,
23
- EXP_FALL: 1,
24
- EXP_ASSIST: 0.5,
23
+ EXP_FALL: 0,
24
+ EXP_ASSIST: 0,
25
25
  },
26
26
  [GAME_TYPE.DIVISION]: {
27
27
  EXP_BONUS: 1,
@@ -30,8 +30,8 @@ const SPP = {
30
30
  EXP_REU: 1,
31
31
  EXP_SOR: 2,
32
32
  EXP_TD: 3,
33
- EXP_FALL: 1,
34
- EXP_ASSIST: 0.5,
33
+ EXP_FALL: 0,
34
+ EXP_ASSIST: 0,
35
35
  },
36
36
  [GAME_TYPE.OPEN]: {
37
37
  EXP_BONUS: 1,
@@ -40,8 +40,8 @@ const SPP = {
40
40
  EXP_REU: 1,
41
41
  EXP_SOR: 2,
42
42
  EXP_TD: 3,
43
- EXP_FALL: 1,
44
- EXP_ASSIST: 0.5,
43
+ EXP_FALL: 0,
44
+ EXP_ASSIST: 0,
45
45
  },
46
46
  [GAME_TYPE.PLAYOFF]: {
47
47
  EXP_BONUS: 1,
@@ -50,8 +50,8 @@ const SPP = {
50
50
  EXP_REU: 1,
51
51
  EXP_SOR: 2,
52
52
  EXP_TD: 3,
53
- EXP_FALL: 1,
54
- EXP_ASSIST: 0.5,
53
+ EXP_FALL: 0,
54
+ EXP_ASSIST: 0,
55
55
  },
56
56
  };
57
57
  const ranges = [6, 16, 31, 51, 76, 176];
package/index.js CHANGED
@@ -202,6 +202,7 @@ const PLAYER_HISTORY_TYPE = {
202
202
  REDUCTION: "r",
203
203
  REMOVE_FROM_TEAM: "rt",
204
204
  SKILL: "s",
205
+ RAZ: "raz",
205
206
  };
206
207
 
207
208
  const PLAYER_HISTORY_INFO = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "enefel",
3
- "version": "1.0.163",
3
+ "version": "1.0.165",
4
4
  "main": "index.js",
5
5
  "author": "Manest",
6
6
  "license": "MIT",
@@ -11,6 +11,7 @@
11
11
  "test": "jest"
12
12
  },
13
13
  "dependencies": {
14
- "yup": "^0.28.5"
14
+ "yup": "^0.28.5",
15
+ "seedrandom": "3.0.5"
15
16
  }
16
17
  }
package/race.js CHANGED
@@ -1,8 +1,10 @@
1
1
  const { AVATAR_LIST } = require("./avatars");
2
2
  const { AVATAR_DEFAULT_LIST } = require("./avatarsDefault");
3
3
  const { hasBadge, BADGE_NAMES } = require("./badge");
4
- const { getCareers, RACE } = require("./career");
4
+ const { getCareers, RACE, AVATAR } = require("./career");
5
5
  const { canBeSelectedByUser } = require("./state");
6
+ const alea = require("seedrandom/lib/alea");
7
+ const { getRandomNumber } = require("./random");
6
8
 
7
9
  const ANIMOSITY_NUMBER = 2;
8
10
 
@@ -93,8 +95,41 @@ const getCareerFromPlayer = (player) => {
93
95
  return getCareerFromKey(getCareerKeyFromPlayer(player));
94
96
  };
95
97
 
98
+ const getPlayerAvatarDefault = (player) => {
99
+ const avatars = AVATAR_DEFAULT_LIST;
100
+ const career = getCareerFromPlayer(player);
101
+ const listAvailable = [];
102
+
103
+ for (const avatar of career.avatars) {
104
+ // Temporary. Before theiy can choose their default avatar
105
+ if (
106
+ (career.badge === RACE.HUMAN ||
107
+ career.badge === RACE.IMPERIAL ||
108
+ career.badge === RACE.NORSE) &&
109
+ avatar === AVATAR.HUMAN_WOMAN
110
+ ) {
111
+ continue;
112
+ }
113
+ if (avatars[avatar]) {
114
+ avatars[avatar].forEach((item) => {
115
+ listAvailable.push(item);
116
+ });
117
+ }
118
+ }
119
+ if (listAvailable.length === 0) {
120
+ return null;
121
+ }
122
+
123
+ const r = new alea(`${player.id}`);
124
+ return listAvailable[getRandomNumber(0, listAvailable.length - 1, r)].file;
125
+ };
126
+
96
127
  const getPlayerAvatar = (player) => {
97
- return player.avatar || player.avatarDefault;
128
+ const av = player.avatar || player.avatarDefault;
129
+ if (!av) {
130
+ return null;
131
+ }
132
+ return av.replace(".png", ".jpeg");
98
133
  };
99
134
 
100
135
  const getPlayerAvatarPath = (player) => {
@@ -330,4 +365,5 @@ module.exports = {
330
365
  getAvatarTypeFromPlayer,
331
366
  getPlayerAvatar,
332
367
  getPlayerAvatarPath,
368
+ getPlayerAvatarDefault,
333
369
  };