@opfr/raids 0.8.16 → 0.10.0

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.
Files changed (75) hide show
  1. package/assets/happy_christmas/end_happy_ending.webp +0 -0
  2. package/assets/happy_christmas/end_refuse_quest.webp +0 -0
  3. package/assets/happy_christmas/ev_abandoned_village.webp +0 -0
  4. package/assets/happy_christmas/ev_candies_island.webp +0 -0
  5. package/assets/happy_christmas/ev_center_village.webp +0 -0
  6. package/assets/happy_christmas/ev_enter_in_temple.webp +0 -0
  7. package/assets/happy_christmas/ev_espace_giant.webp +0 -0
  8. package/assets/happy_christmas/ev_fail_attack_on_jack_frost.webp +0 -0
  9. package/assets/happy_christmas/ev_follow_giant_trace.webp +0 -0
  10. package/assets/happy_christmas/ev_forest_already_meet_giant.webp +0 -0
  11. package/assets/happy_christmas/ev_found_bear.webp +0 -0
  12. package/assets/happy_christmas/ev_found_elf.webp +0 -0
  13. package/assets/happy_christmas/ev_found_refuge.webp +0 -0
  14. package/assets/happy_christmas/ev_found_reinder.webp +0 -0
  15. package/assets/happy_christmas/ev_found_santa_claus_house.webp +0 -0
  16. package/assets/happy_christmas/ev_free_elf.webp +0 -0
  17. package/assets/happy_christmas/ev_frozen_clouds.webp +0 -0
  18. package/assets/happy_christmas/ev_futur_spirit.webp +0 -0
  19. package/assets/happy_christmas/ev_giant_cavern.webp +0 -0
  20. package/assets/happy_christmas/ev_giant_spawn.webp +0 -0
  21. package/assets/happy_christmas/ev_gingerbread.webp +0 -0
  22. package/assets/happy_christmas/ev_jack_frost_hit.webp +0 -0
  23. package/assets/happy_christmas/ev_last_attack.webp +0 -0
  24. package/assets/happy_christmas/ev_look_magic_map.webp +0 -0
  25. package/assets/happy_christmas/ev_looking_across_window.webp +0 -0
  26. package/assets/happy_christmas/ev_past_spirit.webp +0 -0
  27. package/assets/happy_christmas/ev_present_spirit.webp +0 -0
  28. package/assets/happy_christmas/ev_reinder_human.webp +0 -0
  29. package/assets/happy_christmas/ev_rest_and_listen.webp +0 -0
  30. package/assets/happy_christmas/ev_rest_and_listen_but_nothing_given.webp +0 -0
  31. package/assets/happy_christmas/ev_santa_claus_island.webp +0 -0
  32. package/assets/happy_christmas/ev_snowy_forest.webp +0 -0
  33. package/assets/happy_christmas/ev_storm.webp +0 -0
  34. package/assets/happy_christmas/ev_succeed_attack_again.webp +0 -0
  35. package/assets/happy_christmas/ev_succeed_attack_again_again.webp +0 -0
  36. package/assets/happy_christmas/ev_success_convince.webp +0 -0
  37. package/assets/happy_christmas/ev_sugar_forest.webp +0 -0
  38. package/assets/happy_christmas/ev_too_much_sugar.webp +0 -0
  39. package/assets/happy_christmas/ev_village.webp +0 -0
  40. package/assets/happy_christmas/ev_warm.webp +0 -0
  41. package/assets/happy_christmas/ev_win_fight.webp +0 -0
  42. package/dist/index.es.js +8862 -2884
  43. package/dist/index.umd.js +16 -16
  44. package/dist/raids/happyChristmas.d.ts +4 -0
  45. package/dist/raids/happyChristmas.d.ts.map +1 -0
  46. package/dist/raids/happyChristmas.js +5585 -0
  47. package/dist/raids/happyChristmas.js.map +1 -0
  48. package/dist/raids/index.d.ts +1 -0
  49. package/dist/raids/index.d.ts.map +1 -1
  50. package/dist/raids/index.js +1 -0
  51. package/dist/raids/index.js.map +1 -1
  52. package/dist/raids/mysteriousIsland.d.ts.map +1 -1
  53. package/dist/raids/mysteriousIsland.js +2 -1
  54. package/dist/raids/mysteriousIsland.js.map +1 -1
  55. package/dist/raids/pirateCave.d.ts.map +1 -1
  56. package/dist/raids/pirateCave.js +2 -1
  57. package/dist/raids/pirateCave.js.map +1 -1
  58. package/dist/raids/questHappyChristmas.d.ts +4 -0
  59. package/dist/raids/questHappyChristmas.d.ts.map +1 -0
  60. package/dist/raids/questHappyChristmas.js +5591 -0
  61. package/dist/raids/questHappyChristmas.js.map +1 -0
  62. package/dist/raids/resources.d.ts.map +1 -1
  63. package/dist/raids/resources.js +2 -1
  64. package/dist/raids/resources.js.map +1 -1
  65. package/dist/raids/training.d.ts.map +1 -1
  66. package/dist/raids/training.js +8 -7
  67. package/dist/raids/training.js.map +1 -1
  68. package/dist/types.d.ts +32 -13
  69. package/dist/types.d.ts.map +1 -1
  70. package/dist/utils.d.ts +3 -3
  71. package/dist/utils.d.ts.map +1 -1
  72. package/dist/utils.js +20 -5
  73. package/dist/utils.js.map +1 -1
  74. package/locales/fr.json +672 -0
  75. package/package.json +6 -6
