You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-09-08 08:13:02 -07:00
Move-unique effect commands consistently go in engine/battle/move_effects/
This commit is contained in:
51
engine/battle/move_effects/psych_up.asm
Normal file
51
engine/battle/move_effects/psych_up.asm
Normal file
@@ -0,0 +1,51 @@
|
||||
BattleCommand_PsychUp: ; 37c55
|
||||
; psychup
|
||||
|
||||
ld hl, EnemyStatLevels
|
||||
ld de, PlayerStatLevels
|
||||
ld a, [hBattleTurn]
|
||||
and a
|
||||
jr z, .pointers_correct
|
||||
; It's the enemy's turn, so swap the pointers.
|
||||
push hl
|
||||
ld h, d
|
||||
ld l, e
|
||||
pop de
|
||||
.pointers_correct
|
||||
push hl
|
||||
ld b, NUM_LEVEL_STATS
|
||||
; If any of the enemy's stats is modified from its base level,
|
||||
; the move succeeds. Otherwise, it fails.
|
||||
.loop
|
||||
ld a, [hli]
|
||||
cp BASE_STAT_LEVEL
|
||||
jr nz, .break
|
||||
dec b
|
||||
jr nz, .loop
|
||||
pop hl
|
||||
call AnimateFailedMove
|
||||
jp PrintButItFailed
|
||||
|
||||
.break
|
||||
pop hl
|
||||
ld b, NUM_LEVEL_STATS
|
||||
.loop2
|
||||
ld a, [hli]
|
||||
ld [de], a
|
||||
inc de
|
||||
dec b
|
||||
jr nz, .loop2
|
||||
ld a, [hBattleTurn]
|
||||
and a
|
||||
jr nz, .calc_enemy_stats
|
||||
call CalcPlayerStats
|
||||
jr .merge
|
||||
|
||||
.calc_enemy_stats
|
||||
call CalcEnemyStats
|
||||
.merge
|
||||
call AnimateCurrentMove
|
||||
ld hl, CopiedStatsText
|
||||
jp StdBattleTextBox
|
||||
|
||||
; 37c95
|
||||
Reference in New Issue
Block a user