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

# Class StealHeldItemChanceAttr

The following needs to be implemented for Thief "If the user faints due to the target's Ability (Rough Skin or Iron Barbs) or held Rocky Helmet, it cannot remove the target's held item." "If Knock Off causes a Pokémon with the Sticky Hold Ability to faint, it can now remove that Pokémon's held item."

#### Hierarchy (view full)

- MoveEffectAttr
  - StealHeldItemChanceAttr

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

#####
Index

### Constructors

constructor

### Properties

chance
firstHitOnly
lastHitOnly
selfTarget
trigger

### Methods

apply
canApply
getCondition
getFailedText
getMoveChance
getTargetBenefitScore
getTargetHeldItems
getUserBenefitScore

## Constructors

### constructor

- new StealHeldItemChanceAttr(chance): StealHeldItemChanceAttr

- #### Parameters

  - chance: number

  #### Returns StealHeldItemChanceAttr

  Overrides MoveEffectAttr.constructor

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

## Properties

### `Private` chance

chance: number

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

### firstHitOnly

firstHitOnly: boolean

Should this effect only apply on the first hit?

Inherited from MoveEffectAttr.firstHitOnly

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

### lastHitOnly

lastHitOnly: boolean

Should this effect only apply on the last hit?

Inherited from MoveEffectAttr.lastHitOnly

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

### selfTarget

selfTarget: boolean

Should this `Move` target the user?

Inherited from MoveEffectAttr.selfTarget

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

### trigger

trigger: MoveEffectTrigger

Defines when this effect should trigger in the move's effect order

#### See

`phases.MoveEffectPhase.start`

Inherited from MoveEffectAttr.trigger

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

## Methods

### apply

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

- Applies move effects so long as they are able based on `canApply`

  #### Parameters

  - user: default
  - target: default
  - move: default
  - args: any[]

  #### Returns Promise<boolean>

  Overrides MoveEffectAttr.apply

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

### canApply

- canApply(user, target, move, args): boolean

- Determines whether the `Move`'s effects are valid to `apply`

  #### 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

  true if basic application of the ability attribute should be possible

  Inherited from MoveEffectAttr.canApply

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

### getCondition

- getCondition(): MoveCondition | MoveConditionFunc

- #### Returns MoveCondition | MoveConditionFunc

  the `MoveCondition` or MoveConditionFunc for this `Move`

  Inherited from MoveEffectAttr.getCondition

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

### 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 MoveEffectAttr.getFailedText

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

### getMoveChance

- getMoveChance(user, target, move, selfEffect?): number

- Gets the used move's additional effect chance. If user's ability has MoveEffectChanceMultiplierAbAttr or IgnoreMoveEffectsAbAttr modifies the base chance.

  #### Parameters

  - user: default

    `Pokemon` using this move

  - target: default

    `Pokemon` target of this move

  - move: default

    `Move` being used

  - `Optional` selfEffect: Boolean

    Boolean if move targets user.

  #### Returns number

  Move chance value.

  Inherited from MoveEffectAttr.getMoveChance

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

### 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`

  Overrides MoveEffectAttr.getTargetBenefitScore

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

### getTargetHeldItems

- getTargetHeldItems(target): PokemonHeldItemModifier []

- #### Parameters

  - target: default

  #### Returns PokemonHeldItemModifier []

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

### 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`

  Overrides MoveEffectAttr.getUserBenefitScore

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