package/dist/utils.js CHANGED
@@ -1,13 +1,13 @@
1
1
  import { emojis } from '@opfr/emojis';
2
2
  import { findItem } from '@opfr/items';
3
3
  import { t } from '@opfr/translate';
4
- import { formatNumber, isDefined } from '@opfr/utils-lang';
4
+ import { formatNumber, precise } from '@opfr/utils-lang';
5
5
  import * as AllRaids from './raids';
6
6
  export const isRaidEvent = (step) => step.id.startsWith('ev_');
7
7
  export const isRaidUserChoice = (step) => step.id.startsWith('uc_');
8
8
  export const isRaidGoto = (step) => step.id.startsWith('goto_');
9
9
  export const isRaidEnd = (step) => step.id.startsWith('end_');
10
- export const isRaidCharacteristicsCheck = (step) => step.id.startsWith('c_');
10
+ export const isRaidConditionCheck = (step) => step.id.startsWith('c_');
11
11
  export const isRaidItemRequired = (step) => step.id.startsWith('rq_');
12
12
  export const formatRewards = (eventId, obtainedRewards, rewards, penalties) => {
13
13
  const result = [];
@@ -22,6 +22,15 @@ export const formatRewards = (eventId, obtainedRewards, rewards, penalties) => {
22
22
  if (key === 'xp' || key === 'berry') {
23
23
  return `- ${formatNumber(value)} ${emojis[key]}`;
24
24
  }
25
+ if (key === 'hp') {
26
+ return `- ${value} ${emojis.hp}`;
27
+ }
28
+ if (key === 'title') {
29
+ return `- Le titre "${value}"`;
30
+ }
31
+ if (key === 'condition') {
32
+ return `- Condition remplie : ${t(`raid_conditions.${value}`)}`;
33
+ }
25
34
  const item = findItem(key);
26
35
  return `- ${item.name(value)} ${item.emojis}`;
27
36
  })
@@ -42,6 +51,12 @@ export const formatRewards = (eventId, obtainedRewards, rewards, penalties) => {
42
51
  if (key === 'hp') {
43
52
  return `- ${value} ${emojis.hp}`;
44
53
  }
54
+ if (key === 'time_out') {
55
+ return `- Time out pendant ${precise(value)}`;
56
+ }
57
+ if (key === 'buffs') {
58
+ return `- Un debuff (consulter avec /boost)`;
59
+ }
45
60
  return `- ${findItem(key).name(value)} ${findItem(key).emojis}`;
46
61
  })
47
62
  .join('\n') +
@@ -49,9 +64,9 @@ export const formatRewards = (eventId, obtainedRewards, rewards, penalties) => {
49
64
  }
50
65
  return `${result.length > 0 ? '\n\n' : ''}${result.join('\n')}${result.length > 0 ? '\n' : ''}`;
51
66
  };
52
- export const getAllRaids = (isSpecial) => Object.values(AllRaids)
67
+ export const getAllRaids = (type) => Object.values(AllRaids)
53
68
  .map(raid => raid(null))
54
- .filter(raid => !isDefined(isSpecial) || raid.isSpecial === isSpecial);
69
+ .filter(raid => !type || raid.type === type);
55
70
  export const getRaid = (raidId, itemId) => {
56
71
  const raidFn = Object.values(AllRaids).find(raid => raid(itemId).id === raidId);
57
72
  if (!raidFn) {
@@ -63,7 +78,7 @@ export const getNextRaidStep = (currentEvent, nextStep) => {
63
78
  if (isRaidEvent(currentEvent)) {
64
79
  return currentEvent.outputs.find(choice => choice.id === nextStep);
65
80
  }
66
- if (isRaidCharacteristicsCheck(currentEvent)) {
81
+ if (isRaidConditionCheck(currentEvent)) {
67
82
  return currentEvent.success.id === nextStep
68
83
  ? currentEvent.success
69
84
  : currentEvent.failure;
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}