AbstractProtectedignoresWhether this protection effect should apply to all moves, including ones that ignore other forms of protection.
The tag's max duration.
The side of the field that this arena tag affects.
OptionalsourceThe MoveId that created this tag, or undefined if not set by a move.
Abstract ReadonlytagThe type of the arena tag
The tag's remaining duration. Setting to any number <=0 will make the tag's duration effectively infinite.
Protected AbstractconditionThe condition function to determine which moves are negated.
Protectedi18nSealedA suffix corresponding to this tag's current side.
ProtectedonReturn the i18n locales key that will be shown when this tag is added.
Within the text, {{pokemonNameWithAffix}} and {{moveName}} will be populated with
the name of the Pokemon that added the tag and the name of the move that created the tag, respectively.
ProtectedonReturn the message key that will be used when protecting an allied target. Within the text, the following variables will be populated:
{{pokemonNameWithAffix}}: The name of the Pokemon protected by the attack{{moveName}}: The name of the move that created the tag{{attackName}}: The name of the move that triggered the protection effect.ProtectedonReturn the i18n locales key that will be shown when this tag is removed.
Within the text, {{pokemonNameWithAffix}} and {{moveName}} will be populated with
the name of the Pokemon that added the tag and the name of the move that created the tag, respectively.
Checks incoming moves against the condition function and protects the target if conditions are met
true if the tag is applied quietly; false otherwise.
A BooleanHolder used to flag if the move is protected against
The attacking Pokemon
The defending Pokemon
The MoveId of the move being used
A BooleanHolder used to flag if a protection effect superceded effects that ignore protection
true if this tag protected against the attack; false otherwise
ProtectedcanProtectedgetProtectedgetProtectedgetReduce this ArenaTag's duration and apply any end-of-turn effects
Will ignore durations of all tags with durations <=0.
true if this tag should be kept; false if it should be removed.
When given a arena tag or json representing one, load the data for it. This is meant to be inherited from by any arena tag with custom attributes
Trigger effects when this tag is added to the Arena. By default, will queue a message with the contents of getOnAddMessage.
Whether to suppress any messages created during tag addition; default false
Apply effects when this Tag overlaps by creating a new instance while one is already present.
Optional_source: PokemonThe Pokemon having added the tag
Trigger effects when this tag is removed from the Arena. By default, will queue a message with the contents of getOnRemoveMessage.
Whether to suppress any messages created during tag addition; default false
Class to implement conditional team protection applies protection based on the attributes of incoming moves