Local labels starting with capital letters are now decorated with a trailing colon; remove trailing whitespace; globally correct line endings to UNIX style

This commit is contained in:
pikalaxalt 2016-04-10 14:42:14 -04:00
parent 46ead9b849
commit bf73772a56
537 changed files with 4562 additions and 4562 deletions

View File

@ -233,7 +233,7 @@ UpdateChannels: ; e8125
jp [hl]
.ChannelFnPtrs
.ChannelFnPtrs:
dw .Channel1
dw .Channel2
dw .Channel3
@ -245,11 +245,11 @@ UpdateChannels: ; e8125
dw .Channel7
dw .Channel8
.Channel1
.Channel1:
ld a, [Danger]
bit 7, a
ret nz
.Channel5
.Channel5:
ld hl, Channel1NoteFlags - Channel1
add hl, bc
bit NOTE_UNKN_3, [hl]
@ -317,8 +317,8 @@ UpdateChannels: ; e8125
ld [rNR14], a
ret
.Channel2
.Channel6
.Channel2:
.Channel6:
ld hl, Channel1NoteFlags - Channel1
add hl, bc
bit NOTE_REST, [hl] ; rest
@ -377,8 +377,8 @@ UpdateChannels: ; e8125
ld [rNR24], a
ret
.Channel3
.Channel7
.Channel3:
.Channel7:
ld hl, Channel1NoteFlags - Channel1
add hl, bc
bit NOTE_REST, [hl] ; rest
@ -478,8 +478,8 @@ endr
ld [rNR32], a
ret
.Channel4
.Channel8
.Channel4:
.Channel8:
ld hl, Channel1NoteFlags - Channel1
add hl, bc
bit NOTE_REST, [hl] ; rest
@ -2483,62 +2483,62 @@ _PlayCryHeader:: ; e8b79
; Play cry de using parameters:
; CryPitch
; CryLength
call MusicOff
; Overload the music id with the cry id
ld hl, MusicID
ld [hl], e
inc hl
ld [hl], d
; 3-byte pointers (bank, address)
ld hl, Cries
rept 3
add hl, de
endr
ld a, [hli]
ld [MusicBank], a
ld e, [hl]
inc hl
ld d, [hl]
; Read the cry's sound header
call LoadMusicByte
; Top 2 bits contain the number of channels
rlca
rlca
and 3
; For each channel:
inc a
.loop
push af
call LoadChannel
ld hl, Channel1Flags - Channel1
add hl, bc
set SOUND_REST, [hl]
ld hl, Channel1Flags2 - Channel1
add hl, bc
set SOUND_CRY_PITCH, [hl]
ld hl, Channel1CryPitch - Channel1
add hl, bc
ld a, [CryPitch]
ld [hli], a
ld a, [CryPitch + 1]
ld [hl], a
; No tempo for channel 4
ld a, [CurChannel]
and 3
cp 3
jr nc, .start
; Tempo is effectively length
ld hl, Channel1Tempo - Channel1
add hl, bc
@ -2551,14 +2551,14 @@ endr
ld a, [wStereoPanningMask]
and a
jr z, .next
; Stereo only: Play cry from the monster's side.
; This only applies in-battle.
ld a, [Options]
bit 5, a ; stereo
jr z, .next
; [Tracks] &= [CryTracks]
ld hl, Channel1Tracks - Channel1
add hl, bc
@ -2568,23 +2568,23 @@ endr
ld hl, Channel1Tracks - Channel1
add hl, bc
ld [hl], a
.next
pop af
dec a
jr nz, .loop
; Cries play at max volume, so we save the current volume for later.
ld a, [LastVolume]
and a
jr nz, .end
ld a, [Volume]
ld [LastVolume], a
ld a, $77
ld [Volume], a
.end
ld a, 1 ; stop playing music
ld [SFXPriority], a
@ -2699,24 +2699,24 @@ PlayStereoSFX:: ; e8ca6
; play sfx de
call MusicOff
; standard procedure if stereo's off
ld a, [Options]
bit 5, a
jp z, _PlaySFX
; else, let's go ahead with this
ld hl, MusicID
ld [hl], e
inc hl
ld [hl], d
; get sfx ptr
ld hl, SFX
rept 3
add hl, de
endr
; bank
ld a, [hli]
ld [MusicBank], a
@ -2724,22 +2724,22 @@ endr
ld e, [hl]
inc hl
ld d, [hl]
; bit 2-3
call LoadMusicByte
rlca
rlca
and 3 ; ch1-4
inc a
.loop
push af
call LoadChannel
ld hl, Channel1Flags - Channel1
add hl, bc
set SOUND_SFX, [hl]
push de
; get tracks for this channel
ld a, [CurChannel]
@ -2751,47 +2751,47 @@ endr
ld a, [hl]
ld hl, wStereoPanningMask
and [hl]
ld hl, Channel1Tracks - Channel1
add hl, bc
ld [hl], a
ld hl, Channel1Field0x30 - Channel1 ; $c131 - Channel1
add hl, bc
ld [hl], a
ld a, [CryTracks]
cp 2 ; ch 1-2
jr c, .skip
; ch3-4
ld a, [wSFXDuration]
ld hl, Channel1Field0x2e - Channel1 ; $c12f - Channel1
add hl, bc
ld [hl], a
ld hl, Channel1Field0x2f - Channel1 ; $c130 - Channel1
add hl, bc
ld [hl], a
ld hl, Channel1Flags2 - Channel1
add hl, bc
set SOUND_UNKN_0F, [hl]
.skip
pop de
; turn channel on
ld hl, Channel1Flags - Channel1
add hl, bc
set SOUND_CHANNEL_ON, [hl] ; on
; done?
pop af
dec a
jr nz, .loop
; we're done
call MusicOn
ret

View File

@ -102,9 +102,9 @@
dba Music_LakeOfRageRocketRadio ; 0xef5b1
dba Music_Printer ; 0xf07fd
dba Music_PostCredits ; 0xcfd9e
; Crystal adds the following songs:
dba Music_Clair ; 0x1fa8d
dba Music_MobileAdapterMenu ; 0x17801f
dba Music_MobileAdapter ; 0x1fc87

View File

@ -318,7 +318,7 @@ AI_Items: ; 39196
jp c, .Use
jp .DontUse
.StatusCheckContext
.StatusCheckContext:
ld a, [EnemySubStatus5]
bit SUBSTATUS_TOXIC, a
jr z, .FailToxicCheck
@ -328,7 +328,7 @@ AI_Items: ; 39196
call Random
cp 1 + 50 percent
jp c, .Use
.FailToxicCheck
.FailToxicCheck:
ld a, [EnemyMonStatus]
and 1 << FRZ | SLP
jp z, .DontUse
@ -344,7 +344,7 @@ AI_Items: ; 39196
call .Status
jp c, .DontUse
.UseFullRestore
.UseFullRestore:
call EnemyUsedFullRestore
jp .Use
; 38220
@ -676,7 +676,7 @@ AI_TrySwitch: ; 3844b
ld c, a
ld hl, OTPartyMon1HP
ld d, 0
.SwitchLoop
.SwitchLoop:
ld a, [hli]
ld b, a
ld a, [hld]

View File

@ -31,24 +31,24 @@ endr
ld hl, EnemyMonMoves
ld c, 0
.CheckDisabledMove
.CheckDisabledMove:
cp [hl]
jr z, .ScoreDisabledMove
inc c
inc hl
jr .CheckDisabledMove
.ScoreDisabledMove
.ScoreDisabledMove:
ld hl, Buffer1
ld b, 0
add hl, bc
ld [hl], 80
; Don't pick moves with 0 PP.
.CheckPP
.CheckPP:
ld hl, Buffer1 - 1
ld de, EnemyMonPP
ld b, 0
.CheckMovePP
.CheckMovePP:
inc b
ld a, b
cp EnemyMonMovesEnd - EnemyMonMoves + 1
@ -63,7 +63,7 @@ endr
; Apply AI scoring layers depending on the trainer class.
.ApplyLayers
.ApplyLayers:
ld hl, TrainerClassAttributes + TRNATTR_AI_MOVE_WEIGHTS
; If we have a battle in BattleTower just load the Attributes of the first TrainerClass (Falkner)
@ -82,7 +82,7 @@ endr
push bc
push hl
.CheckLayer
.CheckLayer:
pop hl
pop bc
@ -119,12 +119,12 @@ endr
jr .CheckLayer
; Decrement the scores of all moves one by one until one reaches 0.
.DecrementScores
.DecrementScores:
ld hl, Buffer1
ld de, EnemyMonMoves
ld c, EnemyMonMovesEnd - EnemyMonMoves
.DecrementNextScore
.DecrementNextScore:
; If the enemy has no moves, this will infinite.
ld a, [de]
inc de
@ -145,7 +145,7 @@ endr
; In order to avoid bias towards the moves located first in memory, increment the scores
; that were decremented one more time than the rest (in case there was a tie).
; This means that the minimum score will be 1.
.PickLowestScoreMoves
.PickLowestScoreMoves:
ld a, c
.move_loop
@ -159,14 +159,14 @@ endr
ld de, EnemyMonMoves
ld c, NUM_MOVES
; Give a score of 0 to a blank move
; Give a score of 0 to a blank move
.loop2
ld a, [de]
and a
jr nz, .skip_load
ld [hl], a
; Disregard the move if its score is not 1
; Disregard the move if its score is not 1
.skip_load
ld a, [hl]
dec a
@ -183,8 +183,8 @@ endr
dec c
jr nz, .loop2
; Randomly choose one of the moves with a score of 1
.ChooseMove
; Randomly choose one of the moves with a score of 1
.ChooseMove:
ld hl, Buffer1
call Random
and 3

View File

