1
0
mirror of https://github.com/exane/not-gwent-online synced 2024-10-31 10:36:53 +00:00
not-gwent-online/site/client/app/modules/deck-builder/components/deck-builder.js

60 lines
1.1 KiB
JavaScript
Raw Normal View History

2015-06-24 05:09:16 +00:00
var cards = require("../../../../../../assets/data/cards");
var deck = require("../../../../../../assets/data/deck");
2015-06-23 08:36:29 +00:00
module.exports = {
2015-06-24 05:09:16 +00:00
template: require('../views/deck-builder.html'),
data: function() {
return {
cards: [],
2015-06-24 18:34:35 +00:00
deck: {},
2015-06-24 10:44:10 +00:00
leaders: [],
leader: null,
2015-06-24 13:21:17 +00:00
factionFilter: 'northern_realm'
2015-06-24 05:09:16 +00:00
}
},
ready: function() {
2015-06-24 18:34:35 +00:00
this.initCards();
this.initDeck();
2015-06-24 10:44:10 +00:00
},
methods: {
changeDeck: function(deck) {
2015-06-24 13:21:17 +00:00
// todo: load animation
2015-06-24 10:44:10 +00:00
$('.all-cards').addClass('remove');
this.factionFilter = deck;
2015-06-24 18:34:35 +00:00
this.initDeck();
2015-06-24 10:44:10 +00:00
$('.all-cards').scrollTop(0);
setTimeout(function() {
$('.all-cards').removeClass('remove');
2015-06-24 15:51:21 +00:00
}, 500);
2015-06-24 18:34:35 +00:00
},
// Filter for leaders and store them separately.
initCards: function() {
this.cards = $.map(cards, (n) => {
if(n.type != 3) return n;
this.leaders.push(n);
});
},
initDeck: function() {
this.deck = {};
deck[this.factionFilter].forEach((x) => {
this.deck[x] = (this.deck[x] || 0) + 1;
});
},
// test
removeCard: function(el) {
2015-06-24 10:44:10 +00:00
}
2015-06-24 05:09:16 +00:00
}
2015-06-23 08:36:29 +00:00
};