Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

393 строки
6.3 KiB

  1. define([
  2. '../../misc/events'
  3. ], function (
  4. events
  5. ) {
  6. var types = {
  7. head: {
  8. 'Helmet': {
  9. sprite: [0, 0],
  10. material: 'plate'
  11. },
  12. 'Cowl': {
  13. sprite: [0, 1],
  14. material: 'cloth'
  15. },
  16. 'Leather Cap': {
  17. sprite: [0, 2],
  18. material: 'leather'
  19. },
  20. 'Facemask': {
  21. sprite: [0, 3],
  22. material: 'leather'
  23. }
  24. },
  25. neck: {
  26. 'Pendant': {
  27. sprite: [1, 0],
  28. implicitStat: {
  29. stat: 'str',
  30. value: [1, 4]
  31. }
  32. },
  33. 'Amulet': {
  34. sprite: [1, 1],
  35. implicitStat: {
  36. stat: 'int',
  37. value: [1, 4]
  38. }
  39. },
  40. 'Locket': {
  41. sprite: [1, 2],
  42. implicitStat: {
  43. stat: 'dex',
  44. value: [1, 4]
  45. }
  46. },
  47. 'Choker': {
  48. sprite: [1, 3],
  49. implicitStat: {
  50. stat: 'regenHp',
  51. value: [2, 5]
  52. }
  53. }
  54. },
  55. chest: {
  56. 'Breastplate': {
  57. sprite: [2, 0],
  58. material: 'plate'
  59. },
  60. 'Robe': {
  61. material: 'cloth',
  62. sprite: [2, 1]
  63. },
  64. 'Leather Armor': {
  65. sprite: [2, 2],
  66. material: 'leather'
  67. },
  68. 'Scalemail': {
  69. sprite: [2, 3],
  70. material: 'leather'
  71. }
  72. },
  73. hands: {
  74. 'Gauntlets': {
  75. sprite: [3, 0],
  76. material: 'plate'
  77. },
  78. 'Gloves': {
  79. material: 'cloth',
  80. sprite: [3, 1]
  81. },
  82. 'Leather Gloves': {
  83. sprite: [3, 2],
  84. material: 'leather'
  85. },
  86. 'Scale Gloves': {
  87. sprite: [3, 3],
  88. material: 'leather'
  89. }
  90. },
  91. finger: {
  92. 'Signet': {
  93. sprite: [4, 0],
  94. implicitStat: {
  95. stat: 'armor',
  96. value: [5, 15]
  97. }
  98. },
  99. 'Ring': {
  100. sprite: [4, 1],
  101. implicitStat: {
  102. stat: 'regenMana',
  103. value: [1, 5]
  104. }
  105. },
  106. 'Loop': {
  107. sprite: [4, 2],
  108. implicitStat: {
  109. stat: 'allAttributes',
  110. value: [1, 7]
  111. }
  112. },
  113. 'Viridian Band': {
  114. sprite: [4, 3],
  115. implicitStat: {
  116. stat: 'physicalPercent',
  117. value: [1, 3]
  118. }
  119. }
  120. },
  121. waist: {
  122. 'Belt': {
  123. material: 'plate',
  124. sprite: [5, 0],
  125. implicitStat: {
  126. stat: 'armor',
  127. value: [10, 20]
  128. }
  129. },
  130. 'Sash': {
  131. material: 'cloth',
  132. sprite: [5, 1],
  133. implicitStat: {
  134. stat: 'manaMax',
  135. value: [1, 8]
  136. }
  137. },
  138. 'Leather Belt': {
  139. material: 'leather',
  140. sprite: [5, 2],
  141. implicitStat: {
  142. stat: 'addCritChance',
  143. value: [10, 50]
  144. }
  145. },
  146. 'Scaled Binding': {
  147. material: 'leather',
  148. sprite: [5, 3],
  149. implicitStat: {
  150. stat: 'vit',
  151. value: [2, 6]
  152. }
  153. }
  154. },
  155. legs: {
  156. 'Legplates': {
  157. material: 'plate',
  158. sprite: [6, 0]
  159. },
  160. 'Pants': {
  161. material: 'cloth',
  162. sprite: [6, 1]
  163. },
  164. 'Leather Pants': {
  165. sprite: [6, 2],
  166. material: 'leather'
  167. },
  168. 'Scale Leggings': {
  169. sprite: [6, 3],
  170. material: 'leather'
  171. }
  172. },
  173. feet: {
  174. 'Steel Boots': {
  175. material: 'plate',
  176. sprite: [7, 0]
  177. },
  178. 'Boots': {
  179. material: 'cloth',
  180. sprite: [7, 1]
  181. },
  182. 'Leather Boots': {
  183. material: 'leather',
  184. sprite: [7, 2]
  185. },
  186. 'Scale Boots': {
  187. material: 'leather',
  188. sprite: [7, 3]
  189. }
  190. },
  191. trinket: {
  192. 'Forged Ember': {
  193. sprite: [8, 0],
  194. implicitStat: {
  195. stat: 'armor',
  196. value: [25, 70]
  197. }
  198. },
  199. 'Smokey Orb': {
  200. sprite: [8, 1],
  201. implicitStat: {
  202. stat: 'dodgeAttackChance',
  203. value: [1, 3]
  204. }
  205. },
  206. 'Quartz Fragment': {
  207. sprite: [8, 2],
  208. implicitStat: {
  209. stat: 'elementArcanePercent',
  210. value: [3, 12]
  211. }
  212. },
  213. 'Mystic Card': {
  214. sprite: [8, 3],
  215. implicitStat: {
  216. stat: 'magicFind',
  217. value: [3, 12]
  218. }
  219. },
  220. 'Dragon Fang': {
  221. sprite: [8, 4],
  222. implicitStat: {
  223. stat: 'attackSpeed',
  224. value: [1, 5]
  225. }
  226. }
  227. },
  228. oneHanded: {
  229. 'Sword': {
  230. attrRequire: 'str',
  231. sprite: [9, 0],
  232. spellName: 'melee',
  233. spellConfig: {
  234. statType: 'str',
  235. statMult: 0.84,
  236. threatMult: 4,
  237. cdMax: 5,
  238. useWeaponRange: true,
  239. random: {
  240. damage: [3, 11.4]
  241. }
  242. },
  243. implicitStat: {
  244. stat: 'attackSpeed',
  245. value: [1, 5]
  246. }
  247. },
  248. 'Dagger': {
  249. attrRequire: 'dex',
  250. sprite: [9, 2],
  251. spellName: 'melee',
  252. spellConfig: {
  253. statType: 'dex',
  254. statMult: 0.88,
  255. cdMax: 3,
  256. useWeaponRange: true,
  257. random: {
  258. damage: [1, 3.8]
  259. }
  260. },
  261. implicitStat: {
  262. stat: 'addAttackCritChance',
  263. value: [10, 50]
  264. }
  265. },
  266. 'Wand': {
  267. attrRequire: 'int',
  268. sprite: [9, 8],
  269. spellName: 'projectile',
  270. spellConfig: {
  271. statType: 'int',
  272. statMult: 1,
  273. element: 'holy',
  274. cdMax: 4,
  275. manaCost: 0,
  276. range: 6,
  277. random: {
  278. damage: [2, 12]
  279. }
  280. },
  281. implicitStat: {
  282. stat: 'castSpeed',
  283. value: [1, 5]
  284. }
  285. }
  286. },
  287. twoHanded: {
  288. 'Axe': {
  289. attrRequire: 'str',
  290. sprite: [9, 3],
  291. spellName: 'melee',
  292. spellConfig: {
  293. statType: 'str',
  294. statMult: 0.84,
  295. threatMult: 4,
  296. cdMax: 5,
  297. useWeaponRange: true,
  298. random: {
  299. damage: [3, 15.4]
  300. }
  301. },
  302. implicitStat: {
  303. stat: 'addAttackCritMultiplier',
  304. value: [10, 30]
  305. }
  306. },
  307. 'Gnarled Staff': {
  308. attrRequire: 'int',
  309. sprite: [9, 1],
  310. spellName: 'projectile',
  311. spellConfig: {
  312. statType: 'int',
  313. statMult: 0.9,
  314. element: 'arcane',
  315. auto: true,
  316. cdMax: 7,
  317. manaCost: 0,
  318. range: 9,
  319. random: {
  320. damage: [2, 15]
  321. }
  322. },
  323. implicitStat: {
  324. stat: 'regenMana',
  325. value: [3, 9]
  326. }
  327. },
  328. 'Spear': {
  329. attrRequire: 'dex',
  330. sprite: [9, 6],
  331. spellName: 'melee',
  332. range: 2,
  333. spellConfig: {
  334. statType: 'dex',
  335. statMult: 0.84,
  336. threatMult: 4,
  337. cdMax: 5,
  338. useWeaponRange: true,
  339. random: {
  340. damage: [3, 11.4]
  341. }
  342. },
  343. implicitStat: {
  344. stat: 'dodgeAttackChance',
  345. value: [1, 7]
  346. }
  347. }
  348. },
  349. offHand: {
  350. 'Wooden Shield': {
  351. attrRequire: 'str',
  352. sprite: [13, 0],
  353. armorMult: 0.3,
  354. blockAttackMult: 1
  355. },
  356. 'Gilded Shield': {
  357. attrRequire: 'str',
  358. sprite: [13, 1],
  359. armorMult: 0.6,
  360. blockAttackMult: 0.5
  361. },
  362. 'Brittle Tome': {
  363. attrRequire: 'int',
  364. sprite: [13, 2],
  365. implicitStat: {
  366. stat: 'addSpellCritChance',
  367. value: [10, 50]
  368. }
  369. },
  370. 'Ancient Tome': {
  371. attrRequire: 'int',
  372. sprite: [13, 3],
  373. implicitStat: {
  374. stat: 'addSpellCritMultiplier',
  375. value: [10, 30]
  376. }
  377. }
  378. },
  379. tool: {
  380. 'Fishing Rod': {
  381. sprite: [11, 0]
  382. }
  383. }
  384. }
  385. return {
  386. types: types,
  387. init: function () {
  388. events.emit('onBeforeGetItemTypes', types);
  389. }
  390. };
  391. });