# Class PokemonMove

Wrapper class for the `Move` class for Pokemon to interact with. These are the moves assigned to a `Pokemon` object. It links to `Move` class via the move ID. Compared to `Move`, this class also tracks if a move has received. PP Ups, amount of PP used, and things like that.

#### See

- `isUsable` - checks if move is disabled, out of PP, or not implemented.
- `getMove` - returns `Move` object by looking it up via ID.
- `usePp` - removes a point of PP from the move.
- `getMovePp` - returns amount of PP a move currently has.
- `getPpRatio` - returns the current PP amount / max PP amount.
- `getName` - returns name of `Move`.

- Defined in src/field/pokemon.ts:3812

#####
Index

### Constructors

constructor

### Properties

moveId
ppUp
ppUsed
virtual

### Methods

getMove
getMovePp
getName
getPpRatio
isUsable
usePp
loadMove

## Constructors

### constructor

- new PokemonMove(moveId, ppUsed?, ppUp?, virtual?): PokemonMove

- #### Parameters

  - moveId: Moves
  - `Optional` ppUsed: number
  - `Optional` ppUp: number
  - `Optional` virtual: boolean

  #### Returns PokemonMove

  - Defined in src/field/pokemon.ts:3818

## Properties

### moveId

moveId: Moves

- Defined in src/field/pokemon.ts:3813

### ppUp

ppUp: number

- Defined in src/field/pokemon.ts:3815

### ppUsed

ppUsed: number

- Defined in src/field/pokemon.ts:3814

### virtual

virtual: boolean

- Defined in src/field/pokemon.ts:3816

## Methods

### getMove

- getMove(): default

- #### Returns default

  - Defined in src/field/pokemon.ts:3832

### getMovePp

- getMovePp(): number

- #### Returns number

  - Defined in src/field/pokemon.ts:3844

### getName

- getName(): string

- #### Returns string

  - Defined in src/field/pokemon.ts:3852

### getPpRatio

- getPpRatio(): number

- #### Returns number

  - Defined in src/field/pokemon.ts:3848

### isUsable

- isUsable(pokemon, ignorePp?): boolean

- #### Parameters

  - pokemon: default
  - `Optional` ignorePp: boolean

  #### Returns boolean

  - Defined in src/field/pokemon.ts:3825

### usePp

- usePp(count?): void

- Sets ppUsed for this move and ensures the value does not exceed getMovePp

  #### Parameters

  - count: number = 1

    Amount of PP to use

  #### Returns void

  - Defined in src/field/pokemon.ts:3840

### `Static` loadMove

- loadMove(source): PokemonMove

- Copies an existing move or creates a valid PokemonMove object from json representing one

  #### Parameters

  - source: any

    The data for the move to copy

  #### Returns PokemonMove

  A valid pokemonmove object

  - Defined in src/field/pokemon.ts:3861