@blizzhackers/d2data 2.0.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 (185) hide show
  1. package/.eslintrc.js +59 -0
  2. package/LICENSE +21 -0
  3. package/README.md +12 -0
  4. package/_config.yml +1 -0
  5. package/compile.js +789 -0
  6. package/docs/Avqest.ttf +0 -0
  7. package/docs/_config.yml +1 -0
  8. package/docs/armor.js +134 -0
  9. package/docs/css/d2font.css +10 -0
  10. package/docs/drops/.vscode/extensions.json +3 -0
  11. package/docs/drops/README.md +7 -0
  12. package/docs/drops/dist/assets/index.12ae3c90.js +6675 -0
  13. package/docs/drops/dist/index.html +24 -0
  14. package/docs/drops/index.html +23 -0
  15. package/docs/drops/package-lock.json +1143 -0
  16. package/docs/drops/package.json +17 -0
  17. package/docs/drops/src/App.vue +870 -0
  18. package/docs/drops/src/main.js +4 -0
  19. package/docs/drops/vite.config.js +8 -0
  20. package/docs/drops.html +10 -0
  21. package/docs/effort.css +118 -0
  22. package/docs/effort.js +367 -0
  23. package/docs/elem-effort.html +130 -0
  24. package/docs/images/0-0.svg +18 -0
  25. package/docs/images/0-1.svg +17 -0
  26. package/docs/images/0-2.svg +17 -0
  27. package/docs/images/1-0.svg +18 -0
  28. package/docs/images/1-1.svg +18 -0
  29. package/docs/images/1-2.svg +17 -0
  30. package/docs/images/2-0.svg +17 -0
  31. package/docs/images/2-1.svg +11 -0
  32. package/docs/images/2-2.svg +18 -0
  33. package/docs/images/3-0.svg +17 -0
  34. package/docs/images/3-1.svg +18 -0
  35. package/docs/images/3-2.svg +18 -0
  36. package/docs/images/4-0.svg +18 -0
  37. package/docs/images/4-1.svg +18 -0
  38. package/docs/images/4-2.svg +18 -0
  39. package/docs/images/5-0.svg +18 -0
  40. package/docs/images/5-1.svg +18 -0
  41. package/docs/images/5-2.svg +14 -0
  42. package/docs/images/6-0.svg +17 -0
  43. package/docs/images/6-1.svg +17 -0
  44. package/docs/images/6-2.svg +17 -0
  45. package/docs/images/AmSkillicon.png +0 -0
  46. package/docs/images/AsSkillicon.png +0 -0
  47. package/docs/images/BaSkillicon.png +0 -0
  48. package/docs/images/DrSkillicon.png +0 -0
  49. package/docs/images/NeSkillicon.png +0 -0
  50. package/docs/images/PaSkillicon.png +0 -0
  51. package/docs/images/Skillicon.png +0 -0
  52. package/docs/images/SoSkillicon.png +0 -0
  53. package/docs/index.md +5 -0
  54. package/docs/items.html +170 -0
  55. package/docs/leveling/.vscode/extensions.json +3 -0
  56. package/docs/leveling/README.md +7 -0
  57. package/docs/leveling/dist/assets/index.f9765357.js +1 -0
  58. package/docs/leveling/dist/index.html +24 -0
  59. package/docs/leveling/index.html +23 -0
  60. package/docs/leveling/package-lock.json +1143 -0
  61. package/docs/leveling/package.json +17 -0
  62. package/docs/leveling/src/App.vue +526 -0
  63. package/docs/leveling/src/main.js +4 -0
  64. package/docs/leveling/vite.config.js +8 -0
  65. package/docs/runewords/.vscode/extensions.json +3 -0
  66. package/docs/runewords/README.md +7 -0
  67. package/docs/runewords/dist/assets/index.0838f27c.js +6673 -0
  68. package/docs/runewords/dist/assets/index.73bf3e23.css +1 -0
  69. package/docs/runewords/dist/index.html +25 -0
  70. package/docs/runewords/index.html +23 -0
  71. package/docs/runewords/package-lock.json +1143 -0
  72. package/docs/runewords/package.json +17 -0
  73. package/docs/runewords/src/App.vue +781 -0
  74. package/docs/runewords/src/main.js +4 -0
  75. package/docs/runewords/src/modorder.json +234 -0
  76. package/docs/runewords/vite.config.js +8 -0
  77. package/docs/skills.css +1250 -0
  78. package/docs/skills.html +63 -0
  79. package/docs/skills.js +2192 -0
  80. package/docs/vue-setup.js +12 -0
  81. package/docs/weapons.js +149 -0
  82. package/font-example.html +34 -0
  83. package/json/.gitkeep +0 -0
  84. package/json/actinfo.json +116 -0
  85. package/json/armor.json +17232 -0
  86. package/json/armtype.json +17 -0
  87. package/json/atomic.json +1026 -0
  88. package/json/automagic.json +696 -0
  89. package/json/automap.json +40732 -0
  90. package/json/belts.json +743 -0
  91. package/json/bodylocs.json +52 -0
  92. package/json/books.json +34 -0
  93. package/json/charstats.json +525 -0
  94. package/json/colors.json +107 -0
  95. package/json/compcode.json +577 -0
  96. package/json/composit.json +82 -0
  97. package/json/cubemain.json +2112 -0
  98. package/json/cubemod.json +57 -0
  99. package/json/difficultylevels.json +110 -0
  100. package/json/elemtypes.json +62 -0
  101. package/json/events.json +72 -0
  102. package/json/experience.json +1214 -0
  103. package/json/gamble.json +520 -0
  104. package/json/gems.json +1868 -0
  105. package/json/hireling.json +7640 -0
  106. package/json/hitclass.json +67 -0
  107. package/json/inventory.json +2148 -0
  108. package/json/itemratio.json +134 -0
  109. package/json/items.json +54705 -0
  110. package/json/itemstatcost.json +5503 -0
  111. package/json/itemtypes.json +2567 -0
  112. package/json/levels.json +15515 -0
  113. package/json/localestrings-chi.json +8717 -0
  114. package/json/localestrings-deu.json +8717 -0
  115. package/json/localestrings-eng.json +8722 -0
  116. package/json/localestrings-esp.json +8717 -0
  117. package/json/localestrings-fra.json +8718 -0
  118. package/json/localestrings-ita.json +8717 -0
  119. package/json/localestrings-kor.json +8715 -0
  120. package/json/localestrings-pol.json +8716 -0
  121. package/json/lowqualityitems.json +6 -0
  122. package/json/lvlmaze.json +910 -0
  123. package/json/lvlprest.json +28595 -0
  124. package/json/lvlsub.json +824 -0
  125. package/json/lvltypes.json +1377 -0
  126. package/json/lvlwarp.json +1515 -0
  127. package/json/magicprefix.json +12349 -0
  128. package/json/magicsuffix.json +13833 -0
  129. package/json/misc.json +11602 -0
  130. package/json/misscalc.json +217 -0
  131. package/json/missiles.json +23871 -0
  132. package/json/monai.json +1111 -0
  133. package/json/moncountest.json +642 -0
  134. package/json/monequip.json +361 -0
  135. package/json/monlvl.json +3665 -0
  136. package/json/monmode.json +98 -0
  137. package/json/monplace.json +39 -0
  138. package/json/monpopulationest.json +17383 -0
  139. package/json/monpreset.json +922 -0
  140. package/json/monprop.json +144 -0
  141. package/json/monseq.json +5211 -0
  142. package/json/monsounds.json +2530 -0
  143. package/json/monstats.json +66101 -0
  144. package/json/monstats2.json +34882 -0
  145. package/json/montype.json +274 -0
  146. package/json/monumod.json +504 -0
  147. package/json/npc.json +232 -0
  148. package/json/objects.json +87041 -0
  149. package/json/objgroup.json +3733 -0
  150. package/json/objmode.json +42 -0
  151. package/json/objpreset.json +2906 -0
  152. package/json/objtype.json +2457 -0
  153. package/json/overlay.json +8008 -0
  154. package/json/pettype.json +226 -0
  155. package/json/playerclass.json +39 -0
  156. package/json/plrmode.json +122 -0
  157. package/json/plrtype.json +39 -0
  158. package/json/properties.json +2823 -0
  159. package/json/qualityitems.json +149 -0
  160. package/json/rareprefix.json +296 -0
  161. package/json/raresuffix.json +921 -0
  162. package/json/runes.json +3280 -0
  163. package/json/setitems.json +3871 -0
  164. package/json/sets.json +1001 -0
  165. package/json/shrines.json +319 -0
  166. package/json/skillcalc.json +457 -0
  167. package/json/skilldesc.json +7532 -0
  168. package/json/skills.json +16717 -0
  169. package/json/soundenviron.json +2862 -0
  170. package/json/sounds.json +446543 -0
  171. package/json/states.json +1578 -0
  172. package/json/storepage.json +22 -0
  173. package/json/superuniques.json +1405 -0
  174. package/json/tcprecalc.json +29302 -0
  175. package/json/treasureclassex.json +14932 -0
  176. package/json/treasureclassgroupsex.json +711 -0
  177. package/json/uniqueappellation.json +27 -0
  178. package/json/uniqueitems.json +14171 -0
  179. package/json/uniqueprefix.json +55 -0
  180. package/json/uniquesuffix.json +71 -0
  181. package/json/wanderingmon.json +3 -0
  182. package/json/weapons.json +25875 -0
  183. package/objext.js +53 -0
  184. package/package.json +16 -0
  185. package/string.js +42 -0