@ -23,7 +23,7 @@ AI_Basic: ; 38591
; Dismiss moves with special effects if they are
; useless or not a good choice right now.
; For example, healing moves, weather moves, Dream Eater...
; For example, healing moves, weather moves, Dream Eater...
push hl
push de
push bc
@ -33,7 +33,7 @@ AI_Basic: ; 38591
pop hl
jr nz, .discourage
; Dismiss status-only moves if the player can't be statused.
; Dismiss status-only moves if the player can't be statused.
ld a, [wEnemyMoveStruct + MOVE_EFFECT]
push hl
push de
@ -680,7 +680,7 @@ rept 2
inc [hl]
endr
; 30% chance to end up here if enemy's HP is full and player is not badly poisoned.
; 30% chance to end up here if enemy's HP is full and player is not badly poisoned.
; 77% chance to end up here if enemy's HP is above 50% but not full.
; 96% chance to end up here if enemy's HP is between 25% and 50%.
; 100% chance to end up here if enemy's HP is below 25%.
@ -771,7 +771,7 @@ AI_Smart_MirrorMove: ; 3895b
jr nz, .asm_38968
; ...do nothing if enemy is slower than player
call AICompareSpeed
call AICompareSpeed
ret nc
; ...or dismiss this move if enemy is faster than player.
@ -784,7 +784,7 @@ AI_Smart_MirrorMove: ; 3895b
ld de, 1
call IsInArray
pop hl
; ...do nothing if he didn't use a useful move.
ret nc
@ -813,11 +813,11 @@ AI_Smart_AccuracyDown: ; 38985
call AICheckPlayerMaxHP
jr nc, .asm_389a0
; ...and enemy's HP is above 50%...
; ...and enemy's HP is above 50%...
call AICheckEnemyHalfHP
jr nc, .asm_389a0
; ...greatly encourage this move if player is badly poisoned.
; ...greatly encourage this move if player is badly poisoned.
ld a, [PlayerSubStatus5]
bit SUBSTATUS_TOXIC, a
jr nz, .asm_3899d
@ -839,21 +839,21 @@ endr
call AICheckPlayerQuarterHP
jr nc, .asm_389bd
; If player's HP is above 25% but not full, 4% chance to greatly encourage this move.
; If player's HP is above 25% but not full, 4% chance to greatly encourage this move.
call Random
cp $a
jr c, .asm_3899d
; If player's HP is between 25% and 50%,...
; If player's HP is between 25% and 50%,...
call AICheckPlayerHalfHP
jr nc, .asm_389b8
; If player's HP is above 50% but not full, 20% chance to greatly encourage this move.
; If player's HP is above 50% but not full, 20% chance to greatly encourage this move.
call AI_80_20
jr c, .asm_3899d
jr .asm_389bf
; ...50% chance to greatly discourage this move.
; ...50% chance to greatly discourage this move.
.asm_389b8
call AI_50_50
jr c, .asm_389bf
@ -863,7 +863,7 @@ rept 2
inc [hl]
endr
; We only end up here if the move has not been already encouraged.
; We only end up here if the move has not been already encouraged.
.asm_389bf
ld a, [PlayerSubStatus5]
bit SUBSTATUS_TOXIC, a
@ -873,14 +873,14 @@ endr
bit SUBSTATUS_LEECH_SEED, a
jr nz, .asm_389ef
; Discourage this move if enemy's evasion level is higher than player's accuracy level.
; Discourage this move if enemy's evasion level is higher than player's accuracy level.
ld a, [EnemyEvaLevel]
ld b, a
ld a, [PlayerAccLevel]
cp b
jr c, .asm_389e4
; Greatly encourage this move if the player is in the middle of Fury Cutter or Rollout.
; Greatly encourage this move if the player is in the middle of Fury Cutter or Rollout.
ld a, [PlayerFuryCutterCount]
and a
jr nz, .asm_3899d
@ -895,7 +895,7 @@ endr
; Player is badly poisoned.
; 80% chance to greatly encourage this move.
; This would counter any previous discouragement.
; This would counter any previous discouragement.
.asm_389e6
call Random
cp $50
@ -907,7 +907,7 @@ endr
; Player is seeded.
; 50% chance to encourage this move.
; This would partly counter any previous discouragement.
; This would partly counter any previous discouragement.
.asm_389ef
call AI_50_50
ret c
@ -931,7 +931,7 @@ AI_Smart_Haze: ; 389f5
jr c, .asm_38a12
jr .asm_389fb
; 85% chance to encourage this move if any of player's stat levels is higher than +2.
; 85% chance to encourage this move if any of player's stat levels is higher than +2.
.asm_38a05
ld hl, PlayerAtkLevel
ld c, $8
@ -1164,7 +1164,7 @@ AI_Smart_Confuse: ; 38adb
cp $19
jr c, .asm_38ae7
inc [hl]
.asm_38ae7
; Discourage again if player's HP is below 25%.
call AICheckPlayerQuarterHP
@ -1220,10 +1220,10 @@ AI_Smart_Fly: ; 38b12
ld a, [PlayerSubStatus3]
and 1 << SUBSTATUS_FLYING | 1 << SUBSTATUS_UNDERGROUND
ret z
call AICompareSpeed
ret nc
rept 3
dec [hl]
endr
@ -1246,9 +1246,9 @@ AI_Smart_Paralyze: ; 38b26
; 50% chance to discourage this move if player's HP is below 25%.
call AICheckPlayerQuarterHP
jr nc, .asm_38b3a
; 80% chance to greatly encourage this move
; if enemy is slower than player and its HP is above 25%.
; if enemy is slower than player and its HP is above 25%.
call AICompareSpeed
ret c
call AICheckEnemyQuarterHP
@ -1308,8 +1308,8 @@ AI_Smart_Substitute: ; 38b5c
AI_Smart_HyperBeam: ; 38b63
call AICheckEnemyHalfHP
jr c, .asm_38b72
; 50% chance to encourage this move if enemy's HP is below 25%.
; 50% chance to encourage this move if enemy's HP is below 25%.
call AICheckEnemyQuarterHP
ret c
call AI_50_50
@ -1335,13 +1335,13 @@ AI_Smart_Rage: ; 38b7f
bit SUBSTATUS_RAGE, a
jr z, .asm_38b9b
; If enemy's Rage is building, 50% chance to encourage this move.
; If enemy's Rage is building, 50% chance to encourage this move.
call AI_50_50
jr c, .asm_38b8c
dec [hl]
; Encourage this move based on Rage's counter.
; Encourage this move based on Rage's counter.
.asm_38b8c
ld a, [wEnemyRageCounter]
cp $2
@ -1773,12 +1773,12 @@ AI_Smart_PriorityHit: ; 38d5a
call AICompareSpeed
ret c
; Dismiss this move if the player is flying or underground.
; Dismiss this move if the player is flying or underground.
ld a, [PlayerSubStatus3]
and 1 << SUBSTATUS_FLYING | 1 << SUBSTATUS_UNDERGROUND
jp nz, AIDiscourageMove
; Greatly encourage this move if it will KO the player.
; Greatly encourage this move if it will KO the player.
ld a, $1
ld [hBattleTurn], a
push hl
@ -1895,18 +1895,18 @@ AI_Smart_MeanLook: ; 38dfb
pop hl
jp z, AIDiscourageMove
; 80% chance to greatly encourage this move if the enemy is badly poisoned (weird).
; 80% chance to greatly encourage this move if the enemy is badly poisoned (weird).
ld a, [EnemySubStatus5]
bit SUBSTATUS_TOXIC, a
jr nz, .asm_38e26
; 80% chance to greatly encourage this move if the player is either
; in love, identified, stuck in Rollout, or has a Nightmare.
; in love, identified, stuck in Rollout, or has a Nightmare.
ld a, [PlayerSubStatus1]
and 1<<SUBSTATUS_IN_LOVE | 1<<SUBSTATUS_ROLLOUT | 1<<SUBSTATUS_IDENTIFIED | 1<<SUBSTATUS_NIGHTMARE
jr nz, .asm_38e26
; Otherwise, discourage this move unless the player only has not very effective moves against the enemy.
; Otherwise, discourage this move unless the player only has not very effective moves against the enemy.
push hl
callab CheckPlayerMoveTypeMatchups
ld a, [wEnemyAISwitchScore]
@ -2233,7 +2233,7 @@ AI_Smart_Sandstorm: ; 38f7a
inc [hl]
ret
.SandstormImmuneTypes
.SandstormImmuneTypes:
db ROCK
db GROUND
db STEEL
@ -2493,7 +2493,7 @@ AI_Smart_HiddenPower: ; 3909e
push hl
ld a, 1
ld [hBattleTurn], a
; Calculate Hidden Power's type and base power based on enemy's DVs.
callab HiddenPowerDamage
callab BattleCheckTypeMatchup
@ -2697,7 +2697,7 @@ AI_Smart_PsychUp: ; 39152
jr nz, .asm_3915a
; Calculate the sum of all player's stat level modifiers. Add 100 first to prevent underflow.
; Put the result in d. d will range between 58 and 142.
; Put the result in d. d will range between 58 and 142.
ld hl, PlayerAtkLevel
ld b, $8
ld d, 100
@ -2716,12 +2716,12 @@ AI_Smart_PsychUp: ; 39152
pop hl
jr nc, .asm_39188
; Else, 80% chance to encourage this move unless player's accuracy level is lower than -1...
; Else, 80% chance to encourage this move unless player's accuracy level is lower than -1...
ld a, [PlayerAccLevel]
cp $6
ret c
; ...or enemy's evasion level is higher than +0.
; ...or enemy's evasion level is higher than +0.
ld a, [EnemyEvaLevel]
cp $8
ret nc
@ -2825,7 +2825,7 @@ rept 2
endr
ret
; Try to predict if the player will use Fly this turn.
; Try to predict if the player will use Fly this turn.
.couldFly
; 50% chance to encourage this move if the enemy is slower than the player.
@ -3175,10 +3175,10 @@ AI_Opportunist: ; 39315
call AICheckEnemyHalfHP
ret c
; Discourage stall moves if enemy's HP is below 25%.
; Discourage stall moves if enemy's HP is below 25%.
call AICheckEnemyQuarterHP
jr nc, .asm_39322
; 50% chance to discourage stall moves if enemy's HP is between 25% and 50%.
call AI_50_50
ret c
@ -3333,12 +3333,12 @@ AI_Aggressive: ; 39369
; Ignore this move if its power is 0 or 1.
; Moves such as Seismic Toss, Hidden Power,
; Counter and Fissure have a base power of 1.
; Counter and Fissure have a base power of 1.
ld a, [wEnemyMoveStruct + MOVE_POWER]
cp 2
jr c, .checkmove2
; Ignore this move if it is reckless.
; Ignore this move if it is reckless.
push hl
push de
push bc
@ -3351,7 +3351,7 @@ AI_Aggressive: ; 39369
pop hl
jr c, .checkmove2
; If we made it this far, discourage this move.
; If we made it this far, discourage this move.
inc [hl]
jr .checkmove2
@ -3384,7 +3384,7 @@ AIDamageCalc: ; 393e7
callab BattleCommand_Stab
ret
.ConstantDamageEffects
.ConstantDamageEffects:
db EFFECT_SUPER_FANG
db EFFECT_STATIC_DAMAGE
db EFFECT_LEVEL_DAMAGE
@ -3550,7 +3550,7 @@ AI_Risky: ; 394a9
call AICheckEnemyMaxHP
jr c, .nextmove
; Else, 80% chance to exclude them.
; Else, 80% chance to exclude them.
call Random
cp 200 ; 1/5
jr c, .nextmove

View File

@ -161,7 +161,7 @@ endr
.doubledown
call .DecreaseScore
; fallthrough
; 34931

View File

@ -321,7 +321,7 @@ BattleAnim_ThrowPokeBall
anim_jump .Shake
; c92f2
.TheTrainerBlockedTheBall
.TheTrainerBlockedTheBall:
anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_HIT
anim_sound 6, 2, SFX_THROW_BALL
anim_obj ANIM_OBJ_16, 8, 0, 11, 4, $20
@ -331,7 +331,7 @@ BattleAnim_ThrowPokeBall
anim_ret
; c9305
.UltraBall
.UltraBall:
anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE
anim_sound 6, 2, SFX_THROW_BALL
anim_obj ANIM_OBJ_POKE_BALL, 8, 4, 11, 4, $40
@ -345,7 +345,7 @@ BattleAnim_ThrowPokeBall
anim_jump .Shake
; c9326
.GreatBall
.GreatBall:
anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE
anim_sound 6, 2, SFX_THROW_BALL
anim_obj ANIM_OBJ_POKE_BALL, 8, 4, 11, 4, $40
@ -359,7 +359,7 @@ BattleAnim_ThrowPokeBall
anim_jump .Shake
; c9347
.MasterBall
.MasterBall:
anim_3gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE, ANIM_GFX_SPEED
anim_sound 6, 2, SFX_THROW_BALL
anim_obj ANIM_OBJ_POKE_BALL, 8, 0, 11, 4, $20
@ -380,7 +380,7 @@ BattleAnim_ThrowPokeBall
anim_obj ANIM_OBJ_2B, -15, 0, 7, 0, $36
anim_obj ANIM_OBJ_2B, -15, 0, 7, 0, $37
anim_wait 64
.Shake
.Shake:
anim_bgeffect ANIM_BG_RETURN_MON, $0, $0, $0
anim_wait 8
anim_incobj 2
@ -394,7 +394,7 @@ BattleAnim_ThrowPokeBall
anim_wait 32
anim_wait 8
anim_setvar $0
.Loop
.Loop:
anim_wait 48
anim_checkpokeball
anim_jumpvar $1, .Click
@ -404,12 +404,12 @@ BattleAnim_ThrowPokeBall
anim_jump .Loop
; c93bc
.Click
.Click:
anim_clearsprites
anim_ret
; c93be
.BreakFree
.BreakFree:
anim_setobj $1, $b
anim_sound 0, 1, SFX_BALL_POOF
anim_obj ANIM_OBJ_1C, -15, 0, 8, 0, $10
@ -434,7 +434,7 @@ BattleAnim_SendOutMon: ; c93d1
anim_call BattleAnim_ShowMon_0
anim_ret
.Unknown
.Unknown:
anim_1gfx ANIM_GFX_SMOKE
anim_call BattleAnim_FollowEnemyFeet_0
anim_bgeffect ANIM_BG_2A, $0, $1, $0
@ -449,7 +449,7 @@ BattleAnim_SendOutMon: ; c93d1
anim_call BattleAnim_ShowMon_0
anim_ret
.Shiny
.Shiny:
anim_1gfx ANIM_GFX_SPEED
anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
anim_bgeffect ANIM_BG_06, $0, $2, $0
@ -479,7 +479,7 @@ BattleAnim_SendOutMon: ; c93d1
anim_wait 32
anim_ret
.Normal
.Normal:
anim_1gfx ANIM_GFX_SMOKE
anim_sound 0, 0, SFX_BALL_POOF
anim_obj ANIM_OBJ_1C, 5, 4, 12, 0, $0

View File

