# DamageProtectedTag | pokemon-rogue-battle
Documentation for pokemon-rogue-battle

# Class DamageProtectedTag

Base class for `BattlerTag`s that block damaging moves but not status moves

#### Hierarchy (View Summary)

- ProtectedTag
  - DamageProtectedTag
    - ContactStatStageChangeProtectedTag
    - ContactBurnProtectedTag

- Defined in src/data/battler-tags.ts:1615

##### Index

### Constructors

constructor

### Properties

isBatonPassable
lapseTypes
sourceId?
sourceMove
tagType
turnCount

### Methods

canAdd
getDescriptor
getMoveName
getSourcePokemon
isSourceLinked
lapse
loadTag
onAdd
onOverlap
onRemove

## Constructors

### constructor

- new DamageProtectedTag(
  sourceMove: Moves ,
  tagType?: BattlerTagType ,
  ): DamageProtectedTag

  #### Parameters

  - sourceMove: Moves
  - tagType: BattlerTagType = BattlerTagType.PROTECTED

  #### Returns DamageProtectedTag

  Inherited from ProtectedTag.constructor

  - Defined in src/data/battler-tags.ts:1579

## Properties

### isBatonPassable

isBatonPassable: boolean

Inherited from ProtectedTag.isBatonPassable

- Defined in src/data/battler-tags.ts:65

### lapseTypes

lapseTypes: BattlerTagLapseType []

Inherited from ProtectedTag.lapseTypes

- Defined in src/data/battler-tags.ts:61

### `Optional` sourceId

sourceId?: number

Inherited from ProtectedTag.sourceId

- Defined in src/data/battler-tags.ts:64

### sourceMove

sourceMove: Moves

Inherited from ProtectedTag.sourceMove

- Defined in src/data/battler-tags.ts:63

### tagType

tagType: BattlerTagType

Inherited from ProtectedTag.tagType

- Defined in src/data/battler-tags.ts:60

### turnCount

turnCount: number

Inherited from ProtectedTag.turnCount

- Defined in src/data/battler-tags.ts:62

## Methods

### canAdd

- canAdd(_pokemon: default ): boolean

  #### Parameters

  - _pokemon: default

  #### Returns boolean

  Inherited from ProtectedTag.canAdd

  - Defined in src/data/battler-tags.ts:83

### getDescriptor

- getDescriptor(): string

  #### Returns string

  Inherited from ProtectedTag.getDescriptor

  - Defined in src/data/battler-tags.ts:97

### getMoveName

- getMoveName(): null | string

  #### Returns null | string

  Inherited from ProtectedTag.getMoveName

  - Defined in src/data/battler-tags.ts:105

### getSourcePokemon

- getSourcePokemon(): null | default

  Helper function that retrieves the source Pokemon object

  #### Returns null | default

  The source `Pokemon` or `null` if none is found

  Inherited from ProtectedTag.getSourcePokemon

  - Defined in src/data/battler-tags.ts:124

### isSourceLinked

- isSourceLinked(): boolean

  #### Returns boolean

  Inherited from ProtectedTag.isSourceLinked

  - Defined in src/data/battler-tags.ts:101

### lapse

- lapse(pokemon: default , lapseType: BattlerTagLapseType ): boolean

  #### Parameters

  - pokemon: default
  - lapseType: BattlerTagLapseType

  #### Returns boolean

  Inherited from ProtectedTag.lapse

  - Defined in src/data/battler-tags.ts:1593

### loadTag

- loadTag(source: any): void

  When given a battler tag or json representing one, load the data for it. This is meant to be inherited from by any battler tag with custom attributes

  #### Parameters

  - source: any

    A battler tag

  #### Returns void

  Inherited from ProtectedTag.loadTag

  - Defined in src/data/battler-tags.ts:114

### onAdd

- onAdd(pokemon: default ): void

  #### Parameters

  - pokemon: default

  #### Returns void

  Inherited from ProtectedTag.onAdd

  - Defined in src/data/battler-tags.ts:1583

### onOverlap

- onOverlap(_pokemon: default ): void

  #### Parameters

  - _pokemon: default

  #### Returns void

  Inherited from ProtectedTag.onOverlap

  - Defined in src/data/battler-tags.ts:91

### onRemove

- onRemove(_pokemon: default ): void

  #### Parameters

  - _pokemon: default

  #### Returns void

  Inherited from ProtectedTag.onRemove

  - Defined in src/data/battler-tags.ts:89