diff options
author | Daniel Harding <33dannye@gmail.com> | 2020-05-16 21:42:24 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-16 21:42:24 -0500 |
commit | 8a924f1f783572ff395f617f99546b4c949c8b04 (patch) | |
tree | 1b6c7de331cb983256651b11b8adf413a3a434f1 /engine/battle/move_effects/metronome.asm | |
parent | 88d7e9a34a8b610b358cec1ccc6660634ca9ce80 (diff) | |
parent | ed94962edf1668aba3f60938e8a5ba8040e2a59c (diff) |
Merge pull request #30 from entrpntr/spring-cleaning
Spring Cleaning
Diffstat (limited to 'engine/battle/move_effects/metronome.asm')
-rw-r--r-- | engine/battle/move_effects/metronome.asm | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/engine/battle/move_effects/metronome.asm b/engine/battle/move_effects/metronome.asm new file mode 100644 index 00000000..02766c16 --- /dev/null +++ b/engine/battle/move_effects/metronome.asm @@ -0,0 +1,43 @@ +BattleCommand_Metronome: +; metronome + + call ClearLastMove + call CheckUserIsCharging + jr nz, .asm_3752a + + ld a, [wKickCounter] + push af + call BattleCommand_LowerSub + pop af + ld [wKickCounter], a + +.asm_3752a + call LoadMoveAnim + +.GetMove: + call BattleRandom + +; No invalid moves. + cp NUM_ATTACKS + 1 + jr nc, .GetMove + +; None of the moves in MetronomeExcepts. + push af + ld de, 1 + ld hl, MetronomeExcepts + call IsInArray + pop bc + jr c, .GetMove + +; No moves the user already has. + ld a, b + call CheckUserMove + jr z, .GetMove + + ld a, BATTLE_VARS_MOVE + call GetBattleVarAddr + ld [hl], b + call UpdateMoveData + jp ResetTurn + +INCLUDE "data/moves/metronome_exception_moves.asm" |