@ -236,7 +236,7 @@ BattleBGEffect_WhiteHues: ; c812d (32:412d)
call EndBattleBGEffect
ret
.Pals
.Pals:
db %11100100
db %11100000
db %11010000
@ -254,7 +254,7 @@ BattleBGEffect_BlackHues: ; c8141 (32:4141)
call EndBattleBGEffect
ret
.Pals
.Pals:
db %11100100
db %11110100
db %11111000
@ -273,7 +273,7 @@ BattleBGEffect_AlternateHues: ; c8155 (32:4155)
call EndBattleBGEffect
ret
.Pals
.Pals:
db %11100100
db %11111000
db %11111100
@ -298,12 +298,12 @@ BattleBGEffect_06: ; c8171 (32:4171)
ld [wOBP0], a
ret
.PalsCGB
.PalsCGB:
db %11100100
db %10010000
db -2
.PalsSGB
.PalsSGB:
db %11110000
db %11000000
db -2
@ -322,12 +322,12 @@ BattleBGEffect_07: ; c818b (32:418b)
ld [wOBP0], a
ret
.PalsCGB
.PalsCGB:
db %11100100
db %11011000
db -2
.PalsSGB
.PalsSGB:
db %11110000
db %11001100
db -2
@ -339,7 +339,7 @@ BattleBGEffect_08: ; c81a5 (32:41a5)
ld [wBGP], a
ret
.Pals
.Pals:
db %00011011
db %01100011
db %10000111
@ -405,10 +405,10 @@ BattleBGEffect_ShowMon: ; c81ea (32:41ea)
call BattleBGEffect_RunPicResizeScript
ret
.PlayerData
.PlayerData:
db 0, $31, 0
db -1
.EnemyData
.EnemyData:
db 3, $00, 3
db -1
; c8214
@ -670,12 +670,12 @@ BattleBGEffect_EnterMon: ; c837b (32:437b)
call BattleBGEffect_RunPicResizeScript
ret
.PlayerData
.PlayerData:
db 2, $31, 2
db 1, $31, 1
db 0, $31, 0
db -1
.EnemyData
.EnemyData:
db 5, $00, 5
db 4, $00, 4
db 3, $00, 3
@ -698,7 +698,7 @@ BattleBGEffect_ReturnMon: ; c83a8 (32:43a8)
call BattleBGEffect_RunPicResizeScript
ret
.PlayerData
.PlayerData:
db 0, $31, 0
db -2, $66, 0
db 1, $31, 1
@ -707,7 +707,7 @@ BattleBGEffect_ReturnMon: ; c83a8 (32:43a8)
db -2, $22, 2
db -3, $00, 0
db -1
.EnemyData
.EnemyData:
db 3, $00, 3
db -2, $77, 3
db 4, $00, 4
@ -773,7 +773,7 @@ endr
call EndBattleBGEffect
ret
.ClearBox
.ClearBox:
; get dims
push bc
inc hl
@ -798,7 +798,7 @@ endr
pop bc
ret
.PlaceGraphic
.PlaceGraphic:
; get dims
push bc
push hl
@ -858,7 +858,7 @@ endr
pop bc
ret
.Coords
.Coords:
dwcoord 2, 6
dwcoord 3, 8
dwcoord 4, 10
@ -866,7 +866,7 @@ endr
dwcoord 13, 2
dwcoord 14, 4
.BGSquares
.BGSquares:
bgsquare: MACRO
dn \1,\2
dw \3
@ -879,7 +879,7 @@ endm
bgsquare 5, 5, .FiveByFive
bgsquare 3, 3, .ThreeByThree
.SixBySix
.SixBySix:
db $00, $06, $0c, $12, $18, $1e
db $01, $07, $0d, $13, $19, $1f
db $02, $08, $0e, $14, $1a, $20
@ -887,17 +887,17 @@ endm
db $04, $0a, $10, $16, $1c, $22
db $05, $0b, $11, $17, $1d, $23
.FourByFour
.FourByFour:
db $00, $0c, $12, $1e
db $02, $0e, $14, $20
db $03, $0f, $15, $21
db $05, $11, $17, $23
.TwoByTwo
.TwoByTwo:
db $00, $1e
db $05, $23
.SevenBySeven
.SevenBySeven:
db $00, $07, $0e, $15, $1c, $23, $2a
db $01, $08, $0f, $16, $1d, $24, $2b
db $02, $09, $10, $17, $1e, $25, $2c
@ -906,14 +906,14 @@ endm
db $05, $0c, $13, $1a, $21, $28, $2f
db $06, $0d, $14, $1b, $22, $29, $30
.FiveByFive
.FiveByFive:
db $00, $07, $15, $23, $2a
db $01, $08, $16, $24, $2b
db $03, $0a, $18, $26, $2d
db $05, $0c, $1a, $28, $2f
db $06, $0d, $1b, $29, $30
.ThreeByThree
.ThreeByThree:
db $00, $15, $2a
db $03, $18, $2d
db $06, $1b, $30
@ -945,7 +945,7 @@ BattleBGEffect_Surf: ; c8545 (32:4545)
call BattleAnim_ResetLCDStatCustom
ret
.RotatewSurfWaveBGEffect
.RotatewSurfWaveBGEffect:
ld hl, wSurfWaveBGEffect
ld de, wSurfWaveBGEffect + 1
ld c, wSurfWaveBGEffectEnd - wSurfWaveBGEffect - 1
@ -1218,7 +1218,7 @@ BattleBGEffect_DoubleTeam: ; c8689 (32:4689)
.four
ret
.UpdateLYOverrides
.UpdateLYOverrides:
ld e, a
xor $ff
inc a
@ -1893,7 +1893,7 @@ BattleBGEffect_2a: ; c8a3a (32:4a3a)
call BattleBGEffects_IncrementJumptable
ret
.SetLYOverridesBackup
.SetLYOverridesBackup:
ld e, a
ld a, [hFFC7]
ld l, a
@ -1913,7 +1913,7 @@ BattleBGEffect_2a: ; c8a3a (32:4a3a)
call BattleBGEffects_ResetVideoHRAM
ret
.GetLYOverride
.GetLYOverride:
ld hl, BG_EFFECT_STRUCT_03
add hl, bc
ld a, [hl]
@ -2042,7 +2042,7 @@ BattleBGEffect_1c: ; c8b00 (32:4b00)
ld [wOBP1], a
ret
.DMG_LYOverrideLoads
.DMG_LYOverrideLoads:
ld hl, LYOverridesBackup
.loop1
ld [hl], d
@ -2061,7 +2061,7 @@ BattleBGEffect_1c: ; c8b00 (32:4b00)
call BatttleBGEffects_GetNamedJumptablePointer
jp [hl]
.Jumptable
.Jumptable:
dw .cgb_zero
dw .cgb_one
dw .cgb_two
@ -2118,12 +2118,12 @@ BattleBGEffect_1c: ; c8b00 (32:4b00)
call EndBattleBGEffect
ret
.CGB_DMGEnemyData
.CGB_DMGEnemyData:
db $e4, $e4
db $f8, $90
db $fc, $40
db $f8, $90
.DMG_PlayerData
.DMG_PlayerData:
db $e4, $e4
db $90, $f8
db $40, $fc
@ -2135,7 +2135,7 @@ BattleBGEffect_RapidFlash: ; c8be8 (32:4be8)
call BGEffect_RapidCyclePals
ret
.FlashPals
.FlashPals:
db $e4, $6c, $fe
; c8bf2
@ -2144,7 +2144,7 @@ BattleBGEffect_16: ; c8bf2 (32:4bf2)
call BGEffect_RapidCyclePals
ret
.Pals
.Pals:
db $e4, $90, $40, $ff
; c8bfd
@ -2153,7 +2153,7 @@ BattleBGEffect_17: ; c8bfd (32:4bfd)
call BGEffect_RapidCyclePals
ret
.Pals
.Pals:
db $e4, $f8, $fc, $ff
; c8c08
@ -2162,7 +2162,7 @@ BattleBGEffect_18: ; c8c08 (32:4c08)
call BGEffect_RapidCyclePals
ret
.Pals
.Pals:
db $e4, $90, $40, $90, $fe
; c8c14
@ -2171,7 +2171,7 @@ BattleBGEffect_19: ; c8c14 (32:4c14)
call BGEffect_RapidCyclePals
ret
.Pals
.Pals:
db $e4, $f8, $fc, $f8, $fe
; c8c20
@ -2180,7 +2180,7 @@ BattleBGEffect_1a: ; c8c20 (32:4c20)
call BGEffect_RapidCyclePals
ret
.Pals
.Pals:
db $e4, $f8, $fc, $f8, $e4, $90, $40, $90, $fe
; c8c30
@ -2189,7 +2189,7 @@ BattleBGEffect_1b: ; c8c30 (32:4c30)
call BGEffect_RapidCyclePals
ret
.Pals
.Pals:
db $e4, $fc, $e4, $00, $fe
; c8c3c
@ -2198,7 +2198,7 @@ BattleBGEffect_1d: ; c8c3c (32:4c3c)
call BGEffect_RapidCyclePals
ret
.Pals
.Pals:
db $e4, $90, $40, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $40, $90, $e4, $ff
; c8c55
@ -2207,7 +2207,7 @@ BattleBGEffect_1e: ; c8c55 (32:4c55)
call BGEffect_RapidCyclePals
ret
.Pals
.Pals:
db $00, $40, $90, $e4, $ff
; c8c61
@ -2423,7 +2423,7 @@ BGEffect_RapidCyclePals: ; c8d77 (32:4d77)
pop de
jp [hl]
.Jumptable_DMG
.Jumptable_DMG:
dw .zero_dmg
dw .one_dmg
dw .two_dmg
@ -2836,7 +2836,7 @@ Functionc8f9a: ; c8f9a (32:4f9a)
and a
ret
.GetLYOverrideBackupAddrOffset
.GetLYOverrideBackupAddrOffset:
ld a, [hFFC7]
ld e, a
ld a, [wBattleAnimTemp0]

View File

