tallgrass/evolution/chain

Types

pub type ChainLink {
  ChainLink(
    is_baby: Bool,
    species: Resource,
    evolution_details: List(EvolutionDetail),
  )
}

Constructors

  • ChainLink(
      is_baby: Bool,
      species: Resource,
      evolution_details: List(EvolutionDetail),
    )
pub type EvolutionChain {
  EvolutionChain(
    id: Int,
    baby_trigger_item: Option(Resource),
    chain: ChainLink,
  )
}

Constructors

  • EvolutionChain(
      id: Int,
      baby_trigger_item: Option(Resource),
      chain: ChainLink,
    )
pub type EvolutionDetail {
  EvolutionDetail(
    item: Option(Resource),
    trigger: Resource,
    gender: Int,
    held_item: Option(Resource),
    known_move: Option(Resource),
    known_move_type: Option(Resource),
    location: Option(Resource),
    min_level: Int,
    min_happiness: Option(Int),
    min_beauty: Option(Int),
    min_affection: Option(Int),
    needs_overworld_rain: Bool,
    party_species: Option(Resource),
    party_type: Option(Resource),
    relative_physical_stats: Int,
    time_of_day: String,
    trade_species: Option(Resource),
    turn_upside_down: Bool,
  )
}

Constructors

  • EvolutionDetail(
      item: Option(Resource),
      trigger: Resource,
      gender: Int,
      held_item: Option(Resource),
      known_move: Option(Resource),
      known_move_type: Option(Resource),
      location: Option(Resource),
      min_level: Int,
      min_happiness: Option(Int),
      min_beauty: Option(Int),
      min_affection: Option(Int),
      needs_overworld_rain: Bool,
      party_species: Option(Resource),
      party_type: Option(Resource),
      relative_physical_stats: Int,
      time_of_day: String,
      trade_species: Option(Resource),
      turn_upside_down: Bool,
    )

Functions

pub fn fetch(client: Client) -> Result(PaginatedResource, Error)

Fetches a paginated list of evolution chain resources.

Example

let result = chain.new() |> chain.fetch()
pub fn fetch_by_id(
  client: Client,
  id: Int,
) -> Result(EvolutionChain, Error)

Fetches an evolution chain given the evolution chain ID.

Example

let result = chain.new() |> chain.fetch_by_id(1)
pub fn fetch_resource(
  client: Client,
  resource: Resource,
) -> Result(EvolutionChain, Error)

Fetches an evolution chain given an evolution chain resource.

Example

let client = chain.new()
use res <- result.try(client |> chain.fetch())
let assert Ok(first) = res.results |> list.first
client |> chain.fetch_resource(first)
pub fn new() -> Client

Creates a new Client. This is a re-export of client.new, for the sake of convenience.

Search Document