ActivePokemon

io.github.pidoveproject.showdown.battle.ActivePokemon
case class ActivePokemon(teamSlot: TeamSlot, boosts: Map[StatType, StatBoost], volatileStatus: Set[VolatileStatus], nextMoveStatus: Set[VolatileStatus], nextTurnStatus: Set[VolatileStatus], modifiedAbility: Option[RevealedAbility], transformedSpecies: Option[SpeciesName], isTerastallized: Boolean)

An pokemon active on the battlefield.

Value parameters

boosts

the current boosts of the pokemon

modifiedAbility

the new ability of the pokemon, None indicates that it still has its base ability

nextMoveStatus

the status ending the next time this pokemon uses a move

nextTurnStatus

the status ending the next turn

teamSlot

the slot of this pokemon in its team, used to retrieve switch-persistent information like health

transformedSpecies

the new species of the pokemon, None indicates that it still has its base species

volatileStatus

the current volatile (not persistent after switching) status of the pokemon

Attributes

Source
ActivePokemon.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

def boosted(stat: StatType, boost: StatBoost): ActivePokemon

Boost the given stat.

Boost the given stat.

Value parameters

boost

the level of the boost

stat

the stat to boost

Attributes

Returns

a copy of this pokemon with the given boost added to the stat

Source
ActivePokemon.scala

Clear all boosts.

Clear all boosts.

Attributes

Returns

a copy of this pokemon without any boost

Source
ActivePokemon.scala

Remove all status that should end the next time this pokemon uses a move.

Remove all status that should end the next time this pokemon uses a move.

Attributes

Returns

a copy of this pokemon without any "next move status"

Source
ActivePokemon.scala

Disable the ability of this pokemon.

Disable the ability of this pokemon.

Attributes

Returns

a copy of this pokemon with the ability RevealedAbility.Disabled

Source
ActivePokemon.scala
def getBoost(stat: StatType): Option[StatBoost]

Get the boost of this pokemon in a stat.

Get the boost of this pokemon in a stat.

Value parameters

stat

the stat to get boost from

Attributes

Returns

the boost (negative means de-buff) of this pokemon in the given stat

Source
ActivePokemon.scala

Remove a volatile status to this pokemon

Remove a volatile status to this pokemon

Value parameters

status

the status to remove

Attributes

Returns

a copy of this pokemon without the given status

Source
ActivePokemon.scala

Set the boost to this pokemon in a stat.

Set the boost to this pokemon in a stat.

Value parameters

boost

the boost to apply to the stat

stat

the stat to boost

Attributes

Returns

a copy of this pokemon with the given boost applied

Source
ActivePokemon.scala

Change the ability of this pokemon.

Change the ability of this pokemon.

Value parameters

ability

the new ability to give

cause

the cause of the ability change

Attributes

Returns

a copy of this pokemon with the given ability

Source
ActivePokemon.scala

Add a status to this pokemon that will end the next time this pokemon uses a move.

Add a status to this pokemon that will end the next time this pokemon uses a move.

Value parameters

status

the status to add

Attributes

Returns

a copy of this pokemon with the given status

Source
ActivePokemon.scala

Add a status to this pokemon that will end the next turn.

Add a status to this pokemon that will end the next turn.

Value parameters

status

the status to add

Attributes

Returns

a copy of this pokemon with the given status

Source
ActivePokemon.scala

Add a volatile status to this pokemon

Add a volatile status to this pokemon

Value parameters

status

the status to add

Attributes

Returns

a copy of this pokemon with the given status

Source
ActivePokemon.scala

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product