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)