Class: PlayerSetHistory::Set
- Inherits:
-
Object
- Object
- PlayerSetHistory::Set
- Defined in:
- lib/player_set_history/set.rb
Constant Summary collapse
- @@all =
[]
Instance Attribute Summary collapse
-
#id ⇒ Object
Returns the value of attribute id.
-
#players ⇒ Object
Returns the value of attribute players.
-
#score ⇒ Object
Returns the value of attribute score.
-
#tournament ⇒ Object
Returns the value of attribute tournament.
-
#winner ⇒ Object
Returns the value of attribute winner.
Class Method Summary collapse
- .all ⇒ Object
- .create_sets_from_player(event_hash, importer) ⇒ Object
- .set_exists?(set_id) ⇒ Boolean
Instance Method Summary collapse
-
#initialize(attributes) ⇒ Set
constructor
A new instance of Set.
Constructor Details
#initialize(attributes) ⇒ Set
Returns a new instance of Set.
5 6 7 8 |
# File 'lib/player_set_history/set.rb', line 5 def initialize(attributes) attributes.each {|key, value| self.send(("#{key}="), value)} @@all << self end |
Instance Attribute Details
#id ⇒ Object
Returns the value of attribute id.
2 3 4 |
# File 'lib/player_set_history/set.rb', line 2 def id @id end |
#players ⇒ Object
Returns the value of attribute players.
2 3 4 |
# File 'lib/player_set_history/set.rb', line 2 def players @players end |
#score ⇒ Object
Returns the value of attribute score.
2 3 4 |
# File 'lib/player_set_history/set.rb', line 2 def score @score end |
#tournament ⇒ Object
Returns the value of attribute tournament.
2 3 4 |
# File 'lib/player_set_history/set.rb', line 2 def tournament @tournament end |
#winner ⇒ Object
Returns the value of attribute winner.
2 3 4 |
# File 'lib/player_set_history/set.rb', line 2 def winner @winner end |
Class Method Details
.all ⇒ Object
10 11 12 |
# File 'lib/player_set_history/set.rb', line 10 def self.all @@all end |
.create_sets_from_player(event_hash, importer) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/player_set_history/set.rb', line 14 def self.create_sets_from_player(event_hash, importer) #Get one of the players player_1 = PlayerSetHistory::Player.find_or_create_from_slug(event_hash["discriminator"], importer) event_hash["events"]["nodes"].each do |event| # Find or create tournament tourny = PlayerSetHistory::Tournament.find_or_create_from_name( event["tournament"]["name"], event["tournament"]["startAt"] ) # create sets if event["sets"]["nodes"] != nil # Prevents error when event is nil event["sets"]["nodes"].each do |set| score = set["displayScore"] id = set["id"] player_2 = nil winner_score = 0 winner = "" unless set_exists?(id) score.split(" - ").each do |player| # Parse score if player.include?("|") player_tag = player[0..-3].split(" | ")[1] player_prefix = player.split(" | ")[0] else player_tag = player[0..-3] player_prefix = "" end # create player_2 if neccessary if player_tag != player_1.tag player_2 = PlayerSetHistory::Player.find_or_create_from_tag(tag: player_tag, prefix: player_prefix) end # Find winner if player[-1].to_i > winner_score winner_score = player[-1].to_i winner = player_tag end end set_attributes = {players: [player_1, player_2], score: score, id: id, winner: winner, tournament: tourny } new_set = PlayerSetHistory::Set.new(set_attributes) tourny.add_set(new_set) end end end end end |
.set_exists?(set_id) ⇒ Boolean
73 74 75 76 77 |
# File 'lib/player_set_history/set.rb', line 73 def self.set_exists? (set_id) sets = self.all.any? do |set| set.id == set_id end end |