Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
 
 
 

180 rindas
3.3 KiB

  1. define([
  2. 'misc/events'
  3. ], function (
  4. events
  5. ) {
  6. var config = {
  7. 'wizard 1': {
  8. name: 'Wizard 1',
  9. sprite: [2, 0],
  10. class: 'wizard',
  11. default: true
  12. },
  13. 'wizard 2': {
  14. name: 'Wizard 2',
  15. sprite: [3, 0],
  16. class: 'wizard',
  17. default: true
  18. },
  19. 'warrior 1': {
  20. name: 'Warrior 1',
  21. sprite: [1, 1],
  22. class: 'warrior',
  23. default: true
  24. },
  25. 'warrior 2': {
  26. name: 'Warrior 2',
  27. sprite: [2, 1],
  28. class: 'warrior',
  29. default: true
  30. },
  31. 'cleric 1': {
  32. name: 'Cleric 1',
  33. sprite: [4, 0],
  34. class: 'wizard',
  35. default: true
  36. },
  37. 'cleric 2': {
  38. name: 'Cleric 2',
  39. sprite: [5, 0],
  40. class: 'wizard',
  41. default: true
  42. },
  43. 'thief 1': {
  44. name: 'Thief 1',
  45. sprite: [6, 0],
  46. class: 'thief',
  47. default: true
  48. },
  49. 'thief 2': {
  50. name: 'Thief 2',
  51. sprite: [7, 0],
  52. class: 'thief',
  53. default: true
  54. },
  55. 'gaekatla druid': {
  56. name: 'Skin: Gaekatlan Druid',
  57. sprite: [0, 4],
  58. class: 'cleric'
  59. },
  60. //Elite Skin Pack
  61. '1.1': {
  62. name: 'Sorcerer',
  63. spritesheet: 'images/skins/0001.png',
  64. sprite: [0, 0],
  65. class: 'wizard'
  66. },
  67. '1.2': {
  68. name: 'Diviner',
  69. spritesheet: 'images/skins/0001.png',
  70. sprite: [1, 0],
  71. class: 'wizard'
  72. },
  73. '1.3': {
  74. name: 'Cutthroat',
  75. spritesheet: 'images/skins/0001.png',
  76. sprite: [2, 0],
  77. class: 'thief'
  78. },
  79. '1.4': {
  80. name: 'Man of War',
  81. spritesheet: 'images/skins/0001.png',
  82. sprite: [3, 0],
  83. class: 'warrior'
  84. },
  85. '1.5': {
  86. name: 'Occultist',
  87. spritesheet: 'images/skins/0001.png',
  88. sprite: [4, 0],
  89. class: 'wizard'
  90. },
  91. //Templar Skin Pack
  92. '2.1': {
  93. name: 'Crusader 1',
  94. spritesheet: 'images/skins/0010.png',
  95. sprite: [0, 0],
  96. class: ['wizard', 'warrior']
  97. },
  98. '2.2': {
  99. name: 'Crusader 2',
  100. spritesheet: 'images/skins/0010.png',
  101. sprite: [1, 0],
  102. class: ['wizard', 'warrior']
  103. },
  104. '2.3': {
  105. name: 'Crusader 3',
  106. spritesheet: 'images/skins/0010.png',
  107. sprite: [2, 0],
  108. class: ['wizard', 'warrior']
  109. },
  110. '2.4': {
  111. name: 'Crusader 4',
  112. spritesheet: 'images/skins/0010.png',
  113. sprite: [3, 0],
  114. class: ['wizard', 'warrior']
  115. },
  116. '2.5': {
  117. name: 'Grand Crusader',
  118. spritesheet: 'images/skins/0010.png',
  119. sprite: [4, 0],
  120. class: ['wizard', 'warrior']
  121. }
  122. };
  123. return {
  124. init: function () {
  125. events.emit('onBeforeGetSkins', config);
  126. },
  127. getBlueprint: function (skinId) {
  128. return config[skinId];
  129. },
  130. getSkinList: function (skins) {
  131. var list = Object.keys(config)
  132. .filter(function (s) {
  133. return ((config[s].default) || (skins.some(f => (f == s))));
  134. })
  135. .map(function (s) {
  136. var res = extend(true, {}, config[s]);
  137. res.id = s;
  138. return res;
  139. });
  140. var result = {};
  141. list.forEach(function (skin) {
  142. var classList = skin.class;
  143. if (!classList.push)
  144. classList = [classList];
  145. classList.forEach(function (className) {
  146. if (!result[className])
  147. result[className] = [];
  148. result[className].push({
  149. name: skin.name,
  150. id: skin.id,
  151. sprite: skin.sprite[0] + ',' + skin.sprite[1],
  152. spritesheet: skin.spritesheet
  153. });
  154. }, this);
  155. });
  156. return result;
  157. },
  158. getCell: function (skinId) {
  159. var skin = config[skinId];
  160. return (skin.sprite[1] * 8) + skin.sprite[0];
  161. },
  162. getSpritesheet: function (skinId) {
  163. var skin = config[skinId];
  164. return skin.spritesheet || 'characters';
  165. }
  166. };
  167. });