# Class ReverseDrainAbAttr

Class for abilities that make drain moves deal damage to user instead of healing them.

#### See

`applyPostDefend`

#### Hierarchy (view full)

- PostDefendAbAttr
  - ReverseDrainAbAttr

- Defined in src/data/ability.ts:598

#####
Index

### Constructors

constructor

### Properties

showAbility

### Methods

addCondition
apply
applyPostDefend
getCondition
getTriggerMessage

## Constructors

### constructor

- new ReverseDrainAbAttr(showAbility?): ReverseDrainAbAttr

- #### Parameters

  - showAbility: boolean = true

  #### Returns ReverseDrainAbAttr

  Inherited from PostDefendAbAttr.constructor

  - Defined in src/data/ability.ts:129

## Properties

### showAbility

showAbility: boolean

Inherited from PostDefendAbAttr.showAbility

- Defined in src/data/ability.ts:126

## Methods

### addCondition

- addCondition(condition): AbAttr

- #### Parameters

  - condition: AbAttrCondition

  #### Returns AbAttr

  Inherited from PostDefendAbAttr.addCondition

  - Defined in src/data/ability.ts:145

### apply

- apply(pokemon, passive, cancelled, args): boolean | Promise<boolean>

- #### Parameters

  - pokemon: default
  - passive: boolean
  - cancelled: BooleanHolder
  - args: any[]

  #### Returns boolean | Promise<boolean>

  Inherited from PostDefendAbAttr.apply

  - Defined in src/data/ability.ts:133

### applyPostDefend

- applyPostDefend(pokemon, passive, attacker, move, hitResult, args): boolean

- Determines if a damage and draining move was used to check if this ability should stop the healing. Examples include: Absorb, Draining Kiss, Bitter Blade, etc. Also displays a message to show this ability was activated.

  #### Parameters

  - pokemon: default

    `Pokemon` with this ability

  - passive: boolean

    N/A

  - attacker: default

    `Pokemon` that is attacking this Pokemon

  - move: default

    `PokemonMove` that is being used

  - hitResult: HitResult

    N/A

  - args: any[]

  #### Returns boolean

  true if healing should be reversed on a healing move, false otherwise.

  #### Args

  N/A

  Overrides PostDefendAbAttr.applyPostDefend

  - Defined in src/data/ability.ts:611

### getCondition

- getCondition(): AbAttrCondition

- #### Returns AbAttrCondition

  Inherited from PostDefendAbAttr.getCondition

  - Defined in src/data/ability.ts:141

### getTriggerMessage

- getTriggerMessage(pokemon, abilityName, ...args): string

- #### Parameters

  - pokemon: default
  - abilityName: string
  - `Rest` ...args: any[]

  #### Returns string

  Inherited from PostDefendAbAttr.getTriggerMessage

  - Defined in src/data/ability.ts:137