You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-09-08 08:13:02 -07:00
Still more battle command labels
This commit is contained in:
79
battle/effects/attract.asm
Executable file
79
battle/effects/attract.asm
Executable file
@@ -0,0 +1,79 @@
|
||||
BattleCommand_Attract: ; 377ce
|
||||
; attract
|
||||
ld a, [AttackMissed]
|
||||
and a
|
||||
jr nz, .failed
|
||||
call CheckOppositeGender
|
||||
jr c, .failed
|
||||
call CheckHiddenOpponent
|
||||
jr nz, .failed
|
||||
ld a, BATTLE_VARS_SUBSTATUS1_OPP
|
||||
call GetBattleVarAddr
|
||||
bit SUBSTATUS_IN_LOVE, [hl]
|
||||
jr nz, .failed
|
||||
|
||||
set SUBSTATUS_IN_LOVE, [hl]
|
||||
call AnimateCurrentMove
|
||||
|
||||
; 'fell in love!'
|
||||
ld hl, FellInLoveText
|
||||
jp StdBattleTextBox
|
||||
|
||||
.failed
|
||||
jp Function37354
|
||||
; 377f5
|
||||
|
||||
|
||||
CheckOppositeGender: ; 377f5
|
||||
ld a, MON_SPECIES
|
||||
call BattlePartyAttr
|
||||
ld a, [hl]
|
||||
ld [CurPartySpecies], a
|
||||
|
||||
ld a, [CurBattleMon]
|
||||
ld [CurPartyMon], a
|
||||
xor a
|
||||
ld [MonType], a
|
||||
|
||||
callba GetGender
|
||||
jr c, .genderless_samegender
|
||||
|
||||
ld b, 1
|
||||
jr nz, .got_gender
|
||||
dec b
|
||||
|
||||
.got_gender
|
||||
push bc
|
||||
ld a, [TempEnemyMonSpecies]
|
||||
ld [CurPartySpecies], a
|
||||
ld hl, EnemyMonDVs
|
||||
ld a, [EnemySubStatus5]
|
||||
bit SUBSTATUS_TRANSFORMED, a
|
||||
jr z, .not_transformed
|
||||
ld hl, wEnemyBackupDVs
|
||||
.not_transformed
|
||||
ld a, [hli]
|
||||
ld [TempMonDVs], a
|
||||
ld a, [hl]
|
||||
ld [TempMonDVs + 1], a
|
||||
ld a, 3
|
||||
ld [MonType], a
|
||||
callba GetGender
|
||||
pop bc
|
||||
jr c, .genderless_samegender
|
||||
|
||||
ld a, 1
|
||||
jr nz, .got_enemy_gender
|
||||
dec a
|
||||
|
||||
.got_enemy_gender
|
||||
xor b
|
||||
jr z, .genderless_samegender
|
||||
|
||||
and a
|
||||
ret
|
||||
|
||||
.genderless_samegender
|
||||
scf
|
||||
ret
|
||||
; 3784b
|
93
battle/effects/present.asm
Executable file
93
battle/effects/present.asm
Executable file
@@ -0,0 +1,93 @@
|
||||
BattleCommand_Present: ; 37874
|
||||
; present
|
||||
|
||||
ld a, [wLinkMode]
|
||||
cp LINK_COLOSSEUM
|
||||
jr z, .colosseum_skippush
|
||||
push bc
|
||||
push de
|
||||
.colosseum_skippush
|
||||
|
||||
call BattleCommand_Stab
|
||||
|
||||
ld a, [wLinkMode]
|
||||
cp LINK_COLOSSEUM
|
||||
jr z, .colosseum_skippop
|
||||
pop de
|
||||
pop bc
|
||||
.colosseum_skippop
|
||||
|
||||
ld a, [wTypeMatchup]
|
||||
and a
|
||||
jp z, AnimateFailedMove
|
||||
ld a, [AttackMissed]
|
||||
and a
|
||||
jp nz, AnimateFailedMove
|
||||
|
||||
push bc
|
||||
call BattleRandom
|
||||
ld b, a
|
||||
ld hl, .PresentPower
|
||||
ld c, 0
|
||||
.next
|
||||
ld a, [hli]
|
||||
cp $ff
|
||||
jr z, .heal_effect ; 378a4 $11
|
||||
cp b
|
||||
jr nc, .got_power ; 378a7 $4
|
||||
inc c
|
||||
inc hl
|
||||
jr .next ; 378ab $f4
|
||||
|
||||
.got_power
|
||||
ld a, c
|
||||
ld [wPresentPower], a
|
||||
call AnimateCurrentMoveEitherSide
|
||||
ld d, [hl]
|
||||
pop bc
|
||||
ret
|
||||
|
||||
.heal_effect
|
||||
pop bc
|
||||
ld a, $3
|
||||
ld [wPresentPower], a
|
||||
call AnimateCurrentMove
|
||||
call BattleCommand_SwitchTurn
|
||||
ld hl, AICheckPlayerMaxHP
|
||||
ld a, [hBattleTurn]
|
||||
and a
|
||||
jr z, .got_hp_fn_pointer ; 378c9 $3
|
||||
ld hl, AICheckEnemyMaxHP
|
||||
.got_hp_fn_pointer
|
||||
ld a, BANK(AICheckPlayerMaxHP)
|
||||
rst FarCall
|
||||
jr c, .already_fully_healed ; 378d1 $20
|
||||
|
||||
ld hl, GetQuarterMaxHP
|
||||
call CallBattleCore
|
||||
call BattleCommand_SwitchTurn
|
||||
ld hl, RestoreHP
|
||||
call CallBattleCore
|
||||
call BattleCommand_SwitchTurn
|
||||
ld hl, RegainedHealthText
|
||||
call StdBattleTextBox
|
||||
call BattleCommand_SwitchTurn
|
||||
call UpdateOpponentInParty
|
||||
jr .do_animation ; 378f1 $11
|
||||
|
||||
.already_fully_healed
|
||||
call BattleCommand_SwitchTurn
|
||||
call _CheckBattleScene
|
||||
jr nc, .do_animation ; 378f9 $9
|
||||
call AnimateFailedMove
|
||||
ld hl, RefusedGiftText
|
||||
call StdBattleTextBox
|
||||
.do_animation
|
||||
jp EndMoveEffect
|
||||
|
||||
.PresentPower
|
||||
db 40 percent, 40
|
||||
db 70 percent + 1, 80
|
||||
db 80 percent, 120
|
||||
db $ff
|
||||
; 3790e
|
Reference in New Issue
Block a user