Packages

An extended and functional wrapper for the Clash of Clans API

Current section

Files

Jump to
clashofclans lib endpoints players heroes heroes.ex
Raw

lib/endpoints/players/heroes/heroes.ex

defmodule Endpoints.Players.Heroes do
alias Endpoints.Players.Raw
def raw_heroes(playertag) do
with {:ok, account} <- Raw.get_raw_player_information(playertag) do
Map.take(account, ["heroes"])
|> Map.values()
|> hd()
end
end
def get_level_of_barbarian_king(playertag) do
find_by_name(playertag, "Barbarian King")["level"]
end
def get_level_of_archer_queen(playertag) do
find_by_name(playertag, "Archer Queen")["level"]
end
def get_level_of_grand_warden(playertag) do
find_by_name(playertag, "Grand Warden")["level"]
end
def get_level_of_royal_champion(playertag) do
find_by_name(playertag, "Royal Champion")["level"]
end
def get_level_of_battle_machine(playertag) do
find_by_name(playertag, "Battle Machine")["level"]
end
defp find_by_name(playertag, heroname) do
raw_heroes(playertag)
|> Enum.find(fn hero -> hero["name"] == heroname end)
end
end