# Class PokemonSpeciesForm`Abstract`

#### Hierarchy (view full)

- PokemonSpeciesForm
  - PokemonForm
  - default

- Defined in src/data/pokemon-species.ts:121

#####
Index

### Constructors

constructor

### Properties

ability1
ability2
abilityHidden
baseExp
baseFriendship
baseStats
baseTotal
catchRate
formIndex
genderDiffs
generation
height
isStarterSelectable
speciesId
type1
type2
weight

### Methods

cry
generateCandyColors
getAbility
getAbilityCount
getBaseExp
getBaseStat
getCryKey
getFormSpriteKey
getIconAtlasKey
getIconId
getLevelMoves
getRegion
getRootSpeciesId
getSpriteAtlasPath
getSpriteId
getSpriteKey
getVariantDataIndex
isCatchable
isObtainable
isOfType
isRareRegional
isRegional
isTrainerForbidden
loadAssets
validateStarterMoveset

## Constructors

### constructor

- new PokemonSpeciesForm(type1, type2, height, weight, ability1, ability2, abilityHidden, baseTotal, baseHp, baseAtk, baseDef, baseSpatk, baseSpdef, baseSpd, catchRate, baseFriendship, baseExp, genderDiffs, isStarterSelectable): PokemonSpeciesForm

- #### Parameters

  - type1: Type
  - type2: Type
  - height: number
  - weight: number
  - ability1: Abilities
  - ability2: Abilities
  - abilityHidden: Abilities
  - baseTotal: number
  - baseHp: number
  - baseAtk: number
  - baseDef: number
  - baseSpatk: number
  - baseSpdef: number
  - baseSpd: number
  - catchRate: number
  - baseFriendship: number
  - baseExp: number
  - genderDiffs: boolean
  - isStarterSelectable: boolean

  #### Returns PokemonSpeciesForm

  - Defined in src/data/pokemon-species.ts:140

## Properties

### ability1

ability1: Abilities

- Defined in src/data/pokemon-species.ts:129

### ability2

ability2: Abilities

- Defined in src/data/pokemon-species.ts:130

### abilityHidden

abilityHidden: Abilities

- Defined in src/data/pokemon-species.ts:131

### baseExp

baseExp: number

- Defined in src/data/pokemon-species.ts:136

### baseFriendship

baseFriendship: number

- Defined in src/data/pokemon-species.ts:135

### baseStats

baseStats: number[]

- Defined in src/data/pokemon-species.ts:133

### baseTotal

baseTotal: number

- Defined in src/data/pokemon-species.ts:132

### catchRate

catchRate: number

- Defined in src/data/pokemon-species.ts:134

### formIndex

formIndex: number

- Defined in src/data/pokemon-species.ts:123

### genderDiffs

genderDiffs: boolean

- Defined in src/data/pokemon-species.ts:137

### generation

generation: number

- Defined in src/data/pokemon-species.ts:124

### height

height: number

- Defined in src/data/pokemon-species.ts:127

### isStarterSelectable

isStarterSelectable: boolean

- Defined in src/data/pokemon-species.ts:138

### speciesId

speciesId: Species

- Defined in src/data/pokemon-species.ts:122

### type1

type1: Type

- Defined in src/data/pokemon-species.ts:125

### type2

type2: Type

- Defined in src/data/pokemon-species.ts:126

### weight

weight: number

- Defined in src/data/pokemon-species.ts:128

## Methods

### cry

- cry(scene, soundConfig?, ignorePlay?): AnySound

- #### Parameters

  - scene: default
  - `Optional` soundConfig: SoundConfig
  - `Optional` ignorePlay: boolean

  #### Returns AnySound

  - Defined in src/data/pokemon-species.ts:488

### generateCandyColors

- generateCandyColors(scene): number[][]

- #### Parameters

  - scene: default

  #### Returns number[][]

  - Defined in src/data/pokemon-species.ts:501

### getAbility

- getAbility(abilityIndex): Abilities

- #### Parameters

  - abilityIndex: number

  #### Returns Abilities

  - Defined in src/data/pokemon-species.ts:182

### getAbilityCount

- getAbilityCount(): number

- #### Returns number

  - Defined in src/data/pokemon-species.ts:178

### getBaseExp

- getBaseExp(): number

- #### Returns number

  - Defined in src/data/pokemon-species.ts:231

### getBaseStat

- getBaseStat(stat): number

- Gets the species' base stat amount for the given stat.

  #### Parameters

  - stat: Stat

    The desired stat.

  #### Returns number

  The species' base stat amount.

  - Defined in src/data/pokemon-species.ts:227

