ref: a71b7a92b7443ef60df96890e56917d67db9b80b
dir: /engine/battle/move_effects/mimic.asm/
BattleCommand_Mimic: ; 36f46 ; mimic call ClearLastMove call BattleCommand_MoveDelay ld a, [wAttackMissed] and a jr nz, .fail ld hl, wBattleMonMoves ld a, [hBattleTurn] and a jr z, .player_turn ld hl, wEnemyMonMoves .player_turn call CheckHiddenOpponent jr nz, .fail ld a, BATTLE_VARS_LAST_COUNTER_MOVE_OPP call GetBattleVar and a jr z, .fail cp STRUGGLE jr z, .fail ld b, a ld c, NUM_MOVES .check_already_knows_move ld a, [hli] cp b jr z, .fail dec c jr nz, .check_already_knows_move dec hl .find_mimic ld a, [hld] cp MIMIC jr nz, .find_mimic inc hl ld a, BATTLE_VARS_LAST_COUNTER_MOVE_OPP call GetBattleVar ld [hl], a ld [wNamedObjectIndexBuffer], a ld bc, wBattleMonPP - wBattleMonMoves add hl, bc ld [hl], 5 call GetMoveName call AnimateCurrentMove ld hl, LearnedMoveText jp StdBattleTextBox .fail jp FailMimic ; 36f9d