@ -273,7 +273,7 @@ HandleBetweenTurnEffects: ; 3c1d6
ret c
jr .NoMoreFaintingConditions
.CheckEnemyFirst
.CheckEnemyFirst:
call CheckFaint_EnemyThenPlayer
ret c
call HandleFutureSight
@ -289,7 +289,7 @@ HandleBetweenTurnEffects: ; 3c1d6
call CheckFaint_EnemyThenPlayer
ret c
.NoMoreFaintingConditions
.NoMoreFaintingConditions:
call HandleLeftovers
call HandleMysteryberry
call HanleDefrost
@ -310,7 +310,7 @@ CheckFaint_PlayerThenEnemy: ; 3c23c
and a
jr nz, .BattleIsOver
.PlayerNotFainted
.PlayerNotFainted:
call HasEnemyFainted
jr nz, .BattleContinues
call HandleEnemyMonFaint
@ -318,11 +318,11 @@ CheckFaint_PlayerThenEnemy: ; 3c23c
and a
jr nz, .BattleIsOver
.BattleContinues
.BattleContinues:
and a
ret
.BattleIsOver
.BattleIsOver:
scf
ret
; 3c25c
@ -335,7 +335,7 @@ CheckFaint_EnemyThenPlayer: ; 3c25c
and a
jr nz, .BattleIsOver
.EnemyNotFainted
.EnemyNotFainted:
call HasPlayerFainted
jr nz, .BattleContinues
call HandlePlayerMonFaint
@ -343,11 +343,11 @@ CheckFaint_EnemyThenPlayer: ; 3c25c
and a
jr nz, .BattleIsOver
.BattleContinues
.BattleContinues:
and a
ret
.BattleIsOver
.BattleIsOver:
scf
ret
; 3c27c
@ -816,11 +816,11 @@ TryEnemyFlee: ; 3c543
call IsInArray
jr c, .Flee
.Stay
.Stay:
and a
ret
.Flee
.Flee:
scf
ret
; 3c59a
@ -1218,7 +1218,7 @@ HandlePerishSong: ; 3c801
call SetEnemyTurn
jp .do_it
.EnemyFirst
.EnemyFirst:
call SetEnemyTurn
call .do_it
call SetPlayerTurn
@ -1287,7 +1287,7 @@ HandleWrap: ; 3c874
call SetEnemyTurn
jp .do_it
.EnemyFirst
.EnemyFirst:
call SetEnemyTurn
call .do_it
call SetPlayerTurn
@ -1359,7 +1359,7 @@ HandleLeftovers: ; 3c8eb
call SetEnemyTurn
jp .do_it
.DoEnemyFirst
.DoEnemyFirst:
call SetEnemyTurn
call .do_it
call SetPlayerTurn
@ -1409,7 +1409,7 @@ HandleMysteryberry: ; 3c93c
call SetEnemyTurn
jp .do_it
.DoEnemyFirst
.DoEnemyFirst:
call SetEnemyTurn
call .do_it
call SetPlayerTurn
@ -1667,7 +1667,7 @@ HandleSafeguard: ; 3cafb
.player1
call .CheckEnemy
.CheckPlayer
.CheckPlayer:
ld a, [PlayerScreens]
bit SCREENS_SAFEGUARD, a
ret z
@ -1679,7 +1679,7 @@ HandleSafeguard: ; 3cafb
xor a
jr .print
.CheckEnemy
.CheckEnemy:
ld a, [EnemyScreens]
bit SCREENS_SAFEGUARD, a
ret z
@ -1703,10 +1703,10 @@ HandleScreens: ; 3cb36
call .CheckPlayer
jr .CheckEnemy
.Both
.Both:
call .CheckEnemy
.CheckPlayer
.CheckPlayer:
call SetPlayerTurn
ld de, .Your
call .Copy
@ -1714,28 +1714,28 @@ HandleScreens: ; 3cb36
ld de, PlayerLightScreenCount
jr .TickScreens
.CheckEnemy
.CheckEnemy:
call SetEnemyTurn
ld de, .Enemy
call .Copy
ld hl, EnemyScreens
ld de, EnemyLightScreenCount
.TickScreens
.TickScreens:
bit SCREENS_LIGHT_SCREEN, [hl]
call nz, .LightScreenTick
bit SCREENS_REFLECT, [hl]
call nz, .ReflectTick
ret
.Copy
.Copy:
ld hl, StringBuffer1
jp CopyName2
; 3cb75
.Your
.Your:
db "Your@"
.Enemy
.Enemy:
db "Enemy@"
; 3cb80
@ -1797,7 +1797,7 @@ HandleWeather: ; 3cb9e
call .SandstormDamage
call SetPlayerTurn
.SandstormDamage
.SandstormDamage:
ld a, BATTLE_VARS_SUBSTATUS3
call GetBattleVar
bit SUBSTATUS_UNDERGROUND, a
@ -1844,7 +1844,7 @@ HandleWeather: ; 3cb9e
ld [Weather], a
ret
.PrintWeatherMessage
.PrintWeatherMessage:
ld a, [Weather]
dec a
ld c, a
@ -1857,11 +1857,11 @@ HandleWeather: ; 3cb9e
jp StdBattleTextBox
; 3cc2d
.WeatherMessages
.WeatherMessages:
dw BattleText_RainContinuesToFall
dw BattleText_TheSunlightIsStrong
dw BattleText_TheSandstormRages
.WeatherEndedMessages
.WeatherEndedMessages:
dw BattleText_TheRainStopped
dw BattleText_TheSunlightFaded
dw BattleText_TheSandstormSubsided
@ -2525,7 +2525,7 @@ WinTrainerBattle: ; 3cfa4
call ClearBGPalettes
ret
.GiveMoney
.GiveMoney:
ld a, [wAmuletCoin]
and a
call nz, .DoubleReward
@ -2578,7 +2578,7 @@ WinTrainerBattle: ; 3cfa4
ld l, a
jp StdBattleTextBox
.KeepItAll
.KeepItAll:
ld hl, GotMoneyForWinningText
jp StdBattleTextBox
; 3d081
@ -3143,7 +3143,7 @@ LostBattle: ; 3d38e
call SetPalettes
jr .end
.LostLinkBattle
.LostLinkBattle:
call UpdateEnemyMonInParty
call CheckEnemyTrainerDefeated
jr nz, .not_tied
@ -3202,13 +3202,13 @@ MonFaintedAnimation: ; 3d444
ld [wcfbe], a
ld b, 7
.OuterLoop
.OuterLoop:
push bc
push de
push hl
ld b, 6
.InnerLoop
.InnerLoop:
push bc
push hl
push de
@ -3246,7 +3246,7 @@ MonFaintedAnimation: ; 3d444
ret
; 3d488
.Spaces
.Spaces:
db " @"
; 3d490
@ -4655,7 +4655,7 @@ UseHeldStatusHealingItem: ; 3dde9
ret
; 3de44
.Statuses ; 3de44
.Statuses: ; 3de44
db HELD_HEAL_POISON, 1 << PSN
db HELD_HEAL_FREEZE, 1 << FRZ
db HELD_HEAL_BURN, 1 << BRN
@ -4779,7 +4779,7 @@ HandleStatBoostingHeldItems: ; 3de97
ret
; 3defc
.StatUpItems
.StatUpItems:
dbw HELD_ATTACK_UP, BattleCommand_AttackUp
dbw HELD_DEFENSE_UP, BattleCommand_DefenseUp
dbw HELD_SPEED_UP, BattleCommand_SpeedUp
@ -5347,18 +5347,18 @@ BattleMenuPKMN_Loop:
jr z, .Cancel
jr .loop
.PressedB
.PressedB:
call CheckMobileBattleError
jr c, .Cancel
jr BattleMenuPKMN_Loop
.Stats
.Stats:
call Battle_StatsScreen
call CheckMobileBattleError
jr c, .Cancel
jp BattleMenuPKMN_ReturnFromStats
.Cancel
.Cancel:
call ClearSprites
call ClearPalettes
call DelayFrame
@ -5984,9 +5984,9 @@ MoveInfoBox: ; 3e6c8
ret
; 3e74f
.Disabled
.Disabled:
db "Disabled!@"
.Type
.Type:
db "TYPE/@"
; 3e75f
@ -6291,7 +6291,7 @@ LoadEnemyMon: ; 3e8eb
jr .UpdateItem
.WildItem
.WildItem:
; In a wild battle, we pull from the item slots in BaseData
; Force Item1
@ -6321,7 +6321,7 @@ LoadEnemyMon: ; 3e8eb
ld a, [BaseItems+1]
.UpdateItem
.UpdateItem:
ld [EnemyMonItem], a
@ -6347,7 +6347,7 @@ LoadEnemyMon: ; 3e8eb
jp .Happiness
.InitDVs
.InitDVs:
; Trainer DVs
@ -6403,7 +6403,7 @@ LoadEnemyMon: ; 3e8eb
jr .UpdateDVs
.NotRoaming
.NotRoaming:
; Register a contains BattleType
; Forced shiny battle type
@ -6415,14 +6415,14 @@ LoadEnemyMon: ; 3e8eb
ld c, SPDSPCDV_SHINY ; $aa
jr .UpdateDVs
.GenerateDVs
.GenerateDVs:
; Generate new random DVs
call BattleRandom
ld b, a
call BattleRandom
ld c, a
.UpdateDVs
.UpdateDVs:
; Input DVs in register bc
ld hl, EnemyMonDVs
ld a, b
@ -6453,7 +6453,7 @@ LoadEnemyMon: ; 3e8eb
jr c, .GenerateDVs ; try again
.Magikarp
.Magikarp:
; Skimming this part recommended
ld a, [TempEnemyMonSpecies]
@ -6488,7 +6488,7 @@ LoadEnemyMon: ; 3e8eb
cp a, $40
jr nc, .GenerateDVs
.CheckMagikarpArea
.CheckMagikarpArea:
; The z checks are supposed to be nz
; Instead, all maps in GROUP_LAKE_OF_RAGE (mahogany area)
; and routes 20 and 44 are treated as Lake of Rage
@ -6516,7 +6516,7 @@ LoadEnemyMon: ; 3e8eb
; Finally done with DVs
.Happiness
.Happiness:
; Set happiness
ld a, BASE_HAPPINESS
ld [EnemyMonHappiness], a
@ -6543,7 +6543,7 @@ LoadEnemyMon: ; 3e8eb
bit SUBSTATUS_TRANSFORMED, a
jp nz, .Moves
.TreeMon
.TreeMon:
; If we're headbutting trees, some monsters enter battle asleep
call CheckSleepingTreeMon
ld a, SLP ; Asleep for 7 turns
@ -6551,7 +6551,7 @@ LoadEnemyMon: ; 3e8eb
; Otherwise, no status
xor a
.UpdateStatus
.UpdateStatus:
ld hl, EnemyMonStatus
ld [hli], a
@ -6581,7 +6581,7 @@ LoadEnemyMon: ; 3e8eb
ld [EnemyMonHP + 1], a
jr .Moves
.InitRoamHP
.InitRoamHP:
; HP only uses the lo byte in the RoamMon struct since
; Raikou/Entei/Suicune will have < 256 hp at level 40
ld a, [EnemyMonHP + 1]
@ -6589,7 +6589,7 @@ LoadEnemyMon: ; 3e8eb
jr .Moves
.OpponentParty
.OpponentParty:
; Get HP from the party struct
ld hl, (OTPartyMon1HP + 1)
ld a, [CurPartyMon]
@ -6609,7 +6609,7 @@ LoadEnemyMon: ; 3e8eb
ld [EnemyMonStatus], a
.Moves
.Moves:
ld hl, BaseType1
ld de, EnemyMonType1
ld a, [hli]
@ -6632,7 +6632,7 @@ LoadEnemyMon: ; 3e8eb
call CopyBytes
jr .PP
.WildMoves
.WildMoves:
; Clear EnemyMonMoves
xor a
ld h, d
@ -6646,7 +6646,7 @@ endr
; Fill moves based on level
predef FillMoves
.PP
.PP:
; Trainer battle?
ld a, [wBattleMode]
cp a, TRAINER_BATTLE
@ -6658,7 +6658,7 @@ endr
predef FillPP
jr .Finish
.TrainerPP
.TrainerPP:
; Copy PP from the party struct
ld hl, OTPartyMon1PP
ld a, [CurPartyMon]
@ -6667,7 +6667,7 @@ endr
ld bc, NUM_MOVES
call CopyBytes
.Finish
.Finish:
; Only the first five base stats are copied..
ld hl, BaseStats
ld de, EnemyMonBaseStats
@ -6737,18 +6737,18 @@ CheckSleepingTreeMon: ; 3eb38
jr z, .Check
ld hl, .Nite
.Check
.Check:
ld a, [TempEnemyMonSpecies]
ld de, 1 ; length of species id
call IsInArray
; If it's a match, the opponent is asleep
ret c
.NotSleeping
.NotSleeping:
and a
ret
.Nite
.Nite:
db CATERPIE
db METAPOD
db BUTTERFREE
@ -6762,7 +6762,7 @@ CheckSleepingTreeMon: ; 3eb38
db AIPOM
db -1 ; end
.Day
.Day:
db VENONAT
db HOOTHOOT
db NOCTOWL
@ -6770,7 +6770,7 @@ CheckSleepingTreeMon: ; 3eb38
db HERACROSS
db -1 ; end
.Morn
.Morn:
db VENONAT
db HOOTHOOT
db NOCTOWL
@ -6827,22 +6827,22 @@ CheckUnownLetter: ; 3eb75
and a
ret
.LetterSets
.LetterSets:
dw .Set1
dw .Set2
dw .Set3
dw .Set4
.Set1
.Set1:
; A B C D E F G H I J K
db 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, $ff
.Set2
.Set2:
; L M N O P Q R
db 12, 13, 14, 15, 16, 17, 18, $ff
.Set3
.Set3:
; S T U V W
db 19, 20, 21, 22, 23, $ff
.Set4
.Set4:
; X Y Z
db 24, 25, 26, $ff
@ -7124,7 +7124,7 @@ ApplyStatLevelMultiplier: ; 3ecb7
ret
; 3ed2b
.StatLevelMultipliers
.StatLevelMultipliers:
; /
db 25, 100 ; 25%
db 28, 100 ; 28%
@ -7186,7 +7186,7 @@ BadgeStatBoosts: ; 3ed45
ld hl, BattleMonAttack
ld c, 4
.CheckBadge
.CheckBadge:
ld a, b
srl b
call c, BoostStat
@ -7754,7 +7754,7 @@ GiveExperiencePoints: ; 3ee3b
jp ResetBattleParticipants
; 3f0d4
.EvenlyDivideExpAmongParticipants
.EvenlyDivideExpAmongParticipants:
; count number of battle participants
ld a, [wBattleParticipantsNotFainted]
ld b, a
@ -7878,7 +7878,7 @@ AnimateExpBar: ; 3f136
ld [hli], a
ld [hl], a
.NoOverflow
.NoOverflow:
ld d, MAX_LEVEL
callab CalcExpAtLevel
ld a, [hProduct + 1]
@ -7902,7 +7902,7 @@ AnimateExpBar: ; 3f136
ld a, d
ld [hld], a
.AlreadyAtMaxExp
.AlreadyAtMaxExp:
callab CalcLevel
ld a, d
pop bc
@ -7913,7 +7913,7 @@ AnimateExpBar: ; 3f136
ld a, e
ld d, a
.LoopLevels
.LoopLevels:
ld a, e
cp MAX_LEVEL
jr nc, .FinishExpBar
@ -7944,7 +7944,7 @@ AnimateExpBar: ; 3f136
ld b, $0
jr .LoopLevels
.FinishExpBar
.FinishExpBar:
push bc
ld b, d
ld de, TempMonExp + 2
@ -7964,7 +7964,7 @@ AnimateExpBar: ; 3f136
pop bc
ret
.PlayExpBarSound
.PlayExpBarSound:
push bc
call WaitSFX
ld de, SFX_EXP_BAR
@ -7974,7 +7974,7 @@ AnimateExpBar: ; 3f136
pop bc
ret
.LoopBarAnimation
.LoopBarAnimation:
ld d, 3
dec b
.anim_loop
@ -8119,7 +8119,7 @@ WithdrawPkmnText: ; 3f2f4
ld hl, .WithdrawPkmnText
jp BattleTextBox
.WithdrawPkmnText
.WithdrawPkmnText:
text_jump Text_BattleMonNickComma
start_asm
; Print text to withdraw Pkmn
@ -8523,7 +8523,7 @@ LoadTrainerOrWildMonPic: ; 3f54e
ld a, [TempWildMonSpecies]
ld [CurPartySpecies], a
.Trainer
.Trainer:
ld [TempEnemyMonSpecies], a
ret
; 3f55e
@ -8873,11 +8873,11 @@ DetermineMobileBattleResult: ; 3f77c
ret
; 3f7f7
.Win
.Win:
db "YOU WIN@"
.Lose
.Lose:
db "YOU LOSE@"
.Draw
.Draw:
db " DRAW@"
; 3f80f
@ -8892,7 +8892,7 @@ DetermineMobileBattleResult: ; 3f77c
ret
; 3f821
.Invalid
.Invalid:
db "INVALID BATTLE@"
; 3f830
@ -8980,7 +8980,7 @@ ReadAndPrintLinkBattleRecord: ; 3f85f
call PrintNum
jr .next
.PrintFormatString
.PrintFormatString:
ld de, .Format
call PlaceString
.next
@ -8997,7 +8997,7 @@ ReadAndPrintLinkBattleRecord: ; 3f85f
jr nz, .loop
ret
.PrintBattleRecord
.PrintBattleRecord:
hlcoord 1, 0
ld de, .Record
call PlaceString
@ -9035,7 +9035,7 @@ ReadAndPrintLinkBattleRecord: ; 3f85f
.quit
ret
.PrintZerosIfNoSaveFileExists
.PrintZerosIfNoSaveFileExists:
ld a, [wSavedAtLeastOnce]
and a
ret nz
@ -9045,18 +9045,18 @@ ReadAndPrintLinkBattleRecord: ; 3f85f
ret
; 3f938
.Scores
.Scores:
db " 0 0 0@"
; 3f947
.Format ; 3f947
.Format: ; 3f947
db " --- <LNBRK>"
db " - - -@"
.Record ; 3f964
.Record: ; 3f964
db "<PLAYER>'s RECORD@"
.Result ; 3f96e
.Result: ; 3f96e
db "RESULT WIN LOSE DRAW@"
.Total ; 3f983
.Total: ; 3f983
db "TOTAL WIN LOSE DRAW@"
; 3f998
@ -9472,12 +9472,12 @@ GetTrainerBackpic: ; 3fbff
callba GetKrisBackpic
ret
.Chris
.Chris:
; It's a boy.
ld b, BANK(ChrisBackpic)
ld hl, ChrisBackpic
.Decompress
.Decompress:
ld de, VTiles2 tile $31
ld c, $31
predef DecompressPredef
@ -9603,7 +9603,7 @@ BattleStartMessage: ; 3fc8b
ld hl, HookedPokemonAttackedText
jr .PlaceBattleStartText
.NotFishing
.NotFishing:
ld hl, PokemonFellFromTreeText
cp BATTLETYPE_TREE
jr z, .PlaceBattleStartText
@ -9612,7 +9612,7 @@ BattleStartMessage: ; 3fc8b
jr z, .PlaceBattleStartText
ld hl, WildPokemonAppearedText
.PlaceBattleStartText
.PlaceBattleStartText:
push hl
callba BattleStart_TrainerHuds
pop hl