### getCryKey

- getCryKey(formIndex?): string

- #### Parameters

  - `Optional` formIndex: number

  #### Returns string

  - Defined in src/data/pokemon-species.ts:347

### `Abstract` getFormSpriteKey

- getFormSpriteKey(formIndex?): string

- #### Parameters

  - `Optional` formIndex: number

  #### Returns string

  - Defined in src/data/pokemon-species.ts:272

### getIconAtlasKey

- getIconAtlasKey(formIndex?, shiny?, variant?): string

- #### Parameters

  - `Optional` formIndex: number
  - `Optional` shiny: boolean
  - `Optional` variant: number

  #### Returns string

  - Defined in src/data/pokemon-species.ts:293

### getIconId

- getIconId(female, formIndex?, shiny?, variant?): string

- #### Parameters

  - female: boolean
  - `Optional` formIndex: number
  - `Optional` shiny: boolean
  - `Optional` variant: number

  #### Returns string

  - Defined in src/data/pokemon-species.ts:299

### getLevelMoves

- getLevelMoves(): LevelMoves

- #### Returns LevelMoves

  - Defined in src/data/pokemon-species.ts:186

### getRegion

- getRegion(): Region

- #### Returns Region

  - Defined in src/data/pokemon-species.ts:193

### getRootSpeciesId

- getRootSpeciesId(forStarter?): Species

- Method to get the root species id of a Pokemon. Magmortar.getRootSpeciesId(true) => Magmar Magmortar.getRootSpeciesId(false) => Magby

  #### Parameters

  - forStarter: boolean = false

    boolean to get the nonbaby form of a starter

  #### Returns Species

  The species

  - Defined in src/data/pokemon-species.ts:166

### getSpriteAtlasPath

- getSpriteAtlasPath(female, formIndex?, shiny?, variant?): string

- #### Parameters

  - female: boolean
  - `Optional` formIndex: number
  - `Optional` shiny: boolean
  - `Optional` variant: number

  #### Returns string

  - Defined in src/data/pokemon-species.ts:246

### getSpriteId

- getSpriteId(female, formIndex?, shiny?, variant?, back?): string

- #### Parameters

  - female: boolean
  - `Optional` formIndex: number
  - `Optional` shiny: boolean
  - `Optional` variant: number
  - `Optional` back: boolean

  #### Returns string

  - Defined in src/data/pokemon-species.ts:251

### getSpriteKey

- getSpriteKey(female, formIndex?, shiny?, variant?): string

- #### Parameters

  - female: boolean
  - `Optional` formIndex: number
  - `Optional` shiny: boolean
  - `Optional` variant: number

  #### Returns string

  - Defined in src/data/pokemon-species.ts:268

### getVariantDataIndex

- getVariantDataIndex(formIndex?): string | number

- Variant Data key/index is either species id or species id followed by -formkey

  #### Parameters

  - `Optional` formIndex: number

    optional form index for pokemon with different forms

  #### Returns string | number

  species id if no additional forms, index with formkey if a pokemon with a form

  - Defined in src/data/pokemon-species.ts:280

### isCatchable

- isCatchable(): boolean

- #### Returns boolean

  - Defined in src/data/pokemon-species.ts:201

### isObtainable

- isObtainable(): boolean

- #### Returns boolean

  - Defined in src/data/pokemon-species.ts:197

### isOfType

- isOfType(type): boolean

- #### Parameters

  - type: number

  #### Returns boolean

  - Defined in src/data/pokemon-species.ts:174

### isRareRegional

- isRareRegional(): boolean

- #### Returns boolean

  - Defined in src/data/pokemon-species.ts:213

### isRegional

- isRegional(): boolean

- #### Returns boolean

  - Defined in src/data/pokemon-species.ts:205

### isTrainerForbidden

- isTrainerForbidden(): boolean

- #### Returns boolean

  - Defined in src/data/pokemon-species.ts:209

### loadAssets

- loadAssets(scene, female, formIndex?, shiny?, variant?, startLoad?): Promise<void>

- #### Parameters

  - scene: default
  - female: boolean
  - `Optional` formIndex: number
  - `Optional` shiny: boolean
  - `Optional` variant: Variant
  - `Optional` startLoad: boolean

  #### Returns Promise<void>

  - Defined in src/data/pokemon-species.ts:434

### validateStarterMoveset

- validateStarterMoveset(moveset, eggMoves): boolean

- #### Parameters

  - moveset: StarterMoveset
  - eggMoves: number

  #### Returns boolean

  - Defined in src/data/pokemon-species.ts:413