# Class PostVictoryStatChangeAttr

Base class defining all `Move` Attributes

#### Abstract

#### See

`apply`

#### Hierarchy (view full)

- MoveAttr
  - PostVictoryStatChangeAttr

- Defined in src/data/move.ts:2287

#####
Index

### Constructors

constructor

### Properties

condition
levels
selfTarget
showMessage
stats

### Methods

apply
applyPostVictory
getCondition
getFailedText
getTargetBenefitScore
getUserBenefitScore

## Constructors

### constructor

- new PostVictoryStatChangeAttr(stats, levels, selfTarget?, condition?, showMessage?, firstHitOnly?): PostVictoryStatChangeAttr

- #### Parameters

  - stats: BattleStat | BattleStat []
  - levels: number
  - `Optional` selfTarget: boolean
  - `Optional` condition: MoveConditionFunc
  - showMessage: boolean = true
  - firstHitOnly: boolean = false

  #### Returns PostVictoryStatChangeAttr

  Overrides MoveAttr.constructor

  - Defined in src/data/move.ts:2293

## Properties

### `Private` condition

condition: MoveConditionFunc

- Defined in src/data/move.ts:2290

### `Private` levels

levels: number

- Defined in src/data/move.ts:2289

### selfTarget

selfTarget: boolean

Should this `Move` target the user?

Inherited from MoveAttr.selfTarget

- Defined in src/data/move.ts:718

### `Private` showMessage

showMessage: boolean

- Defined in src/data/move.ts:2291

### `Private` stats

stats: BattleStat []

- Defined in src/data/move.ts:2288

## Methods

### apply

- apply(user, target, move, args): boolean | Promise<boolean>

- Applies move attributes

  #### Parameters

  - user: default

    `Pokemon` using the move

  - target: default

    `Pokemon` target of the move

  - move: default

    `Move` with this attribute

  - args: any[]

    Set of unique arguments needed by this attribute

  #### Returns boolean | Promise<boolean>

  true if application of the ability succeeds

  #### See

  applyMoveAttrsInternal

  Inherited from MoveAttr.apply

  - Defined in src/data/move.ts:734

### applyPostVictory

- applyPostVictory(user, target, move): void

- #### Parameters

  - user: default
  - target: default
  - move: default

  #### Returns void

  - Defined in src/data/move.ts:2302

### getCondition

- getCondition(): MoveCondition | MoveConditionFunc

- #### Returns MoveCondition | MoveConditionFunc

  the `MoveCondition` or MoveConditionFunc for this `Move`

  Inherited from MoveAttr.getCondition

  - Defined in src/data/move.ts:742

### getFailedText

- getFailedText(user, target, move, cancelled): string

- #### Parameters

  - user: default

    `Pokemon` using the move

  - target: default

    `Pokemon` target of the move

  - move: default

    `Move` with this attribute

  - cancelled: BooleanHolder

    `Utils.BooleanHolder` which stores if the move should fail

  #### Returns string

  the string representing failure of this `Move`

  Inherited from MoveAttr.getFailedText

  - Defined in src/data/move.ts:754

### getTargetBenefitScore

- getTargetBenefitScore(user, target, move): number

- Used by the Enemy AI to rank an attack based on a given target

  #### Parameters

  - user: default
  - target: default
  - move: default

  #### Returns number

  #### See

  `EnemyPokemon.getNextMove`

  Inherited from MoveAttr.getTargetBenefitScore

  - Defined in src/data/move.ts:772

### getUserBenefitScore

- getUserBenefitScore(user, target, move): number

- Used by the Enemy AI to rank an attack based on a given user

  #### Parameters

  - user: default
  - target: default
  - move: default

  #### Returns number

  #### See

  `EnemyPokemon.getNextMove`

  Inherited from MoveAttr.getUserBenefitScore

  - Defined in src/data/move.ts:763