Showing 347 of 1,158 total issues
Function buy
has 31 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
buy(game, player_cards) {
let buy_gainer = new BuyGainer(game, player_cards)
buy_gainer.gain(1)
if (_.size(player_cards.deck) === 0 && _.size(player_cards.discard) === 0) {
Function player
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
player() {
let player = PlayerRankings.findOne({username: FlowRouter.getParam('id')}, {
transform: function(player) {
let total_games = player.wins + player.losses
player.win_ratio = total_games === 0 ? 0 : ((player.wins / total_games) * 100).toFixed(2)
Function process
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
process() {
if (!_.isEmpty(this.trash_events)) {
let mandatory_trash_events = _.filter(this.trash_events, function(event) {
return _.includes(TrashEventProcessor.event_cards().concat(TrashEventProcessor.landmark_cards().concat(['Priest'])), event.name)
})
Function play
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
play(game, player_cards) {
if (_.size(game.turn.gained_cards) > 1) {
let card_gainer = new CardGainer(game, player_cards, 'discard', 'Imp')
card_gainer.gain()
} else if (_.size(game.turn.gained_cards) == 1) {
Function lobby
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
lobby() {
let proposals = Proposals.find({}, {
transform: function(proposal) {
proposal.is_proposer = proposal.proposer.id == Meteor.userId()
_.each(proposal.players, function(player) {
Function gain_event
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
gain_event(gainer, blessed_village) {
if (_.size(gainer.game.boons_deck) === 0) {
gainer.game.boons_deck = _.shuffle(gainer.game.boons_discard)
gainer.game.boons_discard = []
}
Function draw_cards
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
static draw_cards(game, player_cards) {
if (_.size(player_cards.hand) >= 7 || (_.size(player_cards.deck) === 0 && _.size(player_cards.discard) === 0)) {
if (_.size(player_cards.aside) > 0) {
let card_discarder = new CardDiscarder(game, player_cards, 'aside')
card_discarder.discard()
Function set_aside_prince
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
static set_aside_prince(game, player_cards, response, prince) {
if (response === 'yes') {
let card_mover = new CardMover(game, player_cards)
if (card_mover.move(player_cards.in_play, player_cards.aside, prince)) {
game.log.push(` <strong>${player_cards.username}</strong> sets aside ${CardView.render(prince)}`)
Function attack
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
attack(game, player_cards) {
if (_.size(player_cards.deck) === 0 && _.size(player_cards.discard) === 0) {
game.log.push(` <strong>${player_cards.username}</strong> has no cards in deck`)
} else {
let card_revealer = new CardRevealer(game, player_cards)
Function buy
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
buy(game, player_cards) {
game.turn.forbidden_events.push(this.name())
let treasures = _.filter(player_cards.in_play, function(card) {
return _.includes(_.words(card.types), 'treasure')
})
Function play
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
play(game, player_cards, card_player) {
let victory_token_gainer = new VictoryTokenGainer(game, player_cards)
victory_token_gainer.gain(1)
let unique_cards = _.uniqBy(player_cards.hand, 'name')
Function attack
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
attack(game, player_cards, attacker_player_cards, card_player) {
if (_.size(player_cards.deck) === 0 && _.size(player_cards.discard) === 0) {
game.log.push(` <strong>${player_cards.username}</strong> has no cards in deck`)
} else {
let card_revealer = new CardRevealer(game, player_cards)
Function attack
has 30 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
attack(game, player_cards) {
if (_.size(player_cards.deck) === 0 && _.size(player_cards.discard) === 0) {
game.log.push(` <strong>${player_cards.username}</strong> has no cards in deck`)
} else {
let card_revealer = new CardRevealer(game, player_cards)
Function play
has 29 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
play(game, player_cards, card_player) {
let buy_gainer = new BuyGainer(game, player_cards)
buy_gainer.gain(1)
let coin_gainer = new CoinGainer(game, player_cards, card_player)
Function process
has 29 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
process() {
if (!_.isEmpty(this.gain_events)) {
let mandatory_gain_events = _.filter(this.gain_events, (event) => {
return _.includes(GainEventProcessor.event_cards().concat(GainEventProcessor.in_play_event_cards()).concat(GainEventProcessor.reserve_cards()).concat(GainEventProcessor.landmark_cards()).concat(GainEventProcessor.duration_attack_cards()).concat(['Trade Route', 'Cargo Ship', 'Academy', 'Guildhall', 'Road Network', 'Innovation', 'Livery', 'Invest']), event.name)
})
Function reveal
has 29 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
reveal(source, cards) {
if (!cards) {
cards = this.player_cards[source]
} else if (!_.isArray(cards)) {
cards = [cards]
Function set_up_extra_player_turns
has 29 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
set_up_extra_player_turns() {
let queued_turns = []
if (this.game.turn.outpost) {
queued_turns.push(this.game.turn.outpost)
}
Function process
has 29 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
process() {
if (!_.isEmpty(this.buy_events)) {
let mandatory_buy_events = _.filter(this.buy_events, (event) => {
return _.includes(BuyEventProcessor.event_cards().concat(BuyEventProcessor.in_play_event_cards()).concat(BuyEventProcessor.overpay_cards()).concat(BuyEventProcessor.duration_attack_cards()).concat(BuyEventProcessor.landmark_cards()).concat(['Embargo', 'Charm', 'Tax']), event.name)
})
Function process
has 29 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
process() {
if (!_.isEmpty(this.play_card_events)) {
let mandatory_play_card_events = _.filter(this.play_card_events, (event) => {
return event.name === 'Kiln'
})
Function buy
has 29 lines of code (exceeds 25 allowed). Consider refactoring. Open
Open
buy(game, player_cards) {
game.turn.forbidden_events.push(this.name())
let curse = _.find(game.cards, (card) => {
return card.name === 'Curse' && card.count > 0