@@ -0,0 +1,63 @@
1
+ <!doctype html>
2
+ <html>
3
+ <head>
4
+ <title>Diablo 2 Skill Calculator</title>
5
+ <meta property="og:title" content="Diablo 2 Skill Calculator">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
8
+ <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
9
+ <link rel="stylesheet" href="skills.css">
10
+ </head>
11
+ <body class="container p-0 mt-sm-3 bg-transparent text-light">
12
+ <div id="skillapp" v-cloak>
13
+ <div class="nav nav-pills flex-column flex-sm-row nav-justified mb-3 class-select bg-dark" id="build-tab">
14
+ <template v-for="(current, buildIndex) in builds">
15
+ <a v-if="currentBuild === buildIndex" class="nav-item px-1 btn btn-danger" @dblclick="renameBuild(buildIndex)">Build: {{ builds[buildIndex].name || (buildIndex + 1) }}<template v-if="buildIndex"> (<a class="text-dark" @click="delBuild(buildIndex, $event)">Delete</a>)</template></a>
16
+ <a v-else class="nav-item px-1 btn btn-dark" @click="currentBuild = buildIndex">Build: {{ builds[buildIndex].name || (buildIndex + 1) }}<template v-if="buildIndex"> (<a class="text-danger" @click="delBuild(buildIndex, $event)">Delete</a>)</template></a>
17
+ </template>
18
+ <a class="px-2 btn btn-primary" @click="addBuild()">Add</a>
19
+ </div>
20
+ <div class="nav nav-pills flex-column flex-sm-row nav-justified mb-3 class-select bg-dark" id="class-tab">
21
+ <template v-for="(current, classIndex) in classes">
22
+ <a v-if="builds[currentBuild].currentClass === classIndex" class="nav-item px-1 btn btn-danger">{{ current.name }}</a>
23
+ <a v-else-if="!totalPoints" class="nav-item px-1 btn btn-dark" @click="builds[currentBuild].currentClass = classIndex">{{ current.name }}</a>
24
+ </template>
25
+ <a class="px-2 btn btn-primary" @click="resetSkills()">Reset</a>
26
+ <a class="point-display">{{ totalPoints }}</a>
27
+ </div>
28
+ <article class="text-center" :data-class="builds[currentBuild].currentClass">
29
+ <div class="row">
30
+ <div v-for="(tab, tabIndex) in classes[builds[currentBuild].currentClass].tabs" class="skill-tab-wrapper col-12 col-sm-4" :data-tab="tabIndex">
31
+ <div class="skill-tab bg-dark">
32
+ <h2 class="h5 my-2 hlh-2">{{ tab.name }}</h2>
33
+ <div class="skill-tab-content">
34
+ <img class="skill-tab-background" alt="" :src="'images/' + builds[currentBuild].currentClass + '-' + tabIndex + '.svg'">
35
+ <div class="row no-gutters">
36
+ <div v-for="(skill, skillIndex) in tab.skills" class="col-4 skill-icon-wrapper">
37
+ <template v-if="skill && skill.id">
38
+ <button class="skill-icon" :data-skill-id="skill.id" @click="skillClick(skill.id, true, $event)" @contextmenu="skillClick(skill.id, false, $event)"></button>
39
+ <div :class="'skill-icon-tooltip px-2 py-1' + (skillIndex < 9 ? ' bottom' : ' top') + [' right', ' center', ' left'][skillIndex % 3]">
40
+ <h3 class="h5 title">{{ (skills[skill.id] && skills[skill.id].name) || d2.skills[skill.id].skill || 'Unknown Skill' }} ({{ skill.id }})</h3>
41
+ <div class="my-1 desc">
42
+ <p v-if="skills[skill.id] && skills[skill.id].desc" class="text-pre">{{ skills[skill.id].desc }}</p>
43
+ <p v-for="line in skillDesc(skill.id)" :class="'desc-line text-pre type-' + line.type">{{ line.desc }}</p>
44
+ <p v-if="d2.skills[skill.id].reqlevel && d2.skills[skill.id].reqlevel > 1">Required Level: {{ d2.skills[skill.id].reqlevel }}</p>
45
+ <p v-if="skills[skill.id] && skills[skill.id].synergy" class="text-pre"><span class="synergy-title">{{ (skills[skill.id] && skills[skill.id].name) || d2.skills[skill.id].skill || 'Unknown Skill' }} synergies:</span><span v-for="synergy in skills[skill.id].synergy" class="synergy"><span class="synergy-name">{{ (skills[synergy[0]] && skills[synergy[0]].name) || d2.skills[synergy[0]].skill || 'Unknown Skill' }}{{ synergy[1] ? ': ' : '' }}</span><span v-if="synergy[1]" class="synergy-value">{{ synergy[1] }}</span></span></p>
46
+ </div>
47
+ </div>
48
+ <input class="skill-icon-input" type="text" v-model.number="builds[currentBuild][skill.id]" v-on:input="skillCheck(skill.id, $event)">
49
+ </template>
50
+ <template v-else>
51
+ <div class="empty-skill-icon"></div>
52
+ </template>
53
+ </div>
54
+ </div>
55
+ </div>
56
+ </div>
57
+ </div>
58
+ </div>
59
+ </article>
60
+ </div>
61
+ </body>
62
+ <script src="skills.js"></script>
63
+ </html>