summaryrefslogtreecommitdiff
path: root/engine/battle/effect_commands/spikes.asm
diff options
context:
space:
mode:
Diffstat (limited to 'engine/battle/effect_commands/spikes.asm')
-rw-r--r--engine/battle/effect_commands/spikes.asm27
1 files changed, 27 insertions, 0 deletions
diff --git a/engine/battle/effect_commands/spikes.asm b/engine/battle/effect_commands/spikes.asm
new file mode 100644
index 000000000..3d15e4cfd
--- /dev/null
+++ b/engine/battle/effect_commands/spikes.asm
@@ -0,0 +1,27 @@
+BattleCommand_Spikes: ; 37683
+; spikes
+
+ ld hl, EnemyScreens
+ ld a, [hBattleTurn]
+ and a
+ jr z, .asm_3768e
+ ld hl, PlayerScreens
+.asm_3768e
+
+; Fails if spikes are already down!
+
+ bit SCREENS_SPIKES, [hl]
+ jr nz, .failed
+
+; Nothing else stops it from working.
+
+ set SCREENS_SPIKES, [hl]
+
+ call AnimateCurrentMove
+
+ ld hl, SpikesText
+ jp StdBattleTextBox
+
+.failed
+ jp FailSpikes
+; 376a0