pokecrystal-board/engine/battle/move_effects/mirror_move.asm

50 lines
707 B
NASM

BattleCommand_MirrorMove:
call ClearLastMove
ld a, BATTLE_VARS_MOVE
call GetBattleVarAddr
ld a, BATTLE_VARS_LAST_COUNTER_MOVE_OPP
call GetBattleVar
and a
jr z, .failed
call CheckUserMove
jr nz, .use
.failed
call AnimateFailedMove
ld hl, MirrorMoveFailedText
call StdBattleTextbox
jp EndMoveEffect
.use
ld a, b
ld [hl], a
ld [wNamedObjectIndex], a
push af
ld a, BATTLE_VARS_MOVE_ANIM
call GetBattleVarAddr
ld d, h
ld e, l
pop af
dec a
call GetMoveData
call GetMoveName
call CopyName1
call CheckUserIsCharging
jr nz, .done
ld a, [wBattleAnimParam]
push af
call BattleCommand_LowerSub
pop af
ld [wBattleAnimParam], a
.done
call BattleCommand_MoveDelay
jp ResetTurn