From 407b813250a768a85c619e06c3f1f010575f31c4 Mon Sep 17 00:00:00 2001 From: Rangi Date: Thu, 27 Aug 2020 12:25:34 -0400 Subject: Separate splash screen, intro, and credits (like pokegold/pokecrystal) --- Makefile | 20 +-- data/tilemaps.asm | 6 +- engine/movie/credits.asm | 2 +- engine/movie/gamefreak.asm | 243 ------------------------------- engine/movie/intro.asm | 22 +-- engine/movie/splash.asm | 243 +++++++++++++++++++++++++++++++ gfx/credits/the_end.png | Bin 0 -> 139 bytes gfx/font.asm | 2 +- gfx/intro/blue_jigglypuff_1.png | Bin 0 -> 366 bytes gfx/intro/blue_jigglypuff_2.png | Bin 0 -> 360 bytes gfx/intro/blue_jigglypuff_3.png | Bin 0 -> 416 bytes gfx/intro/gengar.png | Bin 0 -> 1089 bytes gfx/intro/gengar_1.tilemap | Bin 0 -> 49 bytes gfx/intro/gengar_2.tilemap | Bin 0 -> 49 bytes gfx/intro/gengar_3.tilemap | Bin 0 -> 49 bytes gfx/intro/red_nidorino_1.png | Bin 0 -> 462 bytes gfx/intro/red_nidorino_2.png | Bin 0 -> 449 bytes gfx/intro/red_nidorino_3.png | Bin 0 -> 495 bytes gfx/intro_credits/blue_jigglypuff_1.png | Bin 366 -> 0 bytes gfx/intro_credits/blue_jigglypuff_2.png | Bin 360 -> 0 bytes gfx/intro_credits/blue_jigglypuff_3.png | Bin 416 -> 0 bytes gfx/intro_credits/copyright.png | Bin 220 -> 0 bytes gfx/intro_credits/falling_star.png | Bin 90 -> 0 bytes gfx/intro_credits/gamefreak_logo.png | Bin 139 -> 0 bytes gfx/intro_credits/gamefreak_presents.png | Bin 180 -> 0 bytes gfx/intro_credits/gengar.png | Bin 1089 -> 0 bytes gfx/intro_credits/gengar_1.tilemap | Bin 49 -> 0 bytes gfx/intro_credits/gengar_2.tilemap | Bin 49 -> 0 bytes gfx/intro_credits/gengar_3.tilemap | Bin 49 -> 0 bytes gfx/intro_credits/red_nidorino_1.png | Bin 462 -> 0 bytes gfx/intro_credits/red_nidorino_2.png | Bin 449 -> 0 bytes gfx/intro_credits/red_nidorino_3.png | Bin 495 -> 0 bytes gfx/intro_credits/the_end.png | Bin 139 -> 0 bytes gfx/splash/copyright.png | Bin 0 -> 220 bytes gfx/splash/falling_star.png | Bin 0 -> 90 bytes gfx/splash/gamefreak_logo.png | Bin 0 -> 139 bytes gfx/splash/gamefreak_presents.png | Bin 0 -> 180 bytes main.asm | 2 +- 38 files changed, 270 insertions(+), 270 deletions(-) delete mode 100755 engine/movie/gamefreak.asm create mode 100755 engine/movie/splash.asm create mode 100644 gfx/credits/the_end.png create mode 100644 gfx/intro/blue_jigglypuff_1.png create mode 100644 gfx/intro/blue_jigglypuff_2.png create mode 100644 gfx/intro/blue_jigglypuff_3.png create mode 100644 gfx/intro/gengar.png create mode 100644 gfx/intro/gengar_1.tilemap create mode 100644 gfx/intro/gengar_2.tilemap create mode 100644 gfx/intro/gengar_3.tilemap create mode 100644 gfx/intro/red_nidorino_1.png create mode 100644 gfx/intro/red_nidorino_2.png create mode 100644 gfx/intro/red_nidorino_3.png delete mode 100644 gfx/intro_credits/blue_jigglypuff_1.png delete mode 100644 gfx/intro_credits/blue_jigglypuff_2.png delete mode 100644 gfx/intro_credits/blue_jigglypuff_3.png delete mode 100644 gfx/intro_credits/copyright.png delete mode 100644 gfx/intro_credits/falling_star.png delete mode 100644 gfx/intro_credits/gamefreak_logo.png delete mode 100644 gfx/intro_credits/gamefreak_presents.png delete mode 100644 gfx/intro_credits/gengar.png delete mode 100644 gfx/intro_credits/gengar_1.tilemap delete mode 100644 gfx/intro_credits/gengar_2.tilemap delete mode 100644 gfx/intro_credits/gengar_3.tilemap delete mode 100644 gfx/intro_credits/red_nidorino_1.png delete mode 100644 gfx/intro_credits/red_nidorino_2.png delete mode 100644 gfx/intro_credits/red_nidorino_3.png delete mode 100644 gfx/intro_credits/the_end.png create mode 100644 gfx/splash/copyright.png create mode 100644 gfx/splash/falling_star.png create mode 100644 gfx/splash/gamefreak_logo.png create mode 100644 gfx/splash/gamefreak_presents.png diff --git a/Makefile b/Makefile index 7a8f8ac3..6d432ec9 100644 --- a/Makefile +++ b/Makefile @@ -114,16 +114,16 @@ pokeblue_debug_opt = -jsv -n 0 -k 01 -l 0x33 -m 0x13 -r 03 -t "POKEMON BLUE" gfx/battle/attack_anim_1.2bpp: tools/gfx += --trim-whitespace gfx/battle/attack_anim_2.2bpp: tools/gfx += --trim-whitespace -gfx/intro_credits/blue_jigglypuff_1.2bpp: rgbgfx += -h -gfx/intro_credits/blue_jigglypuff_2.2bpp: rgbgfx += -h -gfx/intro_credits/blue_jigglypuff_3.2bpp: rgbgfx += -h -gfx/intro_credits/red_nidorino_1.2bpp: rgbgfx += -h -gfx/intro_credits/red_nidorino_2.2bpp: rgbgfx += -h -gfx/intro_credits/red_nidorino_3.2bpp: rgbgfx += -h -gfx/intro_credits/gengar.2bpp: rgbgfx += -h -gfx/intro_credits/gengar.2bpp: tools/gfx += --remove-duplicates --preserve=0x19,0x76 - -gfx/intro_credits/the_end.2bpp: tools/gfx += --interleave --png=$< +gfx/intro/blue_jigglypuff_1.2bpp: rgbgfx += -h +gfx/intro/blue_jigglypuff_2.2bpp: rgbgfx += -h +gfx/intro/blue_jigglypuff_3.2bpp: rgbgfx += -h +gfx/intro/red_nidorino_1.2bpp: rgbgfx += -h +gfx/intro/red_nidorino_2.2bpp: rgbgfx += -h +gfx/intro/red_nidorino_3.2bpp: rgbgfx += -h +gfx/intro/gengar.2bpp: rgbgfx += -h +gfx/intro/gengar.2bpp: tools/gfx += --remove-duplicates --preserve=0x19,0x76 + +gfx/credits/the_end.2bpp: tools/gfx += --interleave --png=$< gfx/slots/red_slots_1.2bpp: tools/gfx += --trim-whitespace gfx/slots/blue_slots_1.2bpp: tools/gfx += --trim-whitespace diff --git a/data/tilemaps.asm b/data/tilemaps.asm index c7efb222..97e687fd 100644 --- a/data/tilemaps.asm +++ b/data/tilemaps.asm @@ -31,13 +31,13 @@ SlideDownMonTiles_7x3: INCBIN "gfx/pokemon/slide_down_7x3.tilemap" GengarIntroTiles1: - INCBIN "gfx/intro_credits/gengar_1.tilemap" + INCBIN "gfx/intro/gengar_1.tilemap" GengarIntroTiles2: - INCBIN "gfx/intro_credits/gengar_2.tilemap" + INCBIN "gfx/intro/gengar_2.tilemap" GengarIntroTiles3: - INCBIN "gfx/intro_credits/gengar_3.tilemap" + INCBIN "gfx/intro/gengar_3.tilemap" GameBoyTiles: INCBIN "gfx/trade/game_boy.tilemap" diff --git a/engine/movie/credits.asm b/engine/movie/credits.asm index 6fb0598e..0410de21 100755 --- a/engine/movie/credits.asm +++ b/engine/movie/credits.asm @@ -266,5 +266,5 @@ INCLUDE "data/credits/credits_order.asm" INCLUDE "data/credits/credits_text.asm" TheEndGfx: - INCBIN "gfx/intro_credits/the_end.2bpp" + INCBIN "gfx/credits/the_end.2bpp" TheEndGfxEnd: diff --git a/engine/movie/gamefreak.asm b/engine/movie/gamefreak.asm deleted file mode 100755 index 1f837443..00000000 --- a/engine/movie/gamefreak.asm +++ /dev/null @@ -1,243 +0,0 @@ -LoadShootingStarGraphics: - ld a, $f9 - ldh [rOBP0], a - ld a, $a4 - ldh [rOBP1], a - ld de, AnimationTileset2 tile 3 ; star tile (top left quadrant) - ld hl, vChars1 tile $20 - lb bc, BANK(AnimationTileset2), 1 - call CopyVideoData - ld de, AnimationTileset2 tile 19 ; star tile (bottom left quadrant) - ld hl, vChars1 tile $21 - lb bc, BANK(AnimationTileset2), 1 - call CopyVideoData - ld de, FallingStar - ld hl, vChars1 tile $22 - lb bc, BANK(FallingStar), (FallingStarEnd - FallingStar) / $10 - call CopyVideoData - ld hl, GameFreakLogoOAMData - ld de, wOAMBuffer + $60 - ld bc, GameFreakLogoOAMDataEnd - GameFreakLogoOAMData - call CopyData - ld hl, GameFreakShootingStarOAMData - ld de, wOAMBuffer - ld bc, GameFreakShootingStarOAMDataEnd - GameFreakShootingStarOAMData - jp CopyData - -AnimateShootingStar: - call LoadShootingStarGraphics - ld a, SFX_SHOOTING_STAR - call PlaySound - -; Move the big star down and left across the screen. - ld hl, wOAMBuffer - lb bc, $a0, $4 -.bigStarLoop - push hl - push bc -.bigStarInnerLoop - ld a, [hl] ; Y - add 4 - ld [hli], a - ld a, [hl] ; X - add -4 - ld [hli], a - inc hl - inc hl - dec c - jr nz, .bigStarInnerLoop - ld c, 1 - call CheckForUserInterruption - pop bc - pop hl - ret c - ld a, [hl] - cp 80 - jr nz, .next - jr .bigStarLoop -.next - cp b - jr nz, .bigStarLoop - -; Clear big star OAM. - ld hl, wOAMBuffer - ld c, 4 - ld de, 4 -.clearOAMLoop - ld [hl], 160 - add hl, de - dec c - jr nz, .clearOAMLoop - -; Make Gamefreak logo flash. - ld b, 3 -.flashLogoLoop - ld hl, rOBP0 - rrc [hl] - rrc [hl] - ld c, 10 - call CheckForUserInterruption - ret c - dec b - jr nz, .flashLogoLoop - -; Copy 24 instances of the small stars OAM data. -; Note that their coordinates put them off-screen. - ld de, wOAMBuffer - ld a, 24 -.initSmallStarsOAMLoop - push af - ld hl, SmallStarsOAM - ld bc, SmallStarsOAMEnd - SmallStarsOAM - call CopyData - pop af - dec a - jr nz, .initSmallStarsOAMLoop - -; Animate the small stars falling from the Gamefreak logo. - xor a - ld [wMoveDownSmallStarsOAMCount], a - ld hl, SmallStarsWaveCoordsPointerTable - ld c, 6 -.smallStarsLoop - ld a, [hli] - ld e, a - ld a, [hli] - ld d, a - push bc - push hl - ld hl, wOAMBuffer + $50 - ld c, 4 -.smallStarsInnerLoop ; introduce new wave of 4 small stars OAM entries - ld a, [de] - cp $ff - jr z, .next2 - ld [hli], a ; Y - inc de - ld a, [de] - ld [hli], a ; X - inc de - inc hl - inc hl - dec c - jr nz, .smallStarsInnerLoop - ld a, [wMoveDownSmallStarsOAMCount] - cp 24 - jr z, .next2 - add 6 ; should be 4, but the extra 2 aren't visible on screen - ld [wMoveDownSmallStarsOAMCount], a -.next2 - call MoveDownSmallStars - push af - -; shift the existing OAM entries down to make room for the next wave - ld hl, wOAMBuffer + $10 - ld de, wOAMBuffer - ld bc, $50 - call CopyData - - pop af - pop hl - pop bc - ret c - dec c - jr nz, .smallStarsLoop - and a - ret - -SmallStarsOAM: - dbsprite 0, 0, 0, 0, $A2, OAM_BEHIND_BG | OAM_OBP1 -SmallStarsOAMEnd: - -SmallStarsWaveCoordsPointerTable: - dw SmallStarsWave1Coords - dw SmallStarsWave2Coords - dw SmallStarsWave3Coords - dw SmallStarsWave4Coords - dw SmallStarsEmptyWave - dw SmallStarsEmptyWave - -; The stars that fall from the Gamefreak logo come in 4 waves of 4 OAM entries. -; These arrays contain the Y and X coordinates of each OAM entry. - -SmallStarsWave1Coords: - db $68, $30 - db $68, $40 - db $68, $58 - db $68, $78 - -SmallStarsWave2Coords: - db $68, $38 - db $68, $48 - db $68, $60 - db $68, $70 - -SmallStarsWave3Coords: - db $68, $34 - db $68, $4C - db $68, $54 - db $68, $64 - -SmallStarsWave4Coords: - db $68, $3C - db $68, $5C - db $68, $6C - db $68, $74 - -SmallStarsEmptyWave: - db $FF - -MoveDownSmallStars: - ld b, 8 -.loop - ld hl, wOAMBuffer + $5c - ld a, [wMoveDownSmallStarsOAMCount] - ld de, -4 - ld c, a -.innerLoop - inc [hl] ; Y - add hl, de - dec c - jr nz, .innerLoop -; Toggle the palette so that the lower star in the small stars tile blinks in -; and out. - ldh a, [rOBP1] - xor %10100000 - ldh [rOBP1], a - - ld c, 3 - call CheckForUserInterruption - ret c - dec b - jr nz, .loop - ret - -GameFreakLogoOAMData: - dbsprite 10, 9, 0, 0, $8d, 0 - dbsprite 11, 9, 0, 0, $8e, 0 - dbsprite 10, 10, 0, 0, $8f, 0 - dbsprite 11, 10, 0, 0, $90, 0 - dbsprite 10, 11, 0, 0, $91, 0 - dbsprite 11, 11, 0, 0, $92, 0 - dbsprite 6, 12, 0, 0, $80, 0 - dbsprite 7, 12, 0, 0, $81, 0 - dbsprite 8, 12, 0, 0, $82, 0 - dbsprite 9, 12, 0, 0, $83, 0 - dbsprite 10, 12, 0, 0, $93, 0 - dbsprite 11, 12, 0, 0, $84, 0 - dbsprite 12, 12, 0, 0, $85, 0 - dbsprite 13, 12, 0, 0, $83, 0 - dbsprite 14, 12, 0, 0, $81, 0 - dbsprite 15, 12, 0, 0, $86, 0 -GameFreakLogoOAMDataEnd: - -GameFreakShootingStarOAMData: - dbsprite 20, 0, 0, 0, $a0, OAM_OBP1 - dbsprite 21, 0, 0, 0, $a0, OAM_OBP1 | OAM_HFLIP - dbsprite 20, 1, 0, 0, $a1, OAM_OBP1 - dbsprite 21, 1, 0, 0, $a1, OAM_OBP1 | OAM_HFLIP -GameFreakShootingStarOAMDataEnd: - -FallingStar: - INCBIN "gfx/intro_credits/falling_star.2bpp" -FallingStarEnd: diff --git a/engine/movie/intro.asm b/engine/movie/intro.asm index d8ec8e6e..040d643d 100755 --- a/engine/movie/intro.asm +++ b/engine/movie/intro.asm @@ -433,32 +433,32 @@ IntroNidorinoAnimation7: db ANIMATION_END GameFreakIntro: - INCBIN "gfx/intro_credits/gamefreak_presents.2bpp" - INCBIN "gfx/intro_credits/gamefreak_logo.2bpp" + INCBIN "gfx/splash/gamefreak_presents.2bpp" + INCBIN "gfx/splash/gamefreak_logo.2bpp" ds 16, $00 ; blank tile GameFreakIntroEnd: FightIntroBackMon: - INCBIN "gfx/intro_credits/gengar.2bpp" + INCBIN "gfx/intro/gengar.2bpp" ds 16, $00 ; blank tile FightIntroBackMonEnd: -FightIntroFrontMon: - IF DEF(_RED) - INCBIN "gfx/intro_credits/red_nidorino_1.2bpp" +FightIntroFrontMon: + INCBIN "gfx/intro/red_nidorino_1.2bpp" FightIntroFrontMon2: - INCBIN "gfx/intro_credits/red_nidorino_2.2bpp" + INCBIN "gfx/intro/red_nidorino_2.2bpp" FightIntroFrontMon3: - INCBIN "gfx/intro_credits/red_nidorino_3.2bpp" + INCBIN "gfx/intro/red_nidorino_3.2bpp" ENDC IF DEF(_BLUE) - INCBIN "gfx/intro_credits/blue_jigglypuff_1.2bpp" +FightIntroFrontMon: + INCBIN "gfx/intro/blue_jigglypuff_1.2bpp" FightIntroFrontMon2: - INCBIN "gfx/intro_credits/blue_jigglypuff_2.2bpp" + INCBIN "gfx/intro/blue_jigglypuff_2.2bpp" FightIntroFrontMon3: - INCBIN "gfx/intro_credits/blue_jigglypuff_3.2bpp" + INCBIN "gfx/intro/blue_jigglypuff_3.2bpp" ENDC FightIntroFrontMonEnd: diff --git a/engine/movie/splash.asm b/engine/movie/splash.asm new file mode 100755 index 00000000..be97b8e5 --- /dev/null +++ b/engine/movie/splash.asm @@ -0,0 +1,243 @@ +LoadShootingStarGraphics: + ld a, $f9 + ldh [rOBP0], a + ld a, $a4 + ldh [rOBP1], a + ld de, AnimationTileset2 tile 3 ; star tile (top left quadrant) + ld hl, vChars1 tile $20 + lb bc, BANK(AnimationTileset2), 1 + call CopyVideoData + ld de, AnimationTileset2 tile 19 ; star tile (bottom left quadrant) + ld hl, vChars1 tile $21 + lb bc, BANK(AnimationTileset2), 1 + call CopyVideoData + ld de, FallingStar + ld hl, vChars1 tile $22 + lb bc, BANK(FallingStar), (FallingStarEnd - FallingStar) / $10 + call CopyVideoData + ld hl, GameFreakLogoOAMData + ld de, wOAMBuffer + $60 + ld bc, GameFreakLogoOAMDataEnd - GameFreakLogoOAMData + call CopyData + ld hl, GameFreakShootingStarOAMData + ld de, wOAMBuffer + ld bc, GameFreakShootingStarOAMDataEnd - GameFreakShootingStarOAMData + jp CopyData + +AnimateShootingStar: + call LoadShootingStarGraphics + ld a, SFX_SHOOTING_STAR + call PlaySound + +; Move the big star down and left across the screen. + ld hl, wOAMBuffer + lb bc, $a0, $4 +.bigStarLoop + push hl + push bc +.bigStarInnerLoop + ld a, [hl] ; Y + add 4 + ld [hli], a + ld a, [hl] ; X + add -4 + ld [hli], a + inc hl + inc hl + dec c + jr nz, .bigStarInnerLoop + ld c, 1 + call CheckForUserInterruption + pop bc + pop hl + ret c + ld a, [hl] + cp 80 + jr nz, .next + jr .bigStarLoop +.next + cp b + jr nz, .bigStarLoop + +; Clear big star OAM. + ld hl, wOAMBuffer + ld c, 4 + ld de, 4 +.clearOAMLoop + ld [hl], 160 + add hl, de + dec c + jr nz, .clearOAMLoop + +; Make Gamefreak logo flash. + ld b, 3 +.flashLogoLoop + ld hl, rOBP0 + rrc [hl] + rrc [hl] + ld c, 10 + call CheckForUserInterruption + ret c + dec b + jr nz, .flashLogoLoop + +; Copy 24 instances of the small stars OAM data. +; Note that their coordinates put them off-screen. + ld de, wOAMBuffer + ld a, 24 +.initSmallStarsOAMLoop + push af + ld hl, SmallStarsOAM + ld bc, SmallStarsOAMEnd - SmallStarsOAM + call CopyData + pop af + dec a + jr nz, .initSmallStarsOAMLoop + +; Animate the small stars falling from the Gamefreak logo. + xor a + ld [wMoveDownSmallStarsOAMCount], a + ld hl, SmallStarsWaveCoordsPointerTable + ld c, 6 +.smallStarsLoop + ld a, [hli] + ld e, a + ld a, [hli] + ld d, a + push bc + push hl + ld hl, wOAMBuffer + $50 + ld c, 4 +.smallStarsInnerLoop ; introduce new wave of 4 small stars OAM entries + ld a, [de] + cp $ff + jr z, .next2 + ld [hli], a ; Y + inc de + ld a, [de] + ld [hli], a ; X + inc de + inc hl + inc hl + dec c + jr nz, .smallStarsInnerLoop + ld a, [wMoveDownSmallStarsOAMCount] + cp 24 + jr z, .next2 + add 6 ; should be 4, but the extra 2 aren't visible on screen + ld [wMoveDownSmallStarsOAMCount], a +.next2 + call MoveDownSmallStars + push af + +; shift the existing OAM entries down to make room for the next wave + ld hl, wOAMBuffer + $10 + ld de, wOAMBuffer + ld bc, $50 + call CopyData + + pop af + pop hl + pop bc + ret c + dec c + jr nz, .smallStarsLoop + and a + ret + +SmallStarsOAM: + dbsprite 0, 0, 0, 0, $A2, OAM_BEHIND_BG | OAM_OBP1 +SmallStarsOAMEnd: + +SmallStarsWaveCoordsPointerTable: + dw SmallStarsWave1Coords + dw SmallStarsWave2Coords + dw SmallStarsWave3Coords + dw SmallStarsWave4Coords + dw SmallStarsEmptyWave + dw SmallStarsEmptyWave + +; The stars that fall from the Gamefreak logo come in 4 waves of 4 OAM entries. +; These arrays contain the Y and X coordinates of each OAM entry. + +SmallStarsWave1Coords: + db $68, $30 + db $68, $40 + db $68, $58 + db $68, $78 + +SmallStarsWave2Coords: + db $68, $38 + db $68, $48 + db $68, $60 + db $68, $70 + +SmallStarsWave3Coords: + db $68, $34 + db $68, $4C + db $68, $54 + db $68, $64 + +SmallStarsWave4Coords: + db $68, $3C + db $68, $5C + db $68, $6C + db $68, $74 + +SmallStarsEmptyWave: + db $FF + +MoveDownSmallStars: + ld b, 8 +.loop + ld hl, wOAMBuffer + $5c + ld a, [wMoveDownSmallStarsOAMCount] + ld de, -4 + ld c, a +.innerLoop + inc [hl] ; Y + add hl, de + dec c + jr nz, .innerLoop +; Toggle the palette so that the lower star in the small stars tile blinks in +; and out. + ldh a, [rOBP1] + xor %10100000 + ldh [rOBP1], a + + ld c, 3 + call CheckForUserInterruption + ret c + dec b + jr nz, .loop + ret + +GameFreakLogoOAMData: + dbsprite 10, 9, 0, 0, $8d, 0 + dbsprite 11, 9, 0, 0, $8e, 0 + dbsprite 10, 10, 0, 0, $8f, 0 + dbsprite 11, 10, 0, 0, $90, 0 + dbsprite 10, 11, 0, 0, $91, 0 + dbsprite 11, 11, 0, 0, $92, 0 + dbsprite 6, 12, 0, 0, $80, 0 + dbsprite 7, 12, 0, 0, $81, 0 + dbsprite 8, 12, 0, 0, $82, 0 + dbsprite 9, 12, 0, 0, $83, 0 + dbsprite 10, 12, 0, 0, $93, 0 + dbsprite 11, 12, 0, 0, $84, 0 + dbsprite 12, 12, 0, 0, $85, 0 + dbsprite 13, 12, 0, 0, $83, 0 + dbsprite 14, 12, 0, 0, $81, 0 + dbsprite 15, 12, 0, 0, $86, 0 +GameFreakLogoOAMDataEnd: + +GameFreakShootingStarOAMData: + dbsprite 20, 0, 0, 0, $a0, OAM_OBP1 + dbsprite 21, 0, 0, 0, $a0, OAM_OBP1 | OAM_HFLIP + dbsprite 20, 1, 0, 0, $a1, OAM_OBP1 + dbsprite 21, 1, 0, 0, $a1, OAM_OBP1 | OAM_HFLIP +GameFreakShootingStarOAMDataEnd: + +FallingStar: + INCBIN "gfx/splash/falling_star.2bpp" +FallingStarEnd: diff --git a/gfx/credits/the_end.png b/gfx/credits/the_end.png new file mode 100644 index 00000000..025ebb61 Binary files /dev/null and b/gfx/credits/the_end.png differ diff --git a/gfx/font.asm b/gfx/font.asm index b3dda1e7..fc2aff4f 100644 --- a/gfx/font.asm +++ b/gfx/font.asm @@ -13,7 +13,7 @@ BattleHudTiles2: INCBIN "gfx/battle/battle_hud_2.1bpp" BattleHudTiles3: INCBIN "gfx/battle/battle_hud_3.1bpp" BattleHudTiles3End: -NintendoCopyrightLogoGraphics: INCBIN "gfx/intro_credits/copyright.2bpp" +NintendoCopyrightLogoGraphics: INCBIN "gfx/splash/copyright.2bpp" GamefreakLogoGraphics: INCBIN "gfx/title/gamefreak_inc.2bpp" GamefreakLogoGraphicsEnd: diff --git a/gfx/intro/blue_jigglypuff_1.png b/gfx/intro/blue_jigglypuff_1.png new file mode 100644 index 00000000..0e53582c Binary files /dev/null and b/gfx/intro/blue_jigglypuff_1.png differ diff --git a/gfx/intro/blue_jigglypuff_2.png b/gfx/intro/blue_jigglypuff_2.png new file mode 100644 index 00000000..21107af0 Binary files /dev/null and b/gfx/intro/blue_jigglypuff_2.png differ diff --git a/gfx/intro/blue_jigglypuff_3.png b/gfx/intro/blue_jigglypuff_3.png new file mode 100644 index 00000000..1c30a0e8 Binary files /dev/null and b/gfx/intro/blue_jigglypuff_3.png differ diff --git a/gfx/intro/gengar.png b/gfx/intro/gengar.png new file mode 100644 index 00000000..9558d1a1 Binary files /dev/null and b/gfx/intro/gengar.png differ diff --git a/gfx/intro/gengar_1.tilemap b/gfx/intro/gengar_1.tilemap new file mode 100644 index 00000000..c962326a Binary files /dev/null and b/gfx/intro/gengar_1.tilemap differ diff --git a/gfx/intro/gengar_2.tilemap b/gfx/intro/gengar_2.tilemap new file mode 100644 index 00000000..a909ba5e Binary files /dev/null and b/gfx/intro/gengar_2.tilemap differ diff --git a/gfx/intro/gengar_3.tilemap b/gfx/intro/gengar_3.tilemap new file mode 100644 index 00000000..231106d8 Binary files /dev/null and b/gfx/intro/gengar_3.tilemap differ diff --git a/gfx/intro/red_nidorino_1.png b/gfx/intro/red_nidorino_1.png new file mode 100644 index 00000000..4c7804a1 Binary files /dev/null and b/gfx/intro/red_nidorino_1.png differ diff --git a/gfx/intro/red_nidorino_2.png b/gfx/intro/red_nidorino_2.png new file mode 100644 index 00000000..a29a4814 Binary files /dev/null and b/gfx/intro/red_nidorino_2.png differ diff --git a/gfx/intro/red_nidorino_3.png b/gfx/intro/red_nidorino_3.png new file mode 100644 index 00000000..e920d55d Binary files /dev/null and b/gfx/intro/red_nidorino_3.png differ diff --git a/gfx/intro_credits/blue_jigglypuff_1.png b/gfx/intro_credits/blue_jigglypuff_1.png deleted file mode 100644 index 0e53582c..00000000 Binary files a/gfx/intro_credits/blue_jigglypuff_1.png and /dev/null differ diff --git a/gfx/intro_credits/blue_jigglypuff_2.png b/gfx/intro_credits/blue_jigglypuff_2.png deleted file mode 100644 index 21107af0..00000000 Binary files a/gfx/intro_credits/blue_jigglypuff_2.png and /dev/null differ diff --git a/gfx/intro_credits/blue_jigglypuff_3.png b/gfx/intro_credits/blue_jigglypuff_3.png deleted file mode 100644 index 1c30a0e8..00000000 Binary files a/gfx/intro_credits/blue_jigglypuff_3.png and /dev/null differ diff --git a/gfx/intro_credits/copyright.png b/gfx/intro_credits/copyright.png deleted file mode 100644 index 49174349..00000000 Binary files a/gfx/intro_credits/copyright.png and /dev/null differ diff --git a/gfx/intro_credits/falling_star.png b/gfx/intro_credits/falling_star.png deleted file mode 100644 index 9093bef4..00000000 Binary files a/gfx/intro_credits/falling_star.png and /dev/null differ diff --git a/gfx/intro_credits/gamefreak_logo.png b/gfx/intro_credits/gamefreak_logo.png deleted file mode 100644 index 1671943b..00000000 Binary files a/gfx/intro_credits/gamefreak_logo.png and /dev/null differ diff --git a/gfx/intro_credits/gamefreak_presents.png b/gfx/intro_credits/gamefreak_presents.png deleted file mode 100644 index f65c64ed..00000000 Binary files a/gfx/intro_credits/gamefreak_presents.png and /dev/null differ diff --git a/gfx/intro_credits/gengar.png b/gfx/intro_credits/gengar.png deleted file mode 100644 index 9558d1a1..00000000 Binary files a/gfx/intro_credits/gengar.png and /dev/null differ diff --git a/gfx/intro_credits/gengar_1.tilemap b/gfx/intro_credits/gengar_1.tilemap deleted file mode 100644 index c962326a..00000000 Binary files a/gfx/intro_credits/gengar_1.tilemap and /dev/null differ diff --git a/gfx/intro_credits/gengar_2.tilemap b/gfx/intro_credits/gengar_2.tilemap deleted file mode 100644 index a909ba5e..00000000 Binary files a/gfx/intro_credits/gengar_2.tilemap and /dev/null differ diff --git a/gfx/intro_credits/gengar_3.tilemap b/gfx/intro_credits/gengar_3.tilemap deleted file mode 100644 index 231106d8..00000000 Binary files a/gfx/intro_credits/gengar_3.tilemap and /dev/null differ diff --git a/gfx/intro_credits/red_nidorino_1.png b/gfx/intro_credits/red_nidorino_1.png deleted file mode 100644 index 4c7804a1..00000000 Binary files a/gfx/intro_credits/red_nidorino_1.png and /dev/null differ diff --git a/gfx/intro_credits/red_nidorino_2.png b/gfx/intro_credits/red_nidorino_2.png deleted file mode 100644 index a29a4814..00000000 Binary files a/gfx/intro_credits/red_nidorino_2.png and /dev/null differ diff --git a/gfx/intro_credits/red_nidorino_3.png b/gfx/intro_credits/red_nidorino_3.png deleted file mode 100644 index e920d55d..00000000 Binary files a/gfx/intro_credits/red_nidorino_3.png and /dev/null differ diff --git a/gfx/intro_credits/the_end.png b/gfx/intro_credits/the_end.png deleted file mode 100644 index 025ebb61..00000000 Binary files a/gfx/intro_credits/the_end.png and /dev/null differ diff --git a/gfx/splash/copyright.png b/gfx/splash/copyright.png new file mode 100644 index 00000000..49174349 Binary files /dev/null and b/gfx/splash/copyright.png differ diff --git a/gfx/splash/falling_star.png b/gfx/splash/falling_star.png new file mode 100644 index 00000000..9093bef4 Binary files /dev/null and b/gfx/splash/falling_star.png differ diff --git a/gfx/splash/gamefreak_logo.png b/gfx/splash/gamefreak_logo.png new file mode 100644 index 00000000..1671943b Binary files /dev/null and b/gfx/splash/gamefreak_logo.png differ diff --git a/gfx/splash/gamefreak_presents.png b/gfx/splash/gamefreak_presents.png new file mode 100644 index 00000000..f65c64ed Binary files /dev/null and b/gfx/splash/gamefreak_presents.png differ diff --git a/main.asm b/main.asm index 8e8ee1a1..31506a29 100755 --- a/main.asm +++ b/main.asm @@ -314,7 +314,7 @@ INCLUDE "gfx/version.asm" SECTION "bank1C", ROMX -INCLUDE "engine/movie/gamefreak.asm" +INCLUDE "engine/movie/splash.asm" INCLUDE "engine/movie/hall_of_fame.asm" INCLUDE "engine/overworld/healing_machine.asm" INCLUDE "engine/overworld/player_animations.asm" -- cgit v1.3.1-sl0p From 637f38b139c43c15eb1f4a67562a78389d4f42a7 Mon Sep 17 00:00:00 2001 From: Rangi Date: Fri, 28 Aug 2020 12:10:55 -0400 Subject: Use decimal, not hex, for sprite (object) coordinates in map scripts --- scripts/BillsHouse.asm | 4 ++-- scripts/CeruleanCity.asm | 4 ++-- scripts/CinnabarIsland.asm | 4 ++-- scripts/FightingDojo.asm | 4 ++-- scripts/GameCorner.asm | 4 ++-- scripts/MtMoonB2F.asm | 4 ++-- scripts/Museum1F.asm | 12 ++++++------ scripts/OaksLab.asm | 28 ++++++++++++++-------------- scripts/PewterCity.asm | 8 ++++---- scripts/Route22Gate.asm | 2 +- scripts/SSAnne2F.asm | 4 ++-- scripts/SeafoamIslandsB3F.asm | 8 ++++---- scripts/ViridianCity.asm | 8 ++++---- 13 files changed, 47 insertions(+), 47 deletions(-) diff --git a/scripts/BillsHouse.asm b/scripts/BillsHouse.asm index 75594801..2085f417 100755 --- a/scripts/BillsHouse.asm +++ b/scripts/BillsHouse.asm @@ -69,9 +69,9 @@ BillsHouseScript3: ldh [hSpriteScreenYCoord], a ld a, $40 ldh [hSpriteScreenXCoord], a - ld a, $6 + ld a, 6 ldh [hSpriteMapYCoord], a - ld a, $5 + ld a, 5 ldh [hSpriteMapXCoord], a call SetSpritePosition1 ld a, HS_BILL_1 diff --git a/scripts/CeruleanCity.asm b/scripts/CeruleanCity.asm index eef63536..5ac75075 100755 --- a/scripts/CeruleanCity.asm +++ b/scripts/CeruleanCity.asm @@ -80,7 +80,7 @@ ENDC ld a, $f0 ld [wJoyIgnore], a ld a, [wXCoord] - cp $14 + cp 20 jr z, .asm_19535 ld a, $1 ldh [hSpriteIndex], a @@ -183,7 +183,7 @@ CeruleanCityScript2: ldh [hSpriteIndex], a call SetSpriteMovementBytesToFF ld a, [wXCoord] - cp $14 + cp 20 jr nz, .asm_195f0 ld de, CeruleanCityMovement4 jr .asm_195f3 diff --git a/scripts/CinnabarIsland.asm b/scripts/CinnabarIsland.asm index f74890e8..a1b20cd3 100755 --- a/scripts/CinnabarIsland.asm +++ b/scripts/CinnabarIsland.asm @@ -17,10 +17,10 @@ CinnabarIslandScript0: call IsItemInBag ret nz ld a, [wYCoord] - cp $4 + cp 4 ret nz ld a, [wXCoord] - cp $12 + cp 18 ret nz ld a, PLAYER_DIR_UP ld [wPlayerMovingDirection], a diff --git a/scripts/FightingDojo.asm b/scripts/FightingDojo.asm index 365e23e0..e5d0a0a7 100755 --- a/scripts/FightingDojo.asm +++ b/scripts/FightingDojo.asm @@ -33,10 +33,10 @@ FightingDojoScript1: ldh [hJoyHeld], a ld [wcf0d], a ld a, [wYCoord] - cp $3 + cp 3 ret nz ld a, [wXCoord] - cp $4 + cp 4 ret nz ld a, $1 ld [wcf0d], a diff --git a/scripts/GameCorner.asm b/scripts/GameCorner.asm index c933fd63..94c35883 100755 --- a/scripts/GameCorner.asm +++ b/scripts/GameCorner.asm @@ -64,13 +64,13 @@ CeladonGameCornerScript1: call SetSpriteMovementBytesToFF ld de, MovementData_48c5a ld a, [wYCoord] - cp $6 + cp 6 jr nz, .asm_48c43 ld de, MovementData_48c63 jr .asm_48c4d .asm_48c43 ld a, [wXCoord] - cp $8 + cp 8 jr nz, .asm_48c4d ld de, MovementData_48c63 .asm_48c4d diff --git a/scripts/MtMoonB2F.asm b/scripts/MtMoonB2F.asm index addfb2c2..9faf038a 100755 --- a/scripts/MtMoonB2F.asm +++ b/scripts/MtMoonB2F.asm @@ -56,10 +56,10 @@ MtMoon3Script0: CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD jp nz, MtMoon3Script_49d91 ld a, [wYCoord] - cp $8 + cp 8 jp nz, MtMoon3Script_49d91 ld a, [wXCoord] - cp $d + cp 13 jp nz, MtMoon3Script_49d91 xor a ldh [hJoyHeld], a diff --git a/scripts/Museum1F.asm b/scripts/Museum1F.asm index b7240154..ee3473ff 100755 --- a/scripts/Museum1F.asm +++ b/scripts/Museum1F.asm @@ -13,13 +13,13 @@ Museum1F_ScriptPointers: Museum1FScript0: ld a, [wYCoord] - cp $4 + cp 4 ret nz ld a, [wXCoord] - cp $9 + cp 9 jr z, .asm_5c120 ld a, [wXCoord] - cp $a + cp 10 ret nz .asm_5c120 xor a @@ -41,17 +41,17 @@ Museum1F_TextPointers: Museum1FText1: text_asm ld a, [wYCoord] - cp $4 + cp 4 jr nz, .asm_8774b ld a, [wXCoord] - cp $d + cp 13 jp z, Museum1FScript_5c1f9 jr .asm_b8709 .asm_8774b cp $3 jr nz, .asm_d49e7 ld a, [wXCoord] - cp $c + cp 12 jp z, Museum1FScript_5c1f9 .asm_d49e7 CheckEvent EVENT_BOUGHT_MUSEUM_TICKET diff --git a/scripts/OaksLab.asm b/scripts/OaksLab.asm index 9d60cc19..0eab35aa 100755 --- a/scripts/OaksLab.asm +++ b/scripts/OaksLab.asm @@ -152,7 +152,7 @@ OaksLabScript5: OaksLabScript6: ld a, [wYCoord] - cp $6 + cp 6 ret nz ld a, $5 ldh [hSpriteIndex], a @@ -200,7 +200,7 @@ OaksLabScript8: .Charmander ld de, .MiddleBallMovement1 ld a, [wYCoord] - cp $4 ; is the player standing below the table? + cp 4 ; is the player standing below the table? jr z, .moveBlue ld de, .MiddleBallMovement2 jr .moveBlue @@ -224,7 +224,7 @@ OaksLabScript8: .Squirtle ld de, .RightBallMovement1 ld a, [wYCoord] - cp $4 ; is the player standing below the table? + cp 4 ; is the player standing below the table? jr z, .moveBlue ld de, .RightBallMovement2 jr .moveBlue @@ -250,7 +250,7 @@ OaksLabScript8: .Bulbasaur ld de, .LeftBallMovement1 ld a, [wXCoord] - cp $9 ; is the player standing to the right of the table? + cp 9 ; is the player standing to the right of the table? jr nz, .moveBlue push hl ld a, $1 @@ -341,7 +341,7 @@ OaksLabScript9: OaksLabScript10: ld a, [wYCoord] - cp $6 + cp 6 ret nz ld a, $1 ldh [hSpriteIndex], a @@ -447,7 +447,7 @@ OaksLabScript13: ld de, .RivalExitMovement call MoveSprite ld a, [wXCoord] - cp $4 + cp 4 ; move left or right depending on where the player is standing jr nz, .moveLeft ld a, NPC_MOVEMENT_RIGHT @@ -489,7 +489,7 @@ OaksLabScript14: cp $5 jr nz, .turnPlayerDown ld a, [wXCoord] - cp $4 + cp 4 jr nz, .turnPlayerLeft ld a, SPRITE_FACING_RIGHT ld [wSpritePlayerStateData1FacingDirection], a @@ -673,30 +673,30 @@ OaksLabScript_RemoveParcel: OaksLabScript_1d02b: ld a, $7c ldh [hSpriteScreenYCoord], a - ld a, $8 + ld a, 8 ldh [hSpriteMapXCoord], a ld a, [wYCoord] - cp $3 + cp 3 jr nz, .asm_1d045 ld a, $4 ld [wNPCMovementDirections2Index], a ld a, $30 - ld b, $b + ld b, 11 jr .asm_1d068 .asm_1d045 - cp $1 + cp 1 jr nz, .asm_1d054 ld a, $2 ld [wNPCMovementDirections2Index], a ld a, $30 - ld b, $9 + ld b, 9 jr .asm_1d068 .asm_1d054 ld a, $3 ld [wNPCMovementDirections2Index], a - ld b, $a + ld b, 10 ld a, [wXCoord] - cp $4 + cp 4 jr nz, .asm_1d066 ld a, $40 jr .asm_1d068 diff --git a/scripts/PewterCity.asm b/scripts/PewterCity.asm index f44d2de5..221834de 100755 --- a/scripts/PewterCity.asm +++ b/scripts/PewterCity.asm @@ -65,9 +65,9 @@ PewterCityScript1: ldh [hSpriteScreenYCoord], a ld a, $30 ldh [hSpriteScreenXCoord], a - ld a, $c + ld a, 12 ldh [hSpriteMapYCoord], a - ld a, $11 + ld a, 17 ldh [hSpriteMapXCoord], a ld a, $3 ld [wSpriteIndex], a @@ -133,9 +133,9 @@ PewterCityScript4: ldh [hSpriteScreenYCoord], a ld a, $40 ldh [hSpriteScreenXCoord], a - ld a, $16 + ld a, 22 ldh [hSpriteMapYCoord], a - ld a, $10 + ld a, 16 ldh [hSpriteMapXCoord], a ld a, $5 ld [wSpriteIndex], a diff --git a/scripts/Route22Gate.asm b/scripts/Route22Gate.asm index 78143481..5acc343c 100755 --- a/scripts/Route22Gate.asm +++ b/scripts/Route22Gate.asm @@ -4,7 +4,7 @@ Route22Gate_Script: ld a, [wRoute22GateCurScript] call CallFunctionInTable ld a, [wYCoord] - cp $4 + cp 4 ld a, ROUTE_23 jr c, .asm_1e69a ld a, ROUTE_22 diff --git a/scripts/SSAnne2F.asm b/scripts/SSAnne2F.asm index b9f15b56..d15ec180 100755 --- a/scripts/SSAnne2F.asm +++ b/scripts/SSAnne2F.asm @@ -71,7 +71,7 @@ CoordsData_61411: SSAnne2Script_61416: ld a, [wXCoord] - cp $25 + cp 37 jr nz, .asm_61426 ld a, PLAYER_DIR_LEFT ld [wPlayerMovingDirection], a @@ -134,7 +134,7 @@ SSAnne2Script2: ldh [hSpriteIndex], a call SetSpriteMovementBytesToFF ld a, [wXCoord] - cp $25 + cp 37 jr nz, .asm_61497 ld de, MovementData_614b9 jr .asm_6149a diff --git a/scripts/SeafoamIslandsB3F.asm b/scripts/SeafoamIslandsB3F.asm index d735f824..9d1093e5 100755 --- a/scripts/SeafoamIslandsB3F.asm +++ b/scripts/SeafoamIslandsB3F.asm @@ -59,10 +59,10 @@ SeafoamIslands4Script0: CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE ret z ld a, [wYCoord] - cp $8 + cp 8 ret nz ld a, [wXCoord] - cp $f + cp 15 ret nz ld hl, wSimulatedJoypadStatesEnd ld de, RLEMovement46632 @@ -94,9 +94,9 @@ SeafoamIslands4Script2: CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE ret z ld a, [wXCoord] - cp $12 + cp 18 jr z, .asm_4665e - cp $13 + cp 19 ld a, $0 jr nz, .asm_4667b ld de, RLEData_4667f diff --git a/scripts/ViridianCity.asm b/scripts/ViridianCity.asm index 543ffa97..96e58a19 100755 --- a/scripts/ViridianCity.asm +++ b/scripts/ViridianCity.asm @@ -24,10 +24,10 @@ ViridianCityScript_1900b: ret .gym_closed ld a, [wYCoord] - cp $8 + cp 8 ret nz ld a, [wXCoord] - cp $20 + cp 32 ret nz ld a, $e ldh [hSpriteIndexOrTextID], a @@ -43,10 +43,10 @@ ViridianCityScript_1903d: CheckEvent EVENT_GOT_POKEDEX ret nz ld a, [wYCoord] - cp $9 + cp 9 ret nz ld a, [wXCoord] - cp $13 + cp 19 ret nz ld a, $5 ldh [hSpriteIndexOrTextID], a -- cgit v1.3.1-sl0p