Sha256: 9bb7bdf7bd3c6f7708774b498adf92995fdc1bc370cc09d0a393ebd405751ffa

Contents?: true

Size: 1.77 KB

Versions: 4

Compression:

Stored size: 1.77 KB

Contents

# frozen_string_literal: true

require 'starcall/helpers/region_parser'
require 'starcall/api_requests'

module Starcall
  module Endpoints
    # Methods used to call the Champion Mastery endpoints.
    class ChampionMasteryV4
      # Get all champion mastery entries sorted by number of champion points descending.
      def self.summoner(encrypted_summoner_id:, region:)
        Starcall::Regions.valid?(region: region)
        Starcall::ApiRequests.make_request(
          url: "https://#{parse_region(region: region)}.api.riotgames.com"\
               "/lol/champion-mastery/v4/champion-masteries/by-summoner/#{encrypted_summoner_id}"
        )
      end

      # Get a champion mastery by player ID and champion ID.
      def self.summoner_on_champion(encrypted_summoner_id:, champion_id:, region:)
        Starcall::Regions.valid?(region: region)
        Starcall::ApiRequests.make_request(
          url: "https://#{parse_region(region: region)}.api.riotgames.com"\
               "/lol/champion-mastery/v4/champion-masteries/by-summoner/#{encrypted_summoner_id}"\
               "/by-champion/#{champion_id}"
        )
      end

      # Get a player's total champion mastery score, which is the sum of individual champion mastery levels.
      def self.summoner_total_mastery(encrypted_summoner_id:, region:)
        Starcall::Regions.valid?(region: region)
        Starcall::ApiRequests.make_request(
          url: "https://#{parse_region(region: region)}.api.riotgames.com"\
               "/lol/champion-mastery/v4/scores/by-summoner/#{encrypted_summoner_id}"
        )
      end

      def self.parse_region(region:)
        Starcall::Helpers::RegionParser.parse(region: region)
      end

      private_class_method :parse_region
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
starcall-0.6.0 lib/starcall/endpoints/champion_mastery_v4.rb
starcall-0.5.0 lib/starcall/endpoints/champion_mastery_v4.rb
starcall-0.4.0 lib/starcall/endpoints/champion_mastery_v4.rb
starcall-0.3.0 lib/starcall/endpoints/champion_mastery_v4.rb