mirror of
https://github.com/pret/pokegold.git
synced 2026-10-02 20:06:40 -05:00
Harmonize engine/{battle, battle_anims, events, games} with pokecrystal
This commit is contained in:
@@ -21,7 +21,7 @@ DoBattleTransition:
|
||||
ld hl, hVBlank
|
||||
ld a, [hl]
|
||||
push af
|
||||
ld [hl], 1
|
||||
ld [hl], $1
|
||||
|
||||
.loop
|
||||
ld a, [wJumptableIndex]
|
||||
@@ -533,14 +533,14 @@ StartTrainerBattle_LoadPokeBallGraphics:
|
||||
hlcoord 2, 1
|
||||
ld de, .PokeBallTransition
|
||||
ld b, SCREEN_WIDTH - 4
|
||||
.loop
|
||||
.tile_loop
|
||||
push hl
|
||||
ld c, 2
|
||||
.loop2
|
||||
.row_loop
|
||||
push hl
|
||||
ld a, [de]
|
||||
inc de
|
||||
.loop3
|
||||
.col_loop
|
||||
; Loading is done bit by bit
|
||||
and a
|
||||
jr z, .done
|
||||
@@ -549,7 +549,7 @@ StartTrainerBattle_LoadPokeBallGraphics:
|
||||
ld [hl], BATTLETRANSITION_SQUARE
|
||||
.no_load
|
||||
inc hl
|
||||
jr .loop3
|
||||
jr .col_loop
|
||||
|
||||
.done
|
||||
pop hl
|
||||
@@ -558,7 +558,7 @@ StartTrainerBattle_LoadPokeBallGraphics:
|
||||
add hl, bc
|
||||
pop bc
|
||||
dec c
|
||||
jr nz, .loop2
|
||||
jr nz, .row_loop
|
||||
|
||||
pop hl
|
||||
push bc
|
||||
@@ -566,7 +566,7 @@ StartTrainerBattle_LoadPokeBallGraphics:
|
||||
add hl, bc
|
||||
pop bc
|
||||
dec b
|
||||
jr nz, .loop
|
||||
jr nz, .tile_loop
|
||||
|
||||
ldh a, [hCGB]
|
||||
and a
|
||||
@@ -594,10 +594,12 @@ StartTrainerBattle_LoadPokeBallGraphics:
|
||||
ld de, wBGPals2 palette PAL_BG_TEXT
|
||||
ld bc, 1 palettes
|
||||
call CopyBytes
|
||||
|
||||
hlcoord 0, 0, wAttrmap
|
||||
ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
|
||||
ld a, %00000111
|
||||
ld a, PAL_BG_TEXT
|
||||
call ByteFill
|
||||
|
||||
ld a, 1
|
||||
ldh [hCGBPalUpdate], a
|
||||
call DelayFrame
|
||||
|
||||
@@ -1910,14 +1910,14 @@ RestoreHP:
|
||||
ld b, a
|
||||
ld a, [hl]
|
||||
sbc b
|
||||
jr c, .asm_3ccd5
|
||||
jr c, .overflow
|
||||
ld a, b
|
||||
ld [hli], a
|
||||
ld [wBuffer6], a
|
||||
ld a, c
|
||||
ld [hl], a
|
||||
ld [wBuffer5], a
|
||||
.asm_3ccd5
|
||||
.overflow
|
||||
|
||||
call SwitchTurnCore
|
||||
call UpdateHPBarBattleHuds
|
||||
@@ -3198,7 +3198,7 @@ ScoreMonTypeMatchups:
|
||||
.loop5
|
||||
call BattleRandom
|
||||
and $7
|
||||
cp 6
|
||||
cp PARTY_LENGTH
|
||||
jr nc, .loop5
|
||||
ld b, a
|
||||
ld a, [wCurOTMon]
|
||||
@@ -5945,7 +5945,7 @@ LoadEnemyMon:
|
||||
jr z, .Happiness
|
||||
; 40% chance of not flooring
|
||||
call Random
|
||||
cp 40 percent - 2
|
||||
cp 39 percent + 1
|
||||
jr c, .Happiness
|
||||
; Try again if length < 1024 mm (i.e. if HIGH(length) < 3 feet)
|
||||
ld a, [wMagikarpLength]
|
||||
@@ -7710,7 +7710,7 @@ GetEnemyMonFrontpic_DoAnim:
|
||||
ldh a, [hBattleTurn]
|
||||
push af
|
||||
call SetEnemyTurn
|
||||
ld a, BANK(BattleAnimCmd_MinimizeOpp)
|
||||
ld a, BANK(BattleAnimCommands)
|
||||
rst FarCall
|
||||
pop af
|
||||
ldh [hBattleTurn], a
|
||||
@@ -7802,7 +7802,7 @@ InitEnemyTrainer:
|
||||
xor a
|
||||
ld [wOTPartyMon1Item], a
|
||||
|
||||
.ok:
|
||||
.ok
|
||||
ld de, vTiles2
|
||||
callfar GetTrainerPic
|
||||
xor a
|
||||
@@ -7928,14 +7928,14 @@ Unreferenced_Function3f41a:
|
||||
|
||||
ExitBattle:
|
||||
call IsLinkBattle
|
||||
jr nz, .handle_end_of_battle
|
||||
jr nz, .HandleEndOfBattle
|
||||
call ShowLinkBattleParticipantsAfterEnd
|
||||
jr .clean_up_battle_ram
|
||||
jr .CleanUpBattleRAM
|
||||
|
||||
.handle_end_of_battle
|
||||
.HandleEndOfBattle:
|
||||
ld a, [wBattleResult]
|
||||
and $f
|
||||
jr nz, .clean_up_battle_ram
|
||||
jr nz, .CleanUpBattleRAM
|
||||
; WIN
|
||||
call CheckPayDay
|
||||
xor a
|
||||
@@ -7943,7 +7943,7 @@ ExitBattle:
|
||||
predef EvolveAfterBattle
|
||||
farcall GivePokerusAndConvertBerries
|
||||
|
||||
.clean_up_battle_ram
|
||||
.CleanUpBattleRAM:
|
||||
call BattleEnd_HandleRoamMons
|
||||
xor a
|
||||
ld [wLowHealthAlarm], a
|
||||
@@ -8020,10 +8020,10 @@ ShowLinkBattleParticipantsAfterEnd:
|
||||
ld a, [wBattleResult]
|
||||
and $f
|
||||
cp LOSE
|
||||
ld de, .Win
|
||||
jr c, .store_result
|
||||
ld de, .Lose
|
||||
jr z, .store_result
|
||||
ld de, .YouWin
|
||||
jr c, .store_result ; WIN
|
||||
ld de, .YouLose
|
||||
jr z, .store_result ; LOSE
|
||||
; DRAW
|
||||
ld de, .Draw
|
||||
|
||||
@@ -8045,9 +8045,9 @@ ShowLinkBattleParticipantsAfterEnd:
|
||||
call ClearTilemap
|
||||
ret
|
||||
|
||||
.Win:
|
||||
.YouWin:
|
||||
db "YOU WIN@"
|
||||
.Lose:
|
||||
.YouLose:
|
||||
db "YOU LOSE@"
|
||||
.Draw:
|
||||
db " DRAW@"
|
||||
@@ -8358,6 +8358,7 @@ AddLastLinkBattleToLinkRecord:
|
||||
call .StoreResult
|
||||
call .FindOpponentAndAppendRecord
|
||||
ret
|
||||
|
||||
.StoreResult:
|
||||
ld a, [wBattleResult]
|
||||
and $f
|
||||
@@ -8574,6 +8575,9 @@ InitBackPic:
|
||||
ret
|
||||
|
||||
GetTrainerBackpic:
|
||||
; Load the player character's backpic (6x6) into VRAM starting from vTiles2 tile $31.
|
||||
|
||||
; Special exception for Dude.
|
||||
ld hl, ChrisBackpic
|
||||
ld a, [wBattleType]
|
||||
cp BATTLETYPE_TUTORIAL
|
||||
@@ -8582,7 +8586,7 @@ GetTrainerBackpic:
|
||||
|
||||
.ok:
|
||||
ld de, vTiles2 tile $31
|
||||
ld b, BANK(ChrisBackpic)
|
||||
ld b, BANK(ChrisBackpic) ; aka BANK(DudeBackpic)
|
||||
ld c, 7 * 7
|
||||
predef DecompressGet2bpp
|
||||
ret
|
||||
@@ -8590,7 +8594,7 @@ GetTrainerBackpic:
|
||||
CopyBackpic:
|
||||
ld a, BANK(sDecompressBuffer)
|
||||
call OpenSRAM
|
||||
ld hl, vTiles3
|
||||
ld hl, vTiles0
|
||||
ld de, sDecompressBuffer
|
||||
ldh a, [hROMBank]
|
||||
ld b, a
|
||||
@@ -8598,7 +8602,7 @@ CopyBackpic:
|
||||
call Request2bpp
|
||||
call CloseSRAM
|
||||
call .LoadTrainerBackpicAsOAM
|
||||
ld a, 7 * 7
|
||||
ld a, $31
|
||||
ldh [hGraphicStartTile], a
|
||||
hlcoord 2, 6
|
||||
lb bc, 6, 6
|
||||
|
||||
@@ -5045,10 +5045,9 @@ BattleCommand_ForceSwitch:
|
||||
call UpdateBattleMonInParty
|
||||
xor a
|
||||
ld [wNumHits], a
|
||||
inc a
|
||||
inc a ; TRUE
|
||||
ld [wForcedSwitch], a
|
||||
; set battle draw
|
||||
inc a
|
||||
inc a ; DRAW
|
||||
ld [wBattleResult], a
|
||||
ld a, [wPlayerMoveStructAnimation]
|
||||
jp .succeed
|
||||
@@ -5140,10 +5139,9 @@ BattleCommand_ForceSwitch:
|
||||
call UpdateBattleMonInParty
|
||||
xor a
|
||||
ld [wNumHits], a
|
||||
inc a
|
||||
inc a ; TRUE
|
||||
ld [wForcedSwitch], a
|
||||
; set battle draw
|
||||
inc a
|
||||
inc a ; DRAW
|
||||
ld [wBattleResult], a
|
||||
ld a, [wEnemyMoveStructAnimation]
|
||||
jr .succeed
|
||||
|
||||
@@ -4,7 +4,7 @@ LoadBattleMenu:
|
||||
jr Function24e78
|
||||
|
||||
SafariBattleMenu:
|
||||
; untranslated
|
||||
; untranslated
|
||||
ld hl, MenuHeader_0x24eae
|
||||
call LoadMenuHeader
|
||||
jr Function24e78
|
||||
|
||||
@@ -870,18 +870,18 @@ BattleAnimCmd_Transform:
|
||||
and a
|
||||
jr z, .player
|
||||
|
||||
ld a, [wTempBattleMonSpecies] ; TempBattleMonSpecies
|
||||
ld [wCurPartySpecies], a ; CurPartySpecies
|
||||
ld hl, wBattleMonDVs ; BattleMonDVs
|
||||
ld a, [wTempBattleMonSpecies]
|
||||
ld [wCurPartySpecies], a
|
||||
ld hl, wBattleMonDVs
|
||||
predef GetUnownLetter
|
||||
ld de, vTiles2 tile $00
|
||||
predef GetMonFrontpic
|
||||
jr .done
|
||||
|
||||
.player
|
||||
ld a, [wTempEnemyMonSpecies] ; TempEnemyMonSpecies
|
||||
ld [wCurPartySpecies], a ; CurPartySpecies
|
||||
ld hl, wEnemyMonDVs ; EnemyMonDVs
|
||||
ld a, [wTempEnemyMonSpecies]
|
||||
ld [wCurPartySpecies], a
|
||||
ld hl, wEnemyMonDVs
|
||||
predef GetUnownLetter
|
||||
ld de, vTiles2 tile $31
|
||||
predef GetMonBackpic
|
||||
@@ -892,7 +892,7 @@ BattleAnimCmd_Transform:
|
||||
ret
|
||||
|
||||
BattleAnimCmd_RaiseSub:
|
||||
xor a ; sScratch
|
||||
xor a ; BANK(sScratch)
|
||||
call OpenSRAM
|
||||
|
||||
GetSubstitutePic: ; used only for BANK(GetSubstitutePic)
|
||||
@@ -1050,7 +1050,7 @@ BattleAnimCmd_BeatUp:
|
||||
|
||||
.done
|
||||
pop af
|
||||
ld [wCurPartySpecies], a ; CurPartySpecies
|
||||
ld [wCurPartySpecies], a
|
||||
ld b, SCGB_BATTLE_COLORS
|
||||
call GetSGBLayout
|
||||
ret
|
||||
|
||||
@@ -539,7 +539,6 @@ _QueueBattleAnimation:
|
||||
callfar QueueBattleAnimation
|
||||
ret
|
||||
|
||||
|
||||
BattleBGEffect_26:
|
||||
call BattleBGEffects_AnonJumptable
|
||||
.anon_dw
|
||||
|
||||
@@ -87,7 +87,7 @@ HideHeadbuttTree:
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
|
||||
ld a, 5 ; grass block
|
||||
ld a, $05 ; grass block
|
||||
ld [hli], a
|
||||
ld [hld], a
|
||||
ld bc, SCREEN_WIDTH
|
||||
@@ -228,7 +228,7 @@ Cut_SpawnLeaf:
|
||||
ld [hl], FIELDMOVE_GRASS
|
||||
ld hl, SPRITEANIMSTRUCT_0E
|
||||
add hl, bc
|
||||
ld [hl], 4
|
||||
ld [hl], $4
|
||||
pop af
|
||||
ld hl, SPRITEANIMSTRUCT_0C
|
||||
add hl, bc
|
||||
@@ -418,7 +418,7 @@ FlyFunction_FrameTimer:
|
||||
dec [hl]
|
||||
cp $40
|
||||
ret c
|
||||
and 7
|
||||
and $7
|
||||
ret nz
|
||||
ld de, SFX_FLY
|
||||
call PlaySFX
|
||||
@@ -433,7 +433,7 @@ FlyFunction_FrameTimer:
|
||||
ld hl, wce65
|
||||
ld a, [hl]
|
||||
inc [hl]
|
||||
and 7
|
||||
and $7
|
||||
ret nz
|
||||
ld a, [hl]
|
||||
and (6 * 8) >> 1
|
||||
@@ -441,7 +441,7 @@ FlyFunction_FrameTimer:
|
||||
add 8 * 8 ; gives a number in [$40, $50, $60, $70]
|
||||
ld d, a
|
||||
ld e, 0
|
||||
ld a, SPRITE_ANIM_INDEX_FLY_LEAF ; fly land
|
||||
ld a, SPRITE_ANIM_INDEX_FLY_LEAF
|
||||
call InitSpriteAnimStruct
|
||||
ld hl, SPRITEANIMSTRUCT_TILE_ID
|
||||
add hl, bc
|
||||
|
||||
@@ -107,7 +107,7 @@ AnimateHallOfFame:
|
||||
|
||||
.done
|
||||
call HOF_AnimatePlayerPic
|
||||
ld a, 4
|
||||
ld a, $4
|
||||
ld [wMusicFade], a
|
||||
call RotateThreePalettesRight
|
||||
ld c, 8
|
||||
@@ -378,7 +378,7 @@ _HallOfFamePC:
|
||||
hlcoord 11, 2
|
||||
|
||||
.finish
|
||||
ld de, .EmptyString1
|
||||
ld de, .EmptyString
|
||||
call PlaceString
|
||||
call WaitBGMap
|
||||
ld b, SCGB_PLAYER_OR_MON_FRONTPIC_PALS
|
||||
@@ -389,10 +389,10 @@ _HallOfFamePC:
|
||||
and a
|
||||
ret
|
||||
|
||||
.EmptyString1:
|
||||
.EmptyString:
|
||||
db "@"
|
||||
|
||||
.EmptyString2:
|
||||
.UnreferencedEmptyString:
|
||||
db "@"
|
||||
|
||||
.HOFMaster:
|
||||
|
||||
@@ -342,7 +342,7 @@ SurfFunction:
|
||||
.TrySurf:
|
||||
ld de, ENGINE_FOGBADGE
|
||||
call CheckBadge
|
||||
jr c, .asm_c980
|
||||
jr c, .nofogbadge
|
||||
ld hl, wBikeFlags
|
||||
bit BIKEFLAGS_ALWAYS_ON_BIKE_F, [hl]
|
||||
jr nz, .cannotsurf
|
||||
@@ -359,7 +359,7 @@ SurfFunction:
|
||||
jr c, .cannotsurf
|
||||
ld a, $1
|
||||
ret
|
||||
.asm_c980
|
||||
.nofogbadge
|
||||
ld a, $80
|
||||
ret
|
||||
.alreadyfail
|
||||
|
||||
@@ -291,7 +291,7 @@ StoreSwarmMapIndices::
|
||||
ld [wSwarmMapGroup], a
|
||||
ld a, e
|
||||
ld [wSwarmMapNumber], a
|
||||
; fallthrough
|
||||
|
||||
SetSwarmFlag:
|
||||
ld hl, wDailyFlags1
|
||||
set DAILYFLAGS1_SWARM_F, [hl]
|
||||
@@ -332,7 +332,7 @@ CheckLuckyNumberShowFlag:
|
||||
|
||||
CountUnown:
|
||||
ld hl, wUnownDex
|
||||
ld b, $0
|
||||
ld b, 0
|
||||
.loop
|
||||
ld a, [hli]
|
||||
and a
|
||||
@@ -350,7 +350,7 @@ SelectApricornForKurt:
|
||||
and a
|
||||
ret z
|
||||
ld [wCurItem], a
|
||||
ld a, $1
|
||||
ld a, 1
|
||||
ld [wItemQuantityChangeBuffer], a
|
||||
ld hl, wNumItems
|
||||
call TossItem
|
||||
|
||||
@@ -19,10 +19,10 @@ _DummyGame:
|
||||
ld bc, 4 tiles
|
||||
ld a, BANK(Unknown_e0908)
|
||||
call FarCopyBytes
|
||||
ld a, 8
|
||||
ld a, $8
|
||||
ld hl, wc508
|
||||
ld [hli], a
|
||||
ld [hl], 0
|
||||
ld [hl], $0
|
||||
hlcoord 0, 0
|
||||
ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
|
||||
xor a
|
||||
|
||||
Reference in New Issue
Block a user