jcbantuelle/dominion-meteor

View on GitHub

Showing 347 of 1,158 total issues

Function buy has 31 lines of code (exceeds 25 allowed). Consider refactoring.
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) {
Severity: Minor
Found in app/cards/menagerie/events/gamble.js - About 1 hr to fix

    Function player has 30 lines of code (exceeds 25 allowed). Consider refactoring.
    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)
    Severity: Minor
    Found in app/players/client/players_show.js - About 1 hr to fix

      Function process has 30 lines of code (exceeds 25 allowed). Consider refactoring.
      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)
            })
      Severity: Minor
      Found in app/game/server/services/trash_event_processor.js - About 1 hr to fix

        Function play has 30 lines of code (exceeds 25 allowed). Consider refactoring.
        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) {
        Severity: Minor
        Found in app/cards/nocturne/devils_workshop.js - About 1 hr to fix

          Function lobby has 30 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

            lobby() {
              let proposals = Proposals.find({}, {
                transform: function(proposal) {
                  proposal.is_proposer = proposal.proposer.id == Meteor.userId()
                  _.each(proposal.players, function(player) {
          Severity: Minor
          Found in app/lobby/client/lobby.js - About 1 hr to fix

            Function gain_event has 30 lines of code (exceeds 25 allowed). Consider refactoring.
            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 = []
                }
            Severity: Minor
            Found in app/cards/nocturne/blessed_village.js - About 1 hr to fix

              Function draw_cards has 30 lines of code (exceeds 25 allowed). Consider refactoring.
              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()
              Severity: Minor
              Found in app/cards/base/library.js - About 1 hr to fix

                Function set_aside_prince has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                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(`&nbsp;&nbsp;<strong>${player_cards.username}</strong> sets aside ${CardView.render(prince)}`)
                Severity: Minor
                Found in app/cards/promo/prince.js - About 1 hr to fix

                  Function attack has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                    attack(game, player_cards) {
                      if (_.size(player_cards.deck) === 0 && _.size(player_cards.discard) === 0) {
                        game.log.push(`&nbsp;&nbsp;<strong>${player_cards.username}</strong> has no cards in deck`)
                      } else {
                        let card_revealer = new CardRevealer(game, player_cards)
                  Severity: Minor
                  Found in app/cards/base/bandit.js - About 1 hr to fix

                    Function buy has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                    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')
                        })
                    Severity: Minor
                    Found in app/cards/adventures/events/alms.js - About 1 hr to fix

                      Function play has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                      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')
                      Severity: Minor
                      Found in app/cards/empires/temple.js - About 1 hr to fix

                        Function attack has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                        Open

                          attack(game, player_cards, attacker_player_cards, card_player) {
                            if (_.size(player_cards.deck) === 0 && _.size(player_cards.discard) === 0) {
                              game.log.push(`&nbsp;&nbsp;<strong>${player_cards.username}</strong> has no cards in deck`)
                            } else {
                              let card_revealer = new CardRevealer(game, player_cards)
                        Severity: Minor
                        Found in app/cards/dark_ages/mixed_stack/knights.js - About 1 hr to fix

                          Function attack has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                          Open

                            attack(game, player_cards) {
                              if (_.size(player_cards.deck) === 0 && _.size(player_cards.discard) === 0) {
                                game.log.push(`&nbsp;&nbsp;<strong>${player_cards.username}</strong> has no cards in deck`)
                              } else {
                                let card_revealer = new CardRevealer(game, player_cards)
                          Severity: Minor
                          Found in app/cards/menagerie/cardinal.js - About 1 hr to fix

                            Function play has 29 lines of code (exceeds 25 allowed). Consider refactoring.
                            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)
                            Severity: Minor
                            Found in app/cards/nocturne/sacred_grove.js - About 1 hr to fix

                              Function process has 29 lines of code (exceeds 25 allowed). Consider refactoring.
                              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)
                                    })
                              Severity: Minor
                              Found in app/game/server/services/gain_event_processor.js - About 1 hr to fix

                                Function reveal has 29 lines of code (exceeds 25 allowed). Consider refactoring.
                                Open

                                  reveal(source, cards) {
                                    if (!cards) {
                                      cards = this.player_cards[source]
                                    } else if (!_.isArray(cards)) {
                                      cards = [cards]
                                Severity: Minor
                                Found in app/game/server/services/card_revealer.js - About 1 hr to fix

                                  Function set_up_extra_player_turns has 29 lines of code (exceeds 25 allowed). Consider refactoring.
                                  Open

                                    set_up_extra_player_turns() {
                                      let queued_turns = []
                                      if (this.game.turn.outpost) {
                                        queued_turns.push(this.game.turn.outpost)
                                      }
                                  Severity: Minor
                                  Found in app/game/server/services/turn_ender.js - About 1 hr to fix

                                    Function process has 29 lines of code (exceeds 25 allowed). Consider refactoring.
                                    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)
                                          })
                                    Severity: Minor
                                    Found in app/game/server/services/buy_event_processor.js - About 1 hr to fix

                                      Function process has 29 lines of code (exceeds 25 allowed). Consider refactoring.
                                      Open

                                        process() {
                                          if (!_.isEmpty(this.play_card_events)) {
                                            let mandatory_play_card_events = _.filter(this.play_card_events, (event) => {
                                              return event.name === 'Kiln'
                                            })
                                      Severity: Minor
                                      Found in app/game/server/services/play_card_event_processor.js - About 1 hr to fix

                                        Function buy has 29 lines of code (exceeds 25 allowed). Consider refactoring.
                                        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
                                        Severity: Minor
                                        Found in app/cards/menagerie/events/desperation.js - About 1 hr to fix
                                          Severity
                                          Category
                                          Status
                                          Source
                                          Language