View File

@ -58,7 +58,7 @@ DoMove: ; 3402c
ld de, BattleScriptBuffer
.GetMoveEffect
.GetMoveEffect:
ld a, BANK(MoveEffects)
call GetFarByte
inc hl
@ -74,7 +74,7 @@ DoMove: ; 3402c
ld a, h
ld [BattleScriptBufferLoc + 1], a
.ReadMoveEffectCommand
.ReadMoveEffectCommand:
; ld a, [BattleScriptBufferLoc++]
ld a, [BattleScriptBufferLoc]
@ -112,7 +112,7 @@ DoMove: ; 3402c
jr .ReadMoveEffectCommand
.DoMoveEffectCommand
.DoMoveEffectCommand:
jp [hl]
; 34084
@ -830,7 +830,7 @@ BattleCommand_CheckObedience: ; 343db
jp .EndDisobedience
.Nap
.Nap:
call BattleRandom
add a
swap a
@ -843,7 +843,7 @@ BattleCommand_CheckObedience: ; 343db
jr .Print
.DoNothing
.DoNothing:
call BattleRandom
and 3
@ -861,12 +861,12 @@ BattleCommand_CheckObedience: ; 343db
ld hl, IgnoredOrdersText
.Print
.Print:
call StdBattleTextBox
jp .EndDisobedience
.UseInstead
.UseInstead:
; Can't use another move if the monster only has one!
ld a, [BattleMonMoves + 1]
@ -884,7 +884,7 @@ BattleCommand_CheckObedience: ; 343db
ld b, 0
ld c, NUM_MOVES
.GetTotalPP
.GetTotalPP:
ld a, [hli]
and $3f ; exclude pp up
add b
@ -900,7 +900,7 @@ BattleCommand_CheckObedience: ; 343db
jr nz, .GetTotalPP
.CheckMovePP
.CheckMovePP:
ld hl, BattleMonPP
ld a, [CurMoveNum]
ld e, a
@ -927,7 +927,7 @@ BattleCommand_CheckObedience: ; 343db
push af
.RandomMove
.RandomMove:
call BattleRandom
and 3 ; TODO NUM_MOVES
@ -968,7 +968,7 @@ BattleCommand_CheckObedience: ; 343db
ld [CurMoveNum], a
.EndDisobedience
.EndDisobedience:
xor a
ld [LastPlayerMove], a
ld [LastEnemyCounterMove], a
@ -996,7 +996,7 @@ IgnoreSleepOnly: ; 3451f
and a
ret
.CheckSleep
.CheckSleep:
ld a, BATTLE_VARS_STATUS
call GetBattleVar
and SLP
@ -1191,7 +1191,7 @@ CheckMimicUsed: ; 3460b
call GetBattleVar
cp MIMIC
jr z, .mimic
;
;
ld b, 0
add hl, bc
ld a, [hl]
@ -1229,7 +1229,7 @@ BattleCommand_Critical: ; 34631
ld hl, BattleMonItem
ld a, [BattleMonSpecies]
.Item
.Item:
ld c, 0
cp CHANSEY
@ -1242,7 +1242,7 @@ BattleCommand_Critical: ; 34631
ld c, 2
jr .Tally
.Farfetchd
.Farfetchd:
cp FARFETCH_D
jr nz, .FocusEnergy
ld a, [hl]
@ -1253,7 +1253,7 @@ BattleCommand_Critical: ; 34631
ld c, 2
jr .Tally
.FocusEnergy
.FocusEnergy:
ld a, BATTLE_VARS_SUBSTATUS4
call GetBattleVar
bit SUBSTATUS_FOCUS_ENERGY, a
@ -1262,7 +1262,7 @@ BattleCommand_Critical: ; 34631
; +1 critical level
inc c
.CheckCritical
.CheckCritical:
ld a, BATTLE_VARS_MOVE_ANIM
call GetBattleVar
ld de, 1
@ -1276,7 +1276,7 @@ BattleCommand_Critical: ; 34631
inc c
inc c
.ScopeLens
.ScopeLens:
push bc
call GetUserItem
ld a, b
@ -1287,7 +1287,7 @@ BattleCommand_Critical: ; 34631
; +1 critical level
inc c
.Tally
.Tally:
ld hl, .Chances
ld b, 0
add hl, bc
@ -1298,9 +1298,9 @@ BattleCommand_Critical: ; 34631
ld [CriticalHit], a
ret
.Criticals
.Criticals:
db KARATE_CHOP, RAZOR_WIND, RAZOR_LEAF, CRABHAMMER, SLASH, AEROBLAST, CROSS_CHOP, $ff
.Chances
.Chances:
; 6.25% 12.1% 24.6% 33.2% 49.6% 49.6% 49.6%
db $11, $20, $40, $55, $80, $80, $80
; 0 1 2 3 4 5 6
@ -1424,13 +1424,13 @@ BattleCommand_Stab: ; 346d2
ld hl, TypeModifier
set 7, [hl]
.SkipStab
.SkipStab:
ld a, BATTLE_VARS_MOVE_TYPE
call GetBattleVar
ld b, a
ld hl, TypeMatchup
.TypesLoop
.TypesLoop:
ld a, [hli]
cp $ff
@ -1446,7 +1446,7 @@ BattleCommand_Stab: ; 346d2
jr .TypesLoop
.SkipForesightCheck
.SkipForesightCheck:
cp b
jr nz, .SkipType
ld a, [hl]
@ -1456,7 +1456,7 @@ BattleCommand_Stab: ; 346d2
jr z, .GotMatchup
jr .SkipType
.GotMatchup
.GotMatchup:
push hl
push bc
inc hl
@ -1470,7 +1470,7 @@ BattleCommand_Stab: ; 346d2
inc a
ld [AttackMissed], a
xor a
.NotImmune
.NotImmune:
ld [hMultiplier], a
add b
ld [TypeModifier], a
@ -1517,7 +1517,7 @@ BattleCommand_Stab: ; 346d2
pop bc
pop hl
.SkipType
.SkipType:
inc hl
inc hl
jr .TypesLoop
@ -1559,7 +1559,7 @@ CheckTypeMatchup: ; 347d3
ld a, 10 ; 1.0
ld [wTypeMatchup], a
ld hl, TypeMatchup
.TypesLoop
.TypesLoop:
ld a, [hli]
cp $ff
jr z, .End
@ -1571,7 +1571,7 @@ CheckTypeMatchup: ; 347d3
jr nz, .End
jr .TypesLoop
.Next
.Next:
cp d
jr nz, .Nope
ld a, [hli]
@ -1581,13 +1581,13 @@ CheckTypeMatchup: ; 347d3
jr z, .Yup
jr .Nope2
.Nope
.Nope:
inc hl
.Nope2
.Nope2:
inc hl
jr .TypesLoop
.Yup
.Yup:
xor a
ld [hDividend + 0], a
ld [hMultiplicand + 0], a
@ -1607,7 +1607,7 @@ CheckTypeMatchup: ; 347d3
ld [wTypeMatchup], a
jr .TypesLoop
.End
.End:
pop bc
pop de
pop hl
@ -1740,7 +1740,7 @@ BattleCommand_CheckHit: ; 34d32
ld a, [wEnemyMoveStruct + MOVE_ACC]
ld b, a
.BrightPowder
.BrightPowder:
push bc
call GetOpponentItem
ld a, b
@ -1765,11 +1765,11 @@ BattleCommand_CheckHit: ; 34d32
cp b
jr nc, .Miss
.Hit
.Hit:
ret
.Miss
.Miss:
; Keep the damage value intact if we're using (Hi) Jump Kick.
ld a, BATTLE_VARS_MOVE_EFFECT
call GetBattleVar
@ -1777,13 +1777,13 @@ BattleCommand_CheckHit: ; 34d32
jr z, .Missed
call ResetDamage
.Missed
.Missed:
ld a, 1
ld [AttackMissed], a
ret
.DreamEater
.DreamEater:
; Return z if we're trying to eat the dream of
; a monster that isn't sleeping.
ld a, BATTLE_VARS_MOVE_EFFECT
@ -1797,7 +1797,7 @@ BattleCommand_CheckHit: ; 34d32
ret
.Protect
.Protect:
; Return nz if the opponent is protected.
ld a, BATTLE_VARS_SUBSTATUS1_OPP
call GetBattleVar
@ -1819,7 +1819,7 @@ BattleCommand_CheckHit: ; 34d32
ret
.LockOn
.LockOn:
; Return nz if we are locked-on and aren't trying to use Earthquake,
; Fissure or Magnitude on a monster that is flying.
ld a, BATTLE_VARS_SUBSTATUS5_OPP
@ -1843,13 +1843,13 @@ BattleCommand_CheckHit: ; 34d32
cp MAGNITUDE
ret z
.LockedOn
.LockedOn:
ld a, 1
and a
ret
.DrainSub
.DrainSub:
; Return z if using an HP drain move on a substitute.
call CheckSubstituteOpp
jr z, .not_draining_sub
@ -1868,7 +1868,7 @@ BattleCommand_CheckHit: ; 34d32
ret
.FlyDigMoves
.FlyDigMoves:
; Check for moves that can hit underground/flying opponents.
; Return z if the current move can hit the opponent.
@ -1892,7 +1892,7 @@ BattleCommand_CheckHit: ; 34d32
cp TWISTER
ret
.DigMoves
.DigMoves:
ld a, BATTLE_VARS_MOVE_ANIM
call GetBattleVar
@ -1904,7 +1904,7 @@ BattleCommand_CheckHit: ; 34d32
ret
.ThunderRain
.ThunderRain:
; Return z if the current move always hits in rain, and it is raining.
ld a, BATTLE_VARS_MOVE_EFFECT
call GetBattleVar
@ -1916,14 +1916,14 @@ BattleCommand_CheckHit: ; 34d32
ret
.XAccuracy
.XAccuracy:
ld a, BATTLE_VARS_SUBSTATUS4
call GetBattleVar
bit SUBSTATUS_X_ACCURACY, a
ret
.StatModifiers
.StatModifiers:
ld a, [hBattleTurn]
and a
@ -2015,7 +2015,7 @@ BattleCommand_CheckHit: ; 34d32
ld [hl], a
ret
.AccProb
.AccProb:
db 33, 100 ; 33% -6
db 36, 100 ; 36% -5
db 43, 100 ; 43% -4
@ -2112,7 +2112,7 @@ BattleCommand_LowerSub: ; 34eee
call BattleCommand_LowerSubNoAnim
jp BattleCommand_MoveDelay
.Rampage
.Rampage:
ld a, BATTLE_VARS_MOVE_EFFECT
call GetBattleVar
cp EFFECT_ROLLOUT
@ -2764,7 +2764,7 @@ DittoMetalPowder: ; 352b1
jr nz, .Ditto
ld a, [TempEnemyMonSpecies]
.Ditto
.Ditto:
cp DITTO
ret nz
@ -3048,7 +3048,7 @@ SpeciesItemBoost: ; 353d1
ld a, [hl]
jr z, .CompareSpecies
ld a, [TempEnemyMonSpecies]
.CompareSpecies
.CompareSpecies:
pop hl
cp b
@ -3056,7 +3056,7 @@ SpeciesItemBoost: ; 353d1
cp c
ret nz
.GetItemHeldEffect
.GetItemHeldEffect:
push hl
call GetUserItem
ld a, [hl]
@ -3110,7 +3110,7 @@ EnemyAttackDamage: ; 353f6
ld hl, EnemyStats
jr .thickclub
.Special
.Special:
ld hl, BattleMonSpclDef
ld a, [hli]
ld b, a
@ -3517,7 +3517,7 @@ BattleCommand_DamageCalc: ; 35612
ld hl, TypeBoostItems
.NextItem
.NextItem:
ld a, [hli]
cp $ff
jr z, .DoneItem
@ -3545,7 +3545,7 @@ BattleCommand_DamageCalc: ; 35612
ld [hDivisor], a
ld b, 4
call Divide
.DoneItem
.DoneItem:
; Critical hits
call .CriticalMultiplier
@ -3609,7 +3609,7 @@ BattleCommand_DamageCalc: ; 35612
cp 998 % $100
jr c, .dont_cap_3
.Cap
.Cap:
ld a, 997 / $100
ld [hli], a
ld a, 997 % $100
@ -3631,7 +3631,7 @@ BattleCommand_DamageCalc: ; 35612
ret
.CriticalMultiplier
.CriticalMultiplier:
ld a, [CriticalHit]
and a
ret z
@ -3837,7 +3837,7 @@ BattleCommand_ConstantDamage: ; 35726
ld [hl], 1
ret
.FlailPower
.FlailPower:
; px, bp
db 1, 200
db 4, 150
@ -4070,7 +4070,7 @@ BattleCommand_PainSplit: ; 35926
ld hl, SharedPainText
jp StdBattleTextBox
.PlayerShareHP
.PlayerShareHP:
ld a, [hld]
ld [Buffer1], a
ld a, [hld]
@ -4127,7 +4127,7 @@ endr
; 359cd
.ButItFailed
.ButItFailed:
jp PrintDidntAffect2
; 359d0
@ -5807,7 +5807,7 @@ BattleCommand_StatDown: ; 362e3
jr z, .GetStatLevel
ld hl, PlayerStatLevels
.GetStatLevel
.GetStatLevel:
; Attempt to lower the stat.
ld a, [LoweredStat]
and $f
@ -5826,7 +5826,7 @@ BattleCommand_StatDown: ; 362e3
jr nz, .ComputerMiss
inc b
.ComputerMiss
.ComputerMiss:
; Computer opponents have a 1/4 chance of failing.
ld a, [hBattleTurn]
and a
@ -5855,7 +5855,7 @@ BattleCommand_StatDown: ; 362e3
cp $40
jr c, .Failed
.DidntMiss
.DidntMiss:
call CheckSubstituteOpp
jr nz, .Failed
@ -5889,27 +5889,27 @@ BattleCommand_StatDown: ; 362e3
pop hl
jr z, .CouldntLower
.Hit
.Hit:
xor a
ld [FailedMessage], a
ret
.CouldntLower
.CouldntLower:
inc [hl]
.CantLower
.CantLower:
ld a, 3
ld [FailedMessage], a
ld a, 1
ld [AttackMissed], a
ret
.Failed
.Failed:
ld a, 1
ld [FailedMessage], a
ld [AttackMissed], a
ret
.Mist
.Mist:
ld a, 2
ld [FailedMessage], a
ld a, 1
@ -6046,7 +6046,7 @@ TryLowerStat: ; 3641a
call BattleCommand_SwitchTurn
jr .end
.Player
.Player:
call BattleCommand_SwitchTurn
call CalcEnemyStats
call BattleCommand_SwitchTurn
@ -6106,16 +6106,16 @@ BattleCommand_StatDownFailText: ; 3646a
GetStatName: ; 3648f
ld hl, .names
ld c, "@"
.CheckName
.CheckName:
dec b
jr z, .Copy
.GetName
.GetName:
ld a, [hli]
cp c
jr z, .CheckName
jr .GetName
.Copy
.Copy:
ld de, StringBuffer2
ld bc, StringBuffer3 - StringBuffer2
jp CopyBytes
@ -6301,7 +6301,7 @@ BattleCommand_RaiseSubNoAnim: ; 365af
and a
jr z, .PlayerTurn
ld hl, GetMonFrontpic
.PlayerTurn
.PlayerTurn:
xor a
ld [hBGMapMode], a
call CallBattleCore
@ -6316,7 +6316,7 @@ BattleCommand_LowerSubNoAnim: ; 365c3
and a
jr z, .PlayerTurn
ld hl, DropEnemySub
.PlayerTurn
.PlayerTurn:
xor a
ld [hBGMapMode], a
call CallBattleCore
@ -7353,7 +7353,7 @@ BattleCommand_Charge: ; 36b4d
jp z, SkipToBattleCommand
jp EndMoveEffect
.UsedText
.UsedText:
text_jump UnknownText_0x1c0d0e ; "[USER]"
start_asm
ld a, BATTLE_VARS_MOVE_ANIM
@ -7384,32 +7384,32 @@ BattleCommand_Charge: ; 36b4d
.done
ret
.RazorWind
.RazorWind:
; 'made a whirlwind!'
text_jump UnknownText_0x1c0d12
db "@"
.Solarbeam
.Solarbeam:
; 'took in sunlight!'
text_jump UnknownText_0x1c0d26
db "@"
.SkullBash
.SkullBash:
; 'lowered its head!'
text_jump UnknownText_0x1c0d3a
db "@"
.SkyAttack
.SkyAttack:
; 'is glowing!'
text_jump UnknownText_0x1c0d4e
db "@"
.Fly
.Fly:
; 'flew up high!'
text_jump UnknownText_0x1c0d5c
db "@"
.Dig
.Dig:
; 'dug a hole!'
text_jump UnknownText_0x1c0d6c
db "@"
@ -7471,7 +7471,7 @@ endr
ld l, a
jp StdBattleTextBox
.Traps
.Traps:
dbw BIND, UsedBindText ; 'used BIND on'
dbw WRAP, WrappedByText ; 'was WRAPPED by'
dbw FIRE_SPIN, FireSpinTrapText ; 'was trapped!'
@ -8311,7 +8311,7 @@ BattleCommand_ResetStats: ; 3710e
ld hl, EliminatedStatsText
jp StdBattleTextBox
.Fill
.Fill:
ld b, PlayerStatLevelsEnd - PlayerStatLevels
.next
ld [hli], a
@ -8492,7 +8492,7 @@ BattleCommand_Screen: ; 372fc
ld hl, LightScreenEffectText
jr .good
.Reflect
.Reflect:
bit SCREENS_REFLECT, [hl]
jr nz, .failed
set SCREENS_REFLECT, [hl]
@ -8993,7 +8993,7 @@ BattleCommand_GetMagnitude: ; 37991
pop bc
ret
.Magnitudes
.Magnitudes:
; /255, BP, magnitude
db 13, 10, 4
db 38, 30, 5
@ -9053,7 +9053,7 @@ BattleCommand_BatonPass: ; 379c9
ret
.Enemy
.Enemy:
; Wildmons don't have anything to switch to
ld a, [wBattleMode]
@ -9368,7 +9368,7 @@ BattleCommand_TimeBasedHealContinue: ; 37b7e
jr z, .Weather
dec c ; double
.Weather
.Weather:
ld a, [Weather]
and a
jr z, .Heal
@ -9381,7 +9381,7 @@ BattleCommand_TimeBasedHealContinue: ; 37b7e
dec c
dec c
.Heal
.Heal:
ld b, 0
ld hl, .Multipliers
add hl, bc
@ -9405,14 +9405,14 @@ BattleCommand_TimeBasedHealContinue: ; 37b7e
ld hl, RegainedHealthText
jp StdBattleTextBox
.Full
.Full:
call AnimateFailedMove
; 'hp is full!'
ld hl, HPIsFullText
jp StdBattleTextBox
.Multipliers
.Multipliers:
dw GetEighthMaxHP
dw GetQuarterMaxHP
dw GetHalfMaxHP
@ -9691,13 +9691,13 @@ BattleCommand_FutureSight: ; 37d34
ld a, BATTLE_VARS_LAST_MOVE
call GetBattleVarAddr
ld [hl], b
.AlreadyChargingFutureSight
.AlreadyChargingFutureSight:
ld hl, wPlayerFutureSightCount
ld a, [hBattleTurn]
and a
jr z, .GotFutureSightCount
ld hl, wEnemyFutureSightCount
.GotFutureSightCount
.GotFutureSightCount:
ld a, [hl]
and a
jr nz, .failed
@ -9713,7 +9713,7 @@ BattleCommand_FutureSight: ; 37d34
and a
jr z, .StoreDamage
ld de, wEnemyFutureSightDamage
.StoreDamage
.StoreDamage:
ld hl, CurDamage
ld a, [hl]
ld [de], a

