|
- let events = require('../misc/events');
-
- let config = {
- '1.0': {
- name: 'Wizard 1',
- sprite: [2, 0],
- defaultSpirit: 'owl',
- default: true
- },
- 1.1: {
- name: 'Wizard 2',
- sprite: [3, 0]
- },
- 1.2: {
- name: 'Warrior 1',
- sprite: [1, 1],
- defaultSpirit: 'bear',
- default: true
- },
- 1.3: {
- name: 'Warrior 2',
- sprite: [2, 1]
- },
- 1.4: {
- name: 'Cleric 1',
- sprite: [4, 0]
- },
- 1.5: {
- name: 'Cleric 2',
- sprite: [5, 0]
- },
- 1.6: {
- name: 'Thief 1',
- sprite: [6, 0],
- defaultSpirit: 'lynx',
- default: true
- },
- 1.7: {
- name: 'Thief 2',
- sprite: [7, 0]
- },
-
- '2.0': {
- name: 'Gaekatlan Druid',
- sprite: [0, 4]
- },
-
- //Elite Skin Pack
- '10.0': {
- name: 'Sorcerer',
- spritesheet: 'images/skins/0001.png',
- sprite: [0, 0]
- },
- 10.1: {
- name: 'Diviner',
- spritesheet: 'images/skins/0001.png',
- sprite: [1, 0]
- },
- 10.2: {
- name: 'Cutthroat',
- spritesheet: 'images/skins/0001.png',
- sprite: [2, 0]
- },
- 10.3: {
- name: 'Man of War',
- spritesheet: 'images/skins/0001.png',
- sprite: [3, 0]
- },
- 10.4: {
- name: 'Occultist',
- spritesheet: 'images/skins/0001.png',
- sprite: [4, 0]
- },
-
- //Templar Skin Pack
- '11.0': {
- name: 'Crusader 1',
- spritesheet: 'images/skins/0010.png',
- sprite: [0, 0]
- },
- 11.1: {
- name: 'Crusader 2',
- spritesheet: 'images/skins/0010.png',
- sprite: [1, 0]
- },
- 11.2: {
- name: 'Crusader 3',
- spritesheet: 'images/skins/0010.png',
- sprite: [2, 0]
- },
- 11.3: {
- name: 'Crusader 4',
- spritesheet: 'images/skins/0010.png',
- sprite: [3, 0]
- },
- 11.4: {
- name: 'Grand Crusader',
- spritesheet: 'images/skins/0010.png',
- sprite: [4, 0]
- },
- 11.5: {
- name: 'Infernal Crusader',
- spritesheet: 'images/skins/0010.png',
- sprite: [5, 0]
- }
- };
-
- module.exports = {
- init: function () {
- events.emit('onBeforeGetSkins', config);
- },
-
- getBlueprint: function (skinId) {
- return config[skinId];
- },
-
- getSkinList: function (skins) {
- let list = Object.keys(config)
- .filter(function (s) {
- return ((config[s].default) || (skins.some(f => ((f === s) || (f === '*')))));
- })
- .map(function (s) {
- let res = extend(true, {}, config[s]);
- res.id = s;
- return res;
- });
-
- let result = [];
- list.forEach(function (skin) {
- result.push({
- name: skin.name,
- id: skin.id,
- sprite: skin.sprite[0] + ',' + skin.sprite[1],
- spritesheet: skin.spritesheet,
- defaultSpirit: skin.defaultSpirit
- });
- }, this);
-
- return result;
- },
-
- getCell: function (skinId) {
- let skin = config[skinId] || config['1.0'];
- return (skin.sprite[1] * 8) + skin.sprite[0];
- },
-
- getSpritesheet: function (skinId) {
- let skin = config[skinId] || config['1.0'];
- return skin.spritesheet || 'characters';
- }
- };
|