The damage from Mirror Coat is calculated. The damage from it is equal to twice the damage that has just been inflicted on the using pokemon by a Special-based move (Electric, Fire, Grass, Psychic, etc.). The move that does damage to the user has to go before Mirror Coat on the same turn that Mirror Coat has been selected. If an appropriate move is not successfully used before Mirror Coat, Mirror Coat will fail.
The accuracy of Mirror Coat is unaffected by Accuracy/Evade modifiers. These will never prevent Mirror Coat from hitting the opposing pokemon.
This is an “Attack last” move. On the turn that it is used, if the opposing pokemon uses any move other than another “Attack last” move, the pokemon using this move will go last. If both pokemon use an “Attack last” move the order of battle will be determined by Speed as normal.
If the move used by the opponent is also an “Attack last” move and the opposing pokemon is slower, therefore causing the other pokemon to go last, Mirror Coat will automatically fail. Mirror Coat must go last in order to work.
“Attack last” moves include: Counter, Mirror Coat, Roar, Vital Throw, and Whirlwind.
Like all other damaging Psychic-type attacks, Mirror Coat will not deal damage to Dark-type pokémon due to their immunity to Psychic attacks.