View File

@ -14,7 +14,7 @@ BattleCommand_Metronome: ; 37418
.asm_3742b
call LoadMoveAnim
.GetMove
.GetMove:
call BattleRandom
; No invalid moves.

View File

@ -85,7 +85,7 @@ BattleCommand_Present: ; 37874
.do_animation
jp EndMoveEffect
.PresentPower
.PresentPower:
db 40 percent, 40
db 70 percent + 1, 80
db 80 percent, 120

View File

@ -58,7 +58,7 @@ DoWeatherModifiers: ; fbda4
ld a, [wd265] ; move type
ld c, a
.CheckWeatherType
.CheckWeatherType:
ld a, [de]
inc de
cp $ff
@ -71,7 +71,7 @@ DoWeatherModifiers: ; fbda4
cp c
jr z, .ApplyModifier
.NextWeatherType
.NextWeatherType:
rept 2
inc de
endr
@ -85,7 +85,7 @@ endr
call GetBattleVar
ld c, a
.CheckWeatherMove
.CheckWeatherMove:
ld a, [de]
inc de
cp $ff
@ -98,13 +98,13 @@ endr
cp c
jr z, .ApplyModifier
.NextWeatherMove
.NextWeatherMove:
rept 2
inc de
endr
jr .CheckWeatherMove
.ApplyModifier
.ApplyModifier:
xor a
ld [hMultiplicand + 0], a
ld hl, CurDamage
@ -138,7 +138,7 @@ endr
ld bc, 1
.Update
.Update:
ld a, b
ld [CurDamage], a
ld a, c
@ -147,14 +147,14 @@ endr
.done
ret
.WeatherTypeModifiers
.WeatherTypeModifiers:
db WEATHER_RAIN, WATER, 15
db WEATHER_RAIN, FIRE, 05
db WEATHER_SUN, FIRE, 15
db WEATHER_SUN, WATER, 05
db $ff
.WeatherMoveModifiers
.WeatherMoveModifiers:
db WEATHER_RAIN, EFFECT_SOLARBEAM, 05
db $ff
; fbe24
@ -183,7 +183,7 @@ DoBadgeTypeBoosts: ; fbe24
ld a, [JohtoBadges]
ld c, a
.CheckBadge
.CheckBadge:
ld a, [hl]
cp $ff
jr z, .done
@ -196,11 +196,11 @@ DoBadgeTypeBoosts: ; fbe24
cp [hl]
jr z, .ApplyBoost
.NextBadge
.NextBadge:
inc hl
jr .CheckBadge
.ApplyBoost
.ApplyBoost:
ld a, [CurDamage]
ld h, a
ld d, a
@ -226,7 +226,7 @@ DoBadgeTypeBoosts: ; fbe24
ld hl, $ffff
.Update
.Update:
ld a, h
ld [CurDamage], a
ld a, l
@ -237,7 +237,7 @@ DoBadgeTypeBoosts: ; fbe24
pop de
ret
.BadgeTypes
.BadgeTypes:
db FLYING ; zephyrbadge
db BUG ; hivebadge
db NORMAL ; plainbadge

File diff suppressed because it is too large Load Diff

View File

@ -12,7 +12,7 @@ DoBattleAnimFrame: ; ccfbe
jp [hl]
; ccfce
.Jumptable
.Jumptable:
dw BattleAnimFunction_00 ; 00
dw BattleAnimFunction_01 ; 01
dw BattleAnimFunction_02 ; 02
@ -425,7 +425,7 @@ GetBallAnimPal: ; cd249 (33:5249)
ld e, a
pop af
ld [rSVBK], a
.IsInArray
.IsInArray:
ld a, [hli]
cp -1
jr z, .load
@ -634,7 +634,7 @@ BattleAnimFunction_08: ; cd306 (33:5306)
call .SetCoords
ret
.SetCoords
.SetCoords:
ld hl, BATTLEANIMSTRUCT_0B
add hl, bc
ld a, [hl]
@ -4100,7 +4100,7 @@ BattleAnim_Sine: ; ce734 (33:6734)
inc a
ret
.ApplySineWave
.ApplySineWave:
ld e, a
ld a, d
ld d, 0

File diff suppressed because it is too large Load Diff

View File

@ -82,10 +82,10 @@ UsedMoveText_CheckObedience: ; 105e10
ret
; 105e1a
.UsedInsteadText
.UsedInsteadText:
text_jump _UsedInsteadText
start_asm
.GetMoveNameText
.GetMoveNameText:
ld hl, MoveNameText
ret
; 105e23

View File

@ -172,7 +172,7 @@ const_value = 1
const HAPPINESS_REVIVALHERB ; 11
const HAPPINESS_MASSAGE ; 12
const HAPPINESS_GAINLEVELATHOME ; 13
const_def
const LINK_NULL

View File

@ -1,6 +1,6 @@
const_def
const OAKS_POKEMON_TALK ; $00
const POKEDEX_SHOW ; $01
const POKEDEX_SHOW ; $01
const POKEMON_MUSIC ; $02
const LUCKY_CHANNEL ; $03
const BUENAS_PASSWORD ; $04

View File

@ -7,7 +7,7 @@ CHRIS EQU __enum__
const PHONECONTACT_BILL
const PHONECONTACT_ELM
const PHONECONTACT_BUENA
KRIS EQU __enum__
trainerclass FALKNER ; 1

View File

@ -3,19 +3,19 @@ Function_LoadOpponentTrainerAndPokemons: ; 1f8000
push af
ld a, BANK(BT_OTTrainer)
ld [rSVBK], a
; Fill BT_OTTrainer with zeros
xor a
ld hl, BT_OTTrainer
ld bc, BT_OTTrainerEnd - BT_OTTrainer
call ByteFill
; Write $ff into the Item-Slots
ld a, $ff
ld [BT_OTPkmn1Item], a
ld [BT_OTPkmn2Item], a
ld [BT_OTPkmn3Item], a
; Set BT_OTTrainer as start address to write the following data to
ld de, BT_OTTrainer
@ -97,7 +97,7 @@ Function_LoadRandomBattleTowerPkmn: ; 1f8081
ld a, BANK(sBTPkmnPrevTrainer1)
call GetSRAMBank
.FindARandomBattleTowerPkmn
.FindARandomBattleTowerPkmn:
; From Which LevelGroup are the Pkmn loaded
; a = 1..10
ld a, [wBTChoiceOfLvlGroup] ; [$d800]

View File

@ -91,10 +91,10 @@ GiveOddEgg: ; 1fb4b6
ret
; 1fb546
.Odd
.Odd:
db "ODD@@@@@@@@@"
.Probabilities
.Probabilities:
prob: MACRO
prob_total = prob_total + (\1)

View File

@ -1,7 +1,7 @@
; BulbasaurPokedexEntry: ; 0x181695
db "SEED@" ; species name
dw 204, 150 ; height, width
db "While it is young,"
next "it uses the"
next "nutrients that are"

View File

@ -1,7 +1,7 @@
; IvysaurPokedexEntry: ; 0x181702
db "SEED@" ; species name
dw 303, 290 ; height, width
db "The bulb on its"
next "back grows as it"
next "absorbs nutrients."

View File

@ -1,7 +1,7 @@
; VenusaurPokedexEntry: ; 0x181773
db "SEED@" ; species name
dw 607, 2210 ; height, width
db "As it warms it-"
next "self and absorbs"
next "the sunlight, its"

View File

@ -1,7 +1,7 @@
; CharmanderPokedexEntry: ; 0x1817db
db "LIZARD@" ; species name
dw 200, 190 ; height, width
db "If it's healthy,"
next "the flame on the"
next "tip of its tail"

View File

@ -1,7 +1,7 @@
; CharmeleonPokedexEntry: ; 0x18184a
db "FLAME@" ; species name
dw 307, 420 ; height, width
db "If it becomes"
next "agitated during"
next "battle, it spouts"

View File

@ -1,7 +1,7 @@
; CharizardPokedexEntry: ; 0x1818b3
db "FLAME@" ; species name
dw 507, 2000 ; height, width
db "It uses its wings"
next "to fly high. The"
next "temperature of its"

View File

@ -1,7 +1,7 @@
; SquirtlePokedexEntry: ; 0x181926
db "TINYTURTLE@" ; species name
dw 108, 200 ; height, width
db "When it feels"
next "threatened, it"
next "draws its legs"

View File

@ -1,7 +1,7 @@
; WartortlePokedexEntry: ; 0x181993
db "TURTLE@" ; species name
dw 303, 500 ; height, width
db "Its long, furry"
next "tail is a symbol"
next "of longevity,"

View File

@ -1,7 +1,7 @@
; BlastoisePokedexEntry: ; 0x1819f9
db "SHELLFISH@" ; species name
dw 503, 1890 ; height, width
db "It firmly plants"
next "its feet on the"
next "ground before"

View File

@ -1,7 +1,7 @@
; CaterpiePokedexEntry: ; 0x181a60
db "WORM@" ; species name
dw 100, 60 ; height, width
db "It crawls into"
next "foliage where it"
next "camouflages itself"

View File

@ -1,7 +1,7 @@
; MetapodPokedexEntry: ; 0x181ace
db "COCOON@" ; species name
dw 204, 220 ; height, width
db "This is its pre-"
next "evolved form. At"
next "this stage, it can"

View File

@ -1,7 +1,7 @@
; ButterfreePokedexEntry: ; 0x181b45
db "BUTTERFLY@" ; species name
dw 307, 710 ; height, width
db "It flits from"
next "flower to flower,"
next "collecting honey."

View File

@ -1,7 +1,7 @@
; WeedlePokedexEntry: ; 0x181bb4
db "HAIRY BUG@" ; species name
dw 100, 70 ; height, width
db "The barb on top of"
next "its head secretes"
next "a strong poison."

View File

@ -1,7 +1,7 @@
; KakunaPokedexEntry: ; 0x181c23
db "COCOON@" ; species name
dw 200, 220 ; height, width
db "Nearly incapable"
next "of movement, it"
next "leans against"

View File

@ -1,7 +1,7 @@
; BeedrillPokedexEntry: ; 0x181c8a
db "POISON BEE@" ; species name
dw 303, 650 ; height, width
db "It uses sharp,"
next "poisonous stings"
next "to defeat prey,"

View File

@ -1,7 +1,7 @@
; PidgeyPokedexEntry: ; 0x181cfa
db "TINY BIRD@" ; species name
dw 100, 40 ; height, width
db "It rapidly flaps"
next "its wings in the"
next "grass, stirring up"

View File

@ -1,7 +1,7 @@
; PidgeottoPokedexEntry: ; 0x181d75
db "BIRD@" ; species name
dw 307, 660 ; height, width
db "It slowly flies in"
next "a circular pat-"
next "tern, all the"

View File

@ -1,7 +1,7 @@
; PidgeotPokedexEntry: ; 0x181dd7
db "BIRD@" ; species name
dw 411, 870 ; height, width
db "Its outstanding"
next "vision allows it"
next "to spot splashing"

View File

@ -1,7 +1,7 @@
; RattataPokedexEntry: ; 0x181e3d
db "RAT@" ; species name
dw 100, 80 ; height, width
db "This #MON's"
next "impressive vital-"
next "ity allows it to"

View File

@ -1,7 +1,7 @@
; RaticatePokedexEntry: ; 0x181ea3
db "RAT@" ; species name
dw 204, 410 ; height, width
db "The webs on its"
next "hind legs enable"
next "it to cross"

View File

@ -1,7 +1,7 @@
; SpearowPokedexEntry: ; 0x181f03
db "TINY BIRD@" ; species name
dw 100, 40 ; height, width
db "To protect its"
next "territory, it"
next "flies around"

View File

@ -1,7 +1,7 @@
; FearowPokedexEntry: ; 0x181f64
db "BEAK@" ; species name
dw 311, 840 ; height, width
db "It uses its long"
next "beak to attack. It"
next "has a surprisingly"

View File

@ -1,7 +1,7 @@
; EkansPokedexEntry: ; 0x181fd4
db "SNAKE@" ; species name
dw 607, 150 ; height, width
db "It flutters the"
next "tip of its tongue"
next "to seek out the"

View File

@ -1,7 +1,7 @@
; ArbokPokedexEntry: ; 0x18203d
db "COBRA@" ; species name
dw 1106, 1430 ; height, width
db "To intimidate"
next "foes, it spreads"
next "its chest wide and"

View File

@ -1,7 +1,7 @@
; PikachuPokedexEntry: ; 0x1820ad
db "MOUSE@" ; species name
dw 104, 130 ; height, width
db "When it is anger-"
next "ed, it immediately"
next "discharges the"

View File

@ -1,7 +1,7 @@
; RaichuPokedexEntry: ; 0x182117
db "MOUSE@" ; species name
dw 207, 660 ; height, width
db "If its electric"
next "pouches run empty,"
next "it raises its tail"

View File

@ -1,7 +1,7 @@
; SandshrewPokedexEntry: ; 0x182184
db "MOUSE@" ; species name
dw 200, 260 ; height, width
db "It prefers dry,"
next "sandy places"
next "because it uses"

View File

@ -1,7 +1,7 @@
; SandslashPokedexEntry: ; 0x1821e7
db "MOUSE@" ; species name
dw 303, 650 ; height, width
db "Adept at climbing"
next "trees, it rolls"
next "into a spiny ball,"

View File

@ -1,7 +1,7 @@
; NidoranFPokedexEntry: ; 0x18224b
db "POISON PIN@" ; species name
dw 104, 150 ; height, width
db "Small and very"
next "docile, it pro-"
next "tects itself with"

View File

@ -1,7 +1,7 @@
; NidorinaPokedexEntry: ; 0x1822b6
db "POISON PIN@" ; species name
dw 207, 440 ; height, width
db "It has a docile"
next "nature. If it is"
next "threatened with"

View File

@ -1,7 +1,7 @@
; NidoqueenPokedexEntry: ; 0x18232e
db "DRILL@" ; species name
dw 403, 1320 ; height, width
db "The hard scales"
next "that cover its"
next "strong body serve"

View File

@ -1,7 +1,7 @@
; NidoranMPokedexEntry: ; 0x182392
db "POISON PIN@" ; species name
dw 108, 200 ; height, width
db "It constantly"
next "moves its large"
next "ears in many"

View File

@ -1,7 +1,7 @@
; NidorinoPokedexEntry: ; 0x1823fd
db "POISON PIN@" ; species name
dw 211, 430 ; height, width
db "It is easily"
next "agitated and uses"
next "its horn for"

View File

@ -1,7 +1,7 @@
; NidokingPokedexEntry: ; 0x182463
db "DRILL@" ; species name
dw 407, 1370 ; height, width
db "It uses its thick"
next "arms, legs and"
next "tail to attack"

View File

@ -1,7 +1,7 @@
; ClefairyPokedexEntry: ; 0x1824c8
db "FAIRY@" ; species name
dw 200, 170 ; height, width
db "Though rarely"
next "seen, it becomes"
next "easier to spot,"

View File

@ -1,7 +1,7 @@
; ClefablePokedexEntry: ; 0x182530
db "FAIRY@" ; species name
dw 403, 880 ; height, width
db "Said to live in"
next "quiet, remote"
next "mountains, this"

View File

@ -1,7 +1,7 @@
; VulpixPokedexEntry: ; 0x18259b
db "FOX@" ; species name
dw 200, 220 ; height, width
db "As its body grows"
next "larger, its six"
next "warm tails become"

View File

@ -1,7 +1,7 @@
; NinetalesPokedexEntry: ; 0x18260c
db "FOX@" ; species name
dw 307, 440 ; height, width
db "It is said to live"
next "a thousand years,"
next "and each of its"

View File

@ -1,7 +1,7 @@
; JigglypuffPokedexEntry: ; 0x182673
db "BALLOON@" ; species name
dw 108, 120 ; height, width
db "It rolls its cute"
next "eyes as it sings a"
next "soothing lullaby."

View File

@ -1,7 +1,7 @@
; WigglytuffPokedexEntry: ; 0x1826e9
db "BALLOON@" ; species name
dw 303, 260 ; height, width
db "The rich, fluffy"
next "fur that covers"
next "its body feels so"

View File

@ -1,7 +1,7 @@
; ZubatPokedexEntry: ; 0x18275d
db "BAT@" ; species name
dw 207, 170 ; height, width
db "During the day, it"
next "gathers with"
next "others and hangs"

View File

@ -1,7 +1,7 @@
; GolbatPokedexEntry: ; 0x1827c4
db "BAT@" ; species name
dw 503, 1210 ; height, width
db "When it plunges"
next "its fangs into its"
next "prey, it instantly"

View File

@ -1,7 +1,7 @@
; OddishPokedexEntry: ; 0x182836
db "WEED@" ; species name
dw 108, 120 ; height, width
db "During the day, it"
next "stays in the cold"
next "underground to"

View File

@ -1,7 +1,7 @@
; GloomPokedexEntry: ; 0x1828a6
db "WEED@" ; species name
dw 207, 190 ; height, width
db "The smell from its"
next "drool-like syrup"
next "and the pollen on"

View File

@ -1,7 +1,7 @@
; VileplumePokedexEntry: ; 0x182918
db "FLOWER@" ; species name
dw 311, 410 ; height, width
db "By shaking its big"
next "petals, it scat-"
next "ters toxic pollen"

View File

@ -1,7 +1,7 @@
; ParasPokedexEntry: ; 0x18297f
db "MUSHROOM@" ; species name
dw 100, 120 ; height, width
db "The tochukaso"
next "growing on this"
next "#MON's back"

View File

@ -1,7 +1,7 @@
; ParasectPokedexEntry: ; 0x1829e2
db "MUSHROOM@" ; species name
dw 303, 650 ; height, width
db "When nothing's"
next "left to extract"
next "from the bug, the"

View File

@ -1,7 +1,7 @@
; VenonatPokedexEntry: ; 0x182a53
db "INSECT@" ; species name
dw 303, 660 ; height, width
db "The small bugs it"
next "eats appear only"
next "at night, so it"

View File

@ -1,7 +1,7 @@
; VenomothPokedexEntry: ; 0x182abf
db "POISONMOTH@" ; species name
dw 411, 280 ; height, width
db "The scales it"
next "scatters will"
next "paralyze anyone"

View File

@ -1,7 +1,7 @@
; DiglettPokedexEntry: ; 0x182b30
db "MOLE@" ; species name
dw 8, 20 ; height, width
db "It digs under-"
next "ground and chews"
next "on tree roots,"

View File

@ -1,7 +1,7 @@
; DugtrioPokedexEntry: ; 0x182b9d
db "MOLE@" ; species name
dw 204, 730 ; height, width
db "These DIGLETT"
next "triplets dig over"
next "60 miles below sea"

View File

@ -1,7 +1,7 @@
; MeowthPokedexEntry: ; 0x182c08
db "SCRATCHCAT@" ; species name
dw 104, 90 ; height, width
db "It loves things"
next "that sparkle. When"
next "it sees a shiny"

View File

@ -1,7 +1,7 @@
; PersianPokedexEntry: ; 0x182c78
db "CLASSY CAT@" ; species name
dw 303, 710 ; height, width
db "Behind its lithe,"
next "elegant appearance"
next "lies a barbaric"

View File

@ -1,7 +1,7 @@
; PsyduckPokedexEntry: ; 0x182cee
db "DUCK@" ; species name
dw 207, 430 ; height, width
db "The only time it"
next "can use its psy-"
next "chic power is when"

View File

@ -1,7 +1,7 @@
; GolduckPokedexEntry: ; 0x182d55
db "DUCK@" ; species name
dw 507, 1690 ; height, width
db "It swims grace-"
next "fully along on the"
next "quiet, slow-moving"

View File

@ -1,7 +1,7 @@
; MankeyPokedexEntry: ; 0x182dbd
db "PIG MONKEY@" ; species name
dw 108, 620 ; height, width
db "It lives in groups"
next "in the treetops."
next "If it loses sight"

View File

@ -1,7 +1,7 @@
; PrimeapePokedexEntry: ; 0x182e39
db "PIG MONKEY@" ; species name
dw 303, 710 ; height, width
db "It will beat up"
next "anyone who makes"
next "it mad, even if it"

View File

@ -1,7 +1,7 @@
; GrowlithePokedexEntry: ; 0x182eaa
db "PUPPY@" ; species name
dw 204, 420 ; height, width
db "It controls a big"
next "territory. If it"
next "detects an unknown"

View File

@ -1,7 +1,7 @@
; ArcaninePokedexEntry: ; 0x182f1c
db "LEGENDARY@" ; species name
dw 603, 3420 ; height, width
db "An ancient picture"
next "scroll shows that"
next "people were"

View File

@ -1,7 +1,7 @@
; PoliwagPokedexEntry: ; 0x182f91
db "TADPOLE@" ; species name
dw 200, 270 ; height, width
db "The swirl on its"
next "belly is its"
next "insides showing"

View File

@ -1,7 +1,7 @@
; PoliwhirlPokedexEntry: ; 0x182ffd
db "TADPOLE@" ; species name
dw 303, 440 ; height, width
db "Though it is"
next "skilled at walk-"
next "ing, it prefers to"

View File

@ -1,7 +1,7 @@
; PoliwrathPokedexEntry: ; 0x183066
db "TADPOLE@" ; species name
dw 403, 1190 ; height, width
db "It can use its"
next "well-developed"
next "arms and legs to"

View File

@ -1,7 +1,7 @@
; AbraPokedexEntry: ; 0x1830d5
db "PSI@" ; species name
dw 211, 430 ; height, width
db "It hypnotizes"
next "itself so that it"
next "can teleport away"

View File

@ -1,7 +1,7 @@
; KadabraPokedexEntry: ; 0x18313c
db "PSI@" ; species name
dw 403, 1250 ; height, width
db "When it closes its"
next "eyes, twice as"
next "many alpha parti-"

View File

@ -1,7 +1,7 @@
; AlakazamPokedexEntry: ; 0x1b8000
db "PSI@" ; species name
dw 411, 1060 ; height, width
db "It has an IQ of"
next "5000. It calcu-"
next "lates many things"

View File

@ -1,7 +1,7 @@
; MachopPokedexEntry: ; 0x1b8065
db "SUPERPOWER@" ; species name
dw 207, 430 ; height, width
db "It trains by"
next "lifting rocks in"
next "the mountains. It"

View File

@ -1,7 +1,7 @@
; MachokePokedexEntry: ; 0x1b80cb
db "SUPERPOWER@" ; species name
dw 411, 1550 ; height, width
db "This tough #MON"
next "always stays in"
next "the zone. Its"

View File

@ -1,7 +1,7 @@
; MachampPokedexEntry: ; 0x1b8133
db "SUPERPOWER@" ; species name
dw 503, 2870 ; height, width
db "With four arms"
next "that react more"
next "quickly than it"

View File

@ -1,7 +1,7 @@
; BellsproutPokedexEntry: ; 0x1b81a1
db "FLOWER@" ; species name
dw 204, 90 ; height, width
db "If it notices"
next "anything that"
next "moves, it"

View File

@ -1,7 +1,7 @@
; WeepinbellPokedexEntry: ; 0x1b81fd
db "FLYCATCHER@" ; species name
dw 303, 140 ; height, width
db "When it's hungry,"
next "it swings its"
next "razor-sharp"

View File

@ -1,7 +1,7 @@
; VictreebelPokedexEntry: ; 0x1b826e
db "FLYCATCHER@" ; species name
dw 507, 340 ; height, width
db "Once ingested into"
next "this #MON's"
next "body, even the"

View File

@ -1,7 +1,7 @@
; TentacoolPokedexEntry: ; 0x1b82d1
db "JELLYFISH@" ; species name
dw 211, 1000 ; height, width
db "As it floats along"
next "on the waves, it"
next "uses its toxic"

View File

@ -1,7 +1,7 @@
; TentacruelPokedexEntry: ; 0x1b8337
db "JELLYFISH@" ; species name
dw 503, 1210 ; height, width
db "When its 80 feel-"
next "ers absorb water,"
next "it stretches to"

View File

@ -1,7 +1,7 @@
; GeodudePokedexEntry: ; 0x1b83a1
db "ROCK@" ; species name
dw 104, 440 ; height, width
db "Proud of their"
next "sturdy bodies,"
next "they bash against"

View File

@ -1,7 +1,7 @@
; GravelerPokedexEntry: ; 0x1b840c
db "ROCK@" ; species name
dw 303, 2320 ; height, width
db "It travels by rol-"
next "ling on mountain"
next "paths. If it gains"

View File

@ -1,7 +1,7 @@
; GolemPokedexEntry: ; 0x1b8481
db "MEGATON@" ; species name
dw 407, 6620 ; height, width
db "Its rock-like body"
next "is so durable,"
next "even high-powered"

View File

@ -1,7 +1,7 @@
; PonytaPokedexEntry: ; 0x1b84f2
db "FIRE HORSE@" ; species name
dw 303, 660 ; height, width
db "Training by"
next "jumping over grass"
next "that grows longer"

View File

@ -1,7 +1,7 @@
; RapidashPokedexEntry: ; 0x1b855e
db "FIRE HORSE@" ; species name
dw 507, 2090 ; height, width
db "It just loves to"
next "gallop. The faster"
next "it goes, the long-"

Some files were not shown because too many files have changed in this diff Show More