diff options
author | entrpntr <entrpntr@gmail.com> | 2020-05-22 22:58:36 -0400 |
---|---|---|
committer | entrpntr <entrpntr@gmail.com> | 2020-05-22 22:58:36 -0400 |
commit | bca9680f9afab7c1dac91be41b0a89b229c64bb1 (patch) | |
tree | 509546b8ebcd51ca023e33263fe7aca43fceb782 | |
parent | e9b07c81b0eb5d6c8456b7848e921d5ec4a4d297 (diff) |
Add engine/tilesets/tileset_anims.asm.
49 files changed, 767 insertions, 59 deletions
diff --git a/engine/tilesets/tileset_anims.asm b/engine/tilesets/tileset_anims.asm new file mode 100644 index 00000000..813965e5 --- /dev/null +++ b/engine/tilesets/tileset_anims.asm @@ -0,0 +1,750 @@ + db 0 ; unused + +DummyPredef3A: + ret + + ret ; unused + +_AnimateTileset:: +; Iterate over a given pointer array of +; animation functions (one per frame). + +; Typically in wra1, vra0 + + ld a, [wTilesetAnim] + ld e, a + ld a, [wTilesetAnim + 1] + ld d, a + + ldh a, [hTileAnimFrame] + ld l, a + inc a + ldh [hTileAnimFrame], a + + ld h, 0 + add hl, hl + add hl, hl + add hl, de + +; 2-byte parameter +; All functions take input de. + ld e, [hl] + inc hl + ld d, [hl] + inc hl + +; Function address + ld a, [hli] + ld h, [hl] + ld l, a + + jp hl + +Tileset0Anim:: +TilesetJohtoModernAnim:: +TilesetKantoAnim:: +TilesetParkAnim:: +TilesetForestAnim:: + dw vTiles2 tile $14, AnimateWaterTile + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, AnimateWaterPalette + dw NULL, WaitTileAnimation + dw NULL, AnimateFlowerTile + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, StandingTileFrame8 + dw NULL, DoneTileAnimation + +TilesetJohtoAnim: + dw vTiles2 tile $14, AnimateWaterTile + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, AnimateWaterPalette + dw NULL, WaitTileAnimation + dw NULL, AnimateFlowerTile + dw WhirlpoolFrames1, AnimateWhirlpoolTile + dw WhirlpoolFrames2, AnimateWhirlpoolTile + dw WhirlpoolFrames3, AnimateWhirlpoolTile + dw WhirlpoolFrames4, AnimateWhirlpoolTile + dw NULL, WaitTileAnimation + dw NULL, StandingTileFrame8 + dw NULL, DoneTileAnimation + +UnusedTilesetAnim_fc07e: + dw vTiles2 tile $03, WriteTileToBuffer + dw wTileAnimBuffer, ScrollTileRightLeft + dw vTiles2 tile $03, WriteTileFromBuffer + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, AnimateFlowerTile + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, DoneTileAnimation + +UnusedTilesetAnim_fc0aa: + dw vTiles2 tile $14, WriteTileToBuffer + dw wTileAnimBuffer, ScrollTileRightLeft + dw vTiles2 tile $14, WriteTileFromBuffer + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, DoneTileAnimation + +TilesetPortAnim: + dw vTiles2 tile $14, AnimateWaterTile + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, AnimateWaterPalette + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, StandingTileFrame8 + dw NULL, DoneTileAnimation + +TilesetEliteFourRoomAnim: + dw NULL, LavaBubbleAnim2 + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, LavaBubbleAnim1 + dw NULL, WaitTileAnimation + dw NULL, StandingTileFrame8 + dw NULL, DoneTileAnimation + +UnusedTilesetAnim_fc126: + dw vTiles2 tile $53, WriteTileToBuffer + dw wTileAnimBuffer, ScrollTileDown + dw wTileAnimBuffer, ScrollTileDown + dw vTiles2 tile $53, WriteTileFromBuffer + dw vTiles2 tile $03, WriteTileToBuffer + dw wTileAnimBuffer, ScrollTileRightLeft + dw vTiles2 tile $03, WriteTileFromBuffer + dw vTiles2 tile $53, WriteTileToBuffer + dw wTileAnimBuffer, ScrollTileDown + dw wTileAnimBuffer, ScrollTileDown + dw vTiles2 tile $53, WriteTileFromBuffer + dw NULL, DoneTileAnimation + +UnusedTilesetAnim_fc156: + dw vTiles2 tile $54, WriteTileToBuffer + dw wTileAnimBuffer, ScrollTileDown + dw wTileAnimBuffer, ScrollTileDown + dw vTiles2 tile $54, WriteTileFromBuffer + dw NULL, WaitTileAnimation + dw vTiles2 tile $03, WriteTileToBuffer + dw wTileAnimBuffer, ScrollTileRightLeft + dw vTiles2 tile $03, WriteTileFromBuffer + dw NULL, WaitTileAnimation + dw vTiles2 tile $54, WriteTileToBuffer + dw wTileAnimBuffer, ScrollTileDown + dw wTileAnimBuffer, ScrollTileDown + dw vTiles2 tile $54, WriteTileFromBuffer + dw NULL, DoneTileAnimation + +TilesetCaveAnim: +TilesetDarkCaveAnim: + dw vTiles2 tile $14, WriteTileToBuffer + dw NULL, FlickeringCaveEntrancePalette + dw wTileAnimBuffer, ScrollTileRightLeft + dw NULL, FlickeringCaveEntrancePalette + dw vTiles2 tile $14, WriteTileFromBuffer + dw NULL, FlickeringCaveEntrancePalette + dw NULL, AnimateWaterPalette + dw NULL, FlickeringCaveEntrancePalette + dw vTiles2 tile $40, WriteTileToBuffer + dw NULL, FlickeringCaveEntrancePalette + dw wTileAnimBuffer, ScrollTileDown + dw NULL, FlickeringCaveEntrancePalette + dw wTileAnimBuffer, ScrollTileDown + dw NULL, FlickeringCaveEntrancePalette + dw wTileAnimBuffer, ScrollTileDown + dw NULL, FlickeringCaveEntrancePalette + dw vTiles2 tile $40, WriteTileFromBuffer + dw NULL, FlickeringCaveEntrancePalette + dw NULL, DoneTileAnimation + +TilesetIcePathAnim: + dw vTiles2 tile $35, WriteTileToBuffer + dw NULL, FlickeringCaveEntrancePalette + dw wTileAnimBuffer, ScrollTileRightLeft + dw NULL, FlickeringCaveEntrancePalette + dw vTiles2 tile $35, WriteTileFromBuffer + dw NULL, FlickeringCaveEntrancePalette + dw NULL, AnimateWaterPalette + dw NULL, FlickeringCaveEntrancePalette + dw vTiles2 tile $31, WriteTileToBuffer + dw NULL, FlickeringCaveEntrancePalette + dw wTileAnimBuffer, ScrollTileDown + dw NULL, FlickeringCaveEntrancePalette + dw wTileAnimBuffer, ScrollTileDown + dw NULL, FlickeringCaveEntrancePalette + dw wTileAnimBuffer, ScrollTileDown + dw NULL, FlickeringCaveEntrancePalette + dw vTiles2 tile $31, WriteTileFromBuffer + dw NULL, FlickeringCaveEntrancePalette + dw NULL, DoneTileAnimation + +TilesetTowerAnim: + dw TowerPillarTilePointer9, AnimateTowerPillarTile + dw TowerPillarTilePointer10, AnimateTowerPillarTile + dw TowerPillarTilePointer7, AnimateTowerPillarTile + dw TowerPillarTilePointer8, AnimateTowerPillarTile + dw TowerPillarTilePointer5, AnimateTowerPillarTile + dw TowerPillarTilePointer6, AnimateTowerPillarTile + dw TowerPillarTilePointer3, AnimateTowerPillarTile + dw TowerPillarTilePointer4, AnimateTowerPillarTile + dw TowerPillarTilePointer1, AnimateTowerPillarTile + dw TowerPillarTilePointer2, AnimateTowerPillarTile + dw NULL, StandingTileFrame + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, DoneTileAnimation + dw vTiles2 tile $4f, WriteTileToBuffer + dw wTileAnimBuffer, ScrollTileRightLeft + dw vTiles2 tile $4f, WriteTileFromBuffer + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, DoneTileAnimation + +TilesetHouseAnim: +TilesetPlayersHouseAnim: +TilesetPokecenterAnim: +TilesetGateAnim: +TilesetLabAnim: +TilesetFacilityAnim: +TilesetMartAnim: +TilesetMansionAnim: +TilesetGameCornerAnim: +TilesetTraditionalHouseAnim: +TilesetTrainStationAnim: +TilesetChampionsRoomAnim: +TilesetLighthouseAnim: +TilesetPlayersRoomAnim: +TilesetRuinsOfAlphAnim: +TilesetRadioTowerAnim: +TilesetUndergroundAnim: + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, WaitTileAnimation + dw NULL, DoneTileAnimation + +DoneTileAnimation: +; Reset the animation command loop. + xor a + ldh [hTileAnimFrame], a + +WaitTileAnimation: +; Do nothing this frame. + ret + +StandingTileFrame8: + ld a, [wTileAnimationTimer] + inc a + and %111 + ld [wTileAnimationTimer], a + ret + +ScrollTileRightLeft: +; Scroll right for 4 ticks, then left for 4 ticks. + ld a, [wTileAnimationTimer] + inc a + and %111 + ld [wTileAnimationTimer], a + and %100 + jr nz, ScrollTileLeft + jr ScrollTileRight + +ScrollTileUpDown: +; Scroll up for 4 ticks, then down for 4 ticks. + ld a, [wTileAnimationTimer] + inc a + and %111 + ld [wTileAnimationTimer], a + and %100 + jr nz, ScrollTileDown + jr ScrollTileUp + +ScrollTileLeft: + ld h, d + ld l, e + ld c, 4 +.loop +rept 4 + ld a, [hl] + rlca + ld [hli], a +endr + dec c + jr nz, .loop + ret + +ScrollTileRight: + ld h, d + ld l, e + ld c, 4 +.loop +rept 4 + ld a, [hl] + rrca + ld [hli], a +endr + dec c + jr nz, .loop + ret + +ScrollTileUp: + ld h, d + ld l, e + ld d, [hl] + inc hl + ld e, [hl] + ld bc, TILE_WIDTH * 2 - 2 + add hl, bc + ld a, TILE_WIDTH / 2 +.loop + ld c, [hl] + ld [hl], e + dec hl + ld b, [hl] + ld [hl], d + dec hl + ld e, [hl] + ld [hl], c + dec hl + ld d, [hl] + ld [hl], b + dec hl + dec a + jr nz, .loop + ret + +ScrollTileDown: + ld h, d + ld l, e + ld de, TILE_WIDTH * 2 - 2 + push hl + add hl, de + ld d, [hl] + inc hl + ld e, [hl] + pop hl + ld a, TILE_WIDTH / 2 +.loop + ld b, [hl] + ld [hl], d + inc hl + ld c, [hl] + ld [hl], e + inc hl + ld d, [hl] + ld [hl], b + inc hl + ld e, [hl] + ld [hl], c + inc hl + dec a + jr nz, .loop + ret + +AnimateWaterTile: +; Draw a water tile for the current frame in VRAM tile at de. + +; Save sp in bc (see WriteTile). + ld hl, sp+0 + ld b, h + ld c, l + + ld a, [wTileAnimationTimer] + +; 4 tile graphics, updated every other frame. + and %110 + +; 2 x 8 = 16 bytes per tile + add a + add a + add a + + add LOW(WaterTileFrames) + ld l, a + ld a, 0 + adc HIGH(WaterTileFrames) + ld h, a + +; The stack now points to the start of the tile for this frame. + ld sp, hl + + ld l, e + ld h, d + + jp WriteTile + +WaterTileFrames: + INCBIN "gfx/tilesets/water/water.2bpp" + +AnimateFlowerTile: +; No parameters. + +; Save sp in bc (see WriteTile). + ld hl, sp+0 + ld b, h + ld c, l + +; Alternate tile graphic every other frame + ld a, [wTileAnimationTimer] + and %10 + +; CGB has different color mappings for flowers. + ld e, a + ldh a, [hCGB] + and 1 + add e + + swap a + ld e, a + ld d, 0 + ld hl, FlowerTileFrames + add hl, de + ld sp, hl + + ld hl, vTiles2 tile $03 + + jp WriteTile + +FlowerTileFrames: + INCBIN "gfx/tilesets/flower/dmg_1.2bpp" + INCBIN "gfx/tilesets/flower/cgb_1.2bpp" + INCBIN "gfx/tilesets/flower/dmg_2.2bpp" + INCBIN "gfx/tilesets/flower/cgb_2.2bpp" + +LavaBubbleAnim1: +; Splash in the bottom-right corner of the fountain. + ld hl, sp+0 + ld b, h + ld c, l + ld a, [wTileAnimationTimer] + and %110 + srl a + inc a + inc a + and %011 + swap a + ld e, a + ld d, 0 + ld hl, LavaBubbleFrames + add hl, de + ld sp, hl + ld hl, vTiles2 tile $5b + jp WriteTile + +LavaBubbleAnim2: +; Splash in the top-left corner of the fountain. + ld hl, sp+0 + ld b, h + ld c, l + ld a, [wTileAnimationTimer] + and %110 + add a + add a + add a + ld e, a + ld d, 0 + ld hl, LavaBubbleFrames + add hl, de + ld sp, hl + ld hl, vTiles2 tile $38 + jp WriteTile + +LavaBubbleFrames: + INCBIN "gfx/tilesets/lava/1.2bpp" + INCBIN "gfx/tilesets/lava/2.2bpp" + INCBIN "gfx/tilesets/lava/3.2bpp" + INCBIN "gfx/tilesets/lava/4.2bpp" + +AnimateTowerPillarTile: +; Read from struct at de: +; Destination (VRAM) +; Address of the first tile in the frame array + + ld hl, sp+0 + ld b, h + ld c, l + + ld a, [wTileAnimationTimer] + and %111 + +; Get frame index a + ld hl, .frames + add l + ld l, a + ld a, 0 + adc h + ld h, a + ld a, [hl] + +; Destination + ld l, e + ld h, d + ld e, [hl] + inc hl + ld d, [hl] + inc hl + +; Add the frame index to the starting address + add [hl] + inc hl + ld h, [hl] + ld l, a + ld a, 0 + adc h + ld h, a + + ld sp, hl + ld l, e + ld h, d + jr WriteTile + +.frames + db $00, $10, $20, $30, $40, $30, $20, $10 + +StandingTileFrame: + ld hl, wTileAnimationTimer + inc [hl] + ret + +AnimateWhirlpoolTile: +; Update whirlpool tile using struct at de. + +; Struct: +; VRAM address +; Address of the first tile + +; Only does one of 4 tiles at a time. + +; Save sp in bc (see WriteTile). + ld hl, sp+0 + ld b, h + ld c, l + +; de = VRAM address + ld l, e + ld h, d + ld e, [hl] + inc hl + ld d, [hl] + inc hl +; Tile address is now at hl. + +; Get the tile for this frame. + ld a, [wTileAnimationTimer] + and %11 ; 4 frames x2 + swap a ; * 16 bytes per tile + + add [hl] + inc hl + ld h, [hl] + ld l, a + ld a, 0 + adc h + ld h, a + +; The stack now points to the desired frame. + ld sp, hl + + ld l, e + ld h, d + + jr WriteTile + +WriteTileFromBuffer: +; Write tiledata at wTileAnimBuffer to de. +; wTileAnimBuffer is loaded to sp for WriteTile. + + ld hl, sp+0 + ld b, h + ld c, l + + ld hl, wTileAnimBuffer + ld sp, hl + + ld h, d + ld l, e + jr WriteTile + +WriteTileToBuffer: +; Write tiledata de to wTileAnimBuffer. +; de is loaded to sp for WriteTile. + + ld hl, sp+0 + ld b, h + ld c, l + + ld h, d + ld l, e + ld sp, hl + + ld hl, wTileAnimBuffer + + ; fallthrough + +WriteTile: +; Write one 8x8 tile ($10 bytes) from sp to hl. + +; Warning: sp is saved in bc so we can abuse pop. +; sp is restored to address bc. Save sp in bc before calling. + + pop de + ld [hl], e + inc hl + ld [hl], d + +rept 7 + pop de + inc hl + ld [hl], e + inc hl + ld [hl], d +endr + +; restore sp + ld h, b + ld l, c + ld sp, hl + ret + +AnimateWaterPalette: +; Transition between color values 0-2 for color 0 in palette 3. + +; No palette changes on DMG. + ldh a, [hCGB] + and a + ret z + +; We don't want to mess with non-standard palettes. + ldh a, [rBGP] ; BGP + cp %11100100 + ret nz + +; Only update on even frames. + ld a, [wTileAnimationTimer] + ld l, a + and 1 ; odd + ret nz + +; Ready for BGPD input... + + ld a, (1 << rBGPI_AUTO_INCREMENT) palette PAL_BG_WATER + ldh [rBGPI], a + +; Update color 0 in order 0 1 2 1 + ld a, l + and %110 ; frames 0 2 4 6 + jr z, .color0 + cp %100 ; frame 4 + jr z, .color2 + +.color1 + ld hl, wBGPals1 palette PAL_BG_WATER color 1 + ld a, [hli] + ldh [rBGPD], a + ld a, [hli] + ldh [rBGPD], a + ret + +.color0 + ld hl, wBGPals1 palette PAL_BG_WATER color 0 + ld a, [hli] + ldh [rBGPD], a + ld a, [hli] + ldh [rBGPD], a + ret + +.color2 + ld hl, wBGPals1 palette PAL_BG_WATER color 2 + ld a, [hli] + ldh [rBGPD], a + ld a, [hli] + ldh [rBGPD], a + ret + +FlickeringCaveEntrancePalette: +; No palette changes on DMG. + ldh a, [hCGB] + and a + ret z +; We don't want to mess with non-standard palettes. + ldh a, [rBGP] + cp %11100100 + ret nz +; We only want to be here if we're in a dark cave. + ld a, [wTimeOfDayPalset] + cp %11111111 ; 3,3,3,3 + ret nz + +; Ready for BGPD input... + ld a, (1 << rBGPI_AUTO_INCREMENT) palette PAL_BG_YELLOW + ldh [rBGPI], a + ldh a, [hVBlankCounter] + and %10 + jr nz, .bit1set + ld hl, wBGPals1 palette PAL_BG_YELLOW + jr .okay + +.bit1set + ld hl, wBGPals1 palette PAL_BG_YELLOW color 1 + +.okay + ld a, [hli] + ldh [rBGPD], a + ld a, [hli] + ldh [rBGPD], a + ret + +TowerPillarTilePointer1: dw vTiles2 tile $2d, TowerPillarTile1 +TowerPillarTilePointer2: dw vTiles2 tile $2f, TowerPillarTile2 +TowerPillarTilePointer3: dw vTiles2 tile $3d, TowerPillarTile3 +TowerPillarTilePointer4: dw vTiles2 tile $3f, TowerPillarTile4 +TowerPillarTilePointer5: dw vTiles2 tile $3c, TowerPillarTile5 +TowerPillarTilePointer6: dw vTiles2 tile $2c, TowerPillarTile6 +TowerPillarTilePointer7: dw vTiles2 tile $4d, TowerPillarTile7 +TowerPillarTilePointer8: dw vTiles2 tile $4f, TowerPillarTile8 +TowerPillarTilePointer9: dw vTiles2 tile $5d, TowerPillarTile9 +TowerPillarTilePointer10: dw vTiles2 tile $5f, TowerPillarTile10 + +TowerPillarTile1: INCBIN "gfx/tilesets/tower-pillar/1.2bpp" +TowerPillarTile2: INCBIN "gfx/tilesets/tower-pillar/2.2bpp" +TowerPillarTile3: INCBIN "gfx/tilesets/tower-pillar/3.2bpp" +TowerPillarTile4: INCBIN "gfx/tilesets/tower-pillar/4.2bpp" +TowerPillarTile5: INCBIN "gfx/tilesets/tower-pillar/5.2bpp" +TowerPillarTile6: INCBIN "gfx/tilesets/tower-pillar/6.2bpp" +TowerPillarTile7: INCBIN "gfx/tilesets/tower-pillar/7.2bpp" +TowerPillarTile8: INCBIN "gfx/tilesets/tower-pillar/8.2bpp" +TowerPillarTile9: INCBIN "gfx/tilesets/tower-pillar/9.2bpp" +TowerPillarTile10: INCBIN "gfx/tilesets/tower-pillar/10.2bpp" + +WhirlpoolFrames1: dw vTiles2 tile $32, WhirlpoolTiles1 +WhirlpoolFrames2: dw vTiles2 tile $33, WhirlpoolTiles2 +WhirlpoolFrames3: dw vTiles2 tile $42, WhirlpoolTiles3 +WhirlpoolFrames4: dw vTiles2 tile $43, WhirlpoolTiles4 + +WhirlpoolTiles1: INCBIN "gfx/tilesets/whirlpool/1.2bpp" +WhirlpoolTiles2: INCBIN "gfx/tilesets/whirlpool/2.2bpp" +WhirlpoolTiles3: INCBIN "gfx/tilesets/whirlpool/3.2bpp" +WhirlpoolTiles4: INCBIN "gfx/tilesets/whirlpool/4.2bpp" diff --git a/gfx/tilesets/flower/cgb_1.2bpp b/gfx/tilesets/flower/cgb_1.2bpp new file mode 100644 index 00000000..ffe58b93 --- /dev/null +++ b/gfx/tilesets/flower/cgb_1.2bpp @@ -0,0 +1 @@ +¢M’-mL²A¼²HE0
\ No newline at end of file diff --git a/gfx/tilesets/flower/cgb_1.png b/gfx/tilesets/flower/cgb_1.png Binary files differnew file mode 100644 index 00000000..e3fd2867 --- /dev/null +++ b/gfx/tilesets/flower/cgb_1.png diff --git a/gfx/tilesets/flower/cgb_2.2bpp b/gfx/tilesets/flower/cgb_2.2bpp new file mode 100644 index 00000000..5cf6b583 --- /dev/null +++ b/gfx/tilesets/flower/cgb_2.2bpp @@ -0,0 +1 @@ +¢Y$¤Z%Z˜f%Zš$E
\ No newline at end of file diff --git a/gfx/tilesets/flower/cgb_2.png b/gfx/tilesets/flower/cgb_2.png Binary files differnew file mode 100644 index 00000000..901e34a1 --- /dev/null +++ b/gfx/tilesets/flower/cgb_2.png diff --git a/gfx/tilesets/flower/dmg_1.2bpp b/gfx/tilesets/flower/dmg_1.2bpp new file mode 100644 index 00000000..ec9e9c6d --- /dev/null +++ b/gfx/tilesets/flower/dmg_1.2bpp @@ -0,0 +1 @@ +¢AŒ!a ’1Œ‚HE0
\ No newline at end of file diff --git a/gfx/tilesets/flower/dmg_1.png b/gfx/tilesets/flower/dmg_1.png Binary files differnew file mode 100644 index 00000000..428514af --- /dev/null +++ b/gfx/tilesets/flower/dmg_1.png diff --git a/gfx/tilesets/flower/dmg_2.2bpp b/gfx/tilesets/flower/dmg_2.2bpp new file mode 100644 index 00000000..7bf87eab --- /dev/null +++ b/gfx/tilesets/flower/dmg_2.2bpp @@ -0,0 +1 @@ +¢A$˜BB€fZ‚$E
\ No newline at end of file diff --git a/gfx/tilesets/flower/dmg_2.png b/gfx/tilesets/flower/dmg_2.png Binary files differnew file mode 100644 index 00000000..9a512501 --- /dev/null +++ b/gfx/tilesets/flower/dmg_2.png diff --git a/gfx/tilesets/lava/1.2bpp b/gfx/tilesets/lava/1.2bpp Binary files differnew file mode 100644 index 00000000..d25f1bad --- /dev/null +++ b/gfx/tilesets/lava/1.2bpp diff --git a/gfx/tilesets/lava/1.png b/gfx/tilesets/lava/1.png Binary files differnew file mode 100644 index 00000000..c5b500cc --- /dev/null +++ b/gfx/tilesets/lava/1.png diff --git a/gfx/tilesets/lava/2.2bpp b/gfx/tilesets/lava/2.2bpp Binary files differnew file mode 100644 index 00000000..bdb3c8cf --- /dev/null +++ b/gfx/tilesets/lava/2.2bpp diff --git a/gfx/tilesets/lava/2.png b/gfx/tilesets/lava/2.png Binary files differnew file mode 100644 index 00000000..1512e35a --- /dev/null +++ b/gfx/tilesets/lava/2.png diff --git a/gfx/tilesets/lava/3.2bpp b/gfx/tilesets/lava/3.2bpp Binary files differnew file mode 100644 index 00000000..2016d2bd --- /dev/null +++ b/gfx/tilesets/lava/3.2bpp diff --git a/gfx/tilesets/lava/3.png b/gfx/tilesets/lava/3.png Binary files differnew file mode 100644 index 00000000..449c2a31 --- /dev/null +++ b/gfx/tilesets/lava/3.png diff --git a/gfx/tilesets/lava/4.2bpp b/gfx/tilesets/lava/4.2bpp Binary files differnew file mode 100644 index 00000000..e0142c68 --- /dev/null +++ b/gfx/tilesets/lava/4.2bpp diff --git a/gfx/tilesets/lava/4.png b/gfx/tilesets/lava/4.png Binary files differnew file mode 100644 index 00000000..8e4c8e0e --- /dev/null +++ b/gfx/tilesets/lava/4.png diff --git a/gfx/tilesets/tower-pillar/1.2bpp b/gfx/tilesets/tower-pillar/1.2bpp new file mode 100644 index 00000000..3bb46c95 --- /dev/null +++ b/gfx/tilesets/tower-pillar/1.2bpp @@ -0,0 +1 @@ +€ÿ¿ÿ¿ÿ¿ÿ¿ÿ¿ÿ¿ÿ¿ÿÀ_ÿ_ßßßßßà?/ÿ/?ï?¯ï?¯ï?ðÿ÷·_÷—÷øÿë»Oû›oû
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/1.png b/gfx/tilesets/tower-pillar/1.png Binary files differnew file mode 100644 index 00000000..c22fb2a1 --- /dev/null +++ b/gfx/tilesets/tower-pillar/1.png diff --git a/gfx/tilesets/tower-pillar/10.2bpp b/gfx/tilesets/tower-pillar/10.2bpp new file mode 100644 index 00000000..a1af10a5 --- /dev/null +++ b/gfx/tilesets/tower-pillar/10.2bpp @@ -0,0 +1 @@ +?ÿ_ÿ¿ÿ_ÿ¿ÿÿÿÿÿÿÿÿ¯ÿ_ÿ¯ÿ_ÿÿÿÿÿÿÿÿWÿ¯ÿ×ÿ¯ÿÿÿÿÿÿÿ«ÿWÿëÿWÿ¿ÿÿÿÿÿÿUÿ«ÿuÿ«ÿßÿÿÿÿÿ
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/10.png b/gfx/tilesets/tower-pillar/10.png Binary files differnew file mode 100644 index 00000000..01dbe1af --- /dev/null +++ b/gfx/tilesets/tower-pillar/10.png diff --git a/gfx/tilesets/tower-pillar/2.2bpp b/gfx/tilesets/tower-pillar/2.2bpp new file mode 100644 index 00000000..08d8cfd7 --- /dev/null +++ b/gfx/tilesets/tower-pillar/2.2bpp @@ -0,0 +1 @@ +ðÐÿÐðßðÙößðßðÞñøèÿèøïøéþïøïøîùüôÿôü÷üõþ÷ü÷üöýþúÿúþûþûþûþûþúÿÿýÿýÿýÿýÿýÿýÿýÿ
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/2.png b/gfx/tilesets/tower-pillar/2.png Binary files differnew file mode 100644 index 00000000..76fae403 --- /dev/null +++ b/gfx/tilesets/tower-pillar/2.png diff --git a/gfx/tilesets/tower-pillar/3.2bpp b/gfx/tilesets/tower-pillar/3.2bpp new file mode 100644 index 00000000..e4bb79a4 --- /dev/null +++ b/gfx/tilesets/tower-pillar/3.2bpp @@ -0,0 +1 @@ +¿ÿ¿ÿ¿ÿ¿ÿ¿ÿ¿ÿ¿ÿ¿ÿß_ÿ_ßßßßßï?/ÿ/?ï?¯ï?¯ï?÷ÿ÷·_÷—÷ûÿë»Oû›oû
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/3.png b/gfx/tilesets/tower-pillar/3.png Binary files differnew file mode 100644 index 00000000..80ce4657 --- /dev/null +++ b/gfx/tilesets/tower-pillar/3.png diff --git a/gfx/tilesets/tower-pillar/4.2bpp b/gfx/tilesets/tower-pillar/4.2bpp new file mode 100644 index 00000000..08897f1d --- /dev/null +++ b/gfx/tilesets/tower-pillar/4.2bpp @@ -0,0 +1 @@ +ßðØ÷ÐðßðÙößðßðÞñïøèÿèøïøéþïøïøîù÷üôÿôü÷üõþ÷ü÷üöýûþúÿúþûþûþûþûþúÿýÿýÿýÿýÿýÿýÿýÿýÿ
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/4.png b/gfx/tilesets/tower-pillar/4.png Binary files differnew file mode 100644 index 00000000..9d523c4b --- /dev/null +++ b/gfx/tilesets/tower-pillar/4.png diff --git a/gfx/tilesets/tower-pillar/5.2bpp b/gfx/tilesets/tower-pillar/5.2bpp new file mode 100644 index 00000000..f66926ba --- /dev/null +++ b/gfx/tilesets/tower-pillar/5.2bpp @@ -0,0 +1 @@ +¿ÿ¿ÿ¿ÿ¿ÿ¿ÿ¿ÿ¿ÿ¿ÿß_ÿ_ÿßÿßÿßÿßÿßÿï?/ÿoÿ¯ÿïÿïÿïÿïÿ÷ÿWÿ·ÿ÷ÿ÷ÿ÷ÿ÷ÿûÿ[ÿ«ÿûÿûÿûÿûÿ
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/5.png b/gfx/tilesets/tower-pillar/5.png Binary files differnew file mode 100644 index 00000000..b7796c8d --- /dev/null +++ b/gfx/tilesets/tower-pillar/5.png diff --git a/gfx/tilesets/tower-pillar/6.2bpp b/gfx/tilesets/tower-pillar/6.2bpp new file mode 100644 index 00000000..5021b1c1 --- /dev/null +++ b/gfx/tilesets/tower-pillar/6.2bpp @@ -0,0 +1 @@ +ßðØÿÕÿÚÿßÿßÿßÿßÿïøèÿíÿêÿïÿïÿïÿïÿ÷üôÿõÿöÿ÷ÿ÷ÿ÷ÿ÷ÿûþúÿûÿúÿûÿûÿûÿûÿýÿýÿýÿýÿýÿýÿýÿýÿ
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/6.png b/gfx/tilesets/tower-pillar/6.png Binary files differnew file mode 100644 index 00000000..0ca0e593 --- /dev/null +++ b/gfx/tilesets/tower-pillar/6.png diff --git a/gfx/tilesets/tower-pillar/7.2bpp b/gfx/tilesets/tower-pillar/7.2bpp new file mode 100644 index 00000000..59d6876a --- /dev/null +++ b/gfx/tilesets/tower-pillar/7.2bpp @@ -0,0 +1 @@ +€ÿ‚ý¢Ý ߀ÿ„û„û€ÿÀÿÁþÑîÐïÀÿÂýÂýÀÿàÿàÿè÷è÷àÿáþáþàÿðÿðÿôûôûðÿðÿðÿðÿøÿøÿúýúýøÿøÿøÿøÿ
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/7.png b/gfx/tilesets/tower-pillar/7.png Binary files differnew file mode 100644 index 00000000..3aa4b4e9 --- /dev/null +++ b/gfx/tilesets/tower-pillar/7.png diff --git a/gfx/tilesets/tower-pillar/8.2bpp b/gfx/tilesets/tower-pillar/8.2bpp new file mode 100644 index 00000000..bb22068b --- /dev/null +++ b/gfx/tilesets/tower-pillar/8.2bpp @@ -0,0 +1 @@ +ÿ?ß?ßÿÿ_¿_¿ÿÿïïÿÿ/ß/ßÿÿ÷÷ÿÿïïÿÿûûÿÿ÷÷ÿÿýýÿÿûûÿ
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/8.png b/gfx/tilesets/tower-pillar/8.png Binary files differnew file mode 100644 index 00000000..e8147561 --- /dev/null +++ b/gfx/tilesets/tower-pillar/8.png diff --git a/gfx/tilesets/tower-pillar/9.2bpp b/gfx/tilesets/tower-pillar/9.2bpp new file mode 100644 index 00000000..1c206fb7 --- /dev/null +++ b/gfx/tilesets/tower-pillar/9.2bpp @@ -0,0 +1 @@ + ÿÅÿªÿÝÿêÿÝÿÿÿÿÿÐÿâÿÕÿîÿõÿîÿÿÿÿÿèÿñÿêÿ÷ÿúÿ÷ÿÿÿÿÿôÿøÿõÿûÿýÿûÿÿÿÿÿúÿüÿúÿýÿþÿýÿÿÿÿÿ
\ No newline at end of file diff --git a/gfx/tilesets/tower-pillar/9.png b/gfx/tilesets/tower-pillar/9.png Binary files differnew file mode 100644 index 00000000..da74607b --- /dev/null +++ b/gfx/tilesets/tower-pillar/9.png diff --git a/gfx/tilesets/water/water.2bpp b/gfx/tilesets/water/water.2bpp Binary files differnew file mode 100644 index 00000000..a6e9f6ac --- /dev/null +++ b/gfx/tilesets/water/water.2bpp diff --git a/gfx/tilesets/water/water.png b/gfx/tilesets/water/water.png Binary files differnew file mode 100644 index 00000000..0aa2640c --- /dev/null +++ b/gfx/tilesets/water/water.png diff --git a/gfx/tilesets/whirlpool/1.2bpp b/gfx/tilesets/whirlpool/1.2bpp Binary files differnew file mode 100644 index 00000000..0a58c6b2 --- /dev/null +++ b/gfx/tilesets/whirlpool/1.2bpp diff --git a/gfx/tilesets/whirlpool/1.png b/gfx/tilesets/whirlpool/1.png Binary files differnew file mode 100644 index 00000000..4641dbc0 --- /dev/null +++ b/gfx/tilesets/whirlpool/1.png diff --git a/gfx/tilesets/whirlpool/2.2bpp b/gfx/tilesets/whirlpool/2.2bpp Binary files differnew file mode 100644 index 00000000..e1f841cf --- /dev/null +++ b/gfx/tilesets/whirlpool/2.2bpp diff --git a/gfx/tilesets/whirlpool/2.png b/gfx/tilesets/whirlpool/2.png Binary files differnew file mode 100644 index 00000000..ce542405 --- /dev/null +++ b/gfx/tilesets/whirlpool/2.png diff --git a/gfx/tilesets/whirlpool/3.2bpp b/gfx/tilesets/whirlpool/3.2bpp Binary files differnew file mode 100644 index 00000000..9cdec833 --- /dev/null +++ b/gfx/tilesets/whirlpool/3.2bpp diff --git a/gfx/tilesets/whirlpool/3.png b/gfx/tilesets/whirlpool/3.png Binary files differnew file mode 100644 index 00000000..55b62944 --- /dev/null +++ b/gfx/tilesets/whirlpool/3.png diff --git a/gfx/tilesets/whirlpool/4.2bpp b/gfx/tilesets/whirlpool/4.2bpp Binary files differnew file mode 100644 index 00000000..414acce0 --- /dev/null +++ b/gfx/tilesets/whirlpool/4.2bpp diff --git a/gfx/tilesets/whirlpool/4.png b/gfx/tilesets/whirlpool/4.png Binary files differnew file mode 100644 index 00000000..2175c595 --- /dev/null +++ b/gfx/tilesets/whirlpool/4.png @@ -829,49 +829,8 @@ DoBadgeTypeBoosts:: SECTION "bank3f", ROMX - nop -DummyPredef3A:: +INCLUDE "engine/tilesets/tileset_anims.asm" ret - ret -_AnimateTileset:: - dr $fc003, $fc01e -Tileset0Anim:: -TilesetJohtoModernAnim:: -TilesetKantoAnim:: -TilesetParkAnim:: -TilesetForestAnim:: - dr $fc01e, $fc04a -TilesetJohtoAnim:: - dr $fc04a, $fc0d6 -TilesetPortAnim:: - dr $fc0d6, $fc106 -TilesetEliteFourRoomAnim:: - dr $fc106, $fc18e -TilesetCaveAnim:: -TilesetDarkCaveAnim:: - dr $fc18e, $fc1da -TilesetIcePathAnim:: - dr $fc1da, $fc226 -TilesetTowerAnim:: - dr $fc226, $fc28e -TilesetHouseAnim:: -TilesetPlayersHouseAnim:: -TilesetPokecenterAnim:: -TilesetGateAnim:: -TilesetLabAnim:: -TilesetFacilityAnim:: -TilesetMartAnim:: -TilesetMansionAnim:: -TilesetGameCornerAnim:: -TilesetTraditionalHouseAnim:: -TilesetTrainStationAnim:: -TilesetChampionsRoomAnim:: -TilesetLighthouseAnim:: -TilesetPlayersRoomAnim:: -TilesetRuinsOfAlphAnim:: -TilesetRadioTowerAnim:: -TilesetUndergroundAnim:: - dr $fc28e, $fc9ae NPCTrade:: dr $fc9ae, $fcd87 MomTriesToBuySomething:: @@ -971,22 +971,7 @@ wAttrmap:: ; ccd9 ds SCREEN_WIDTH * SCREEN_HEIGHT wAttrmapEnd:: -wce41:: ds 1 ; ce41 -wce42:: ds 1 ; ce42 -wce43:: ds 1 ; ce43 -wce44:: ds 1 ; ce44 -wce45:: ds 1 ; ce45 -wce46:: ds 1 ; ce46 -wce47:: ds 1 ; ce47 -wce48:: ds 1 ; ce48 -wce49:: ds 1 ; ce49 -wce4a:: ds 1 ; ce4a -wce4b:: ds 1 ; ce4b -wce4c:: ds 1 ; ce4c -wce4d:: ds 1 ; ce4d -wce4e:: ds 1 ; ce4e -wce4f:: ds 1 ; ce4f -wce50:: ds 1 ; ce50 +wTileAnimBuffer:: ds 1 tiles ; ce41 wOtherPlayerLinkMode:: db ; ce51 wOtherPlayerLinkAction:: ; ce52 @@ -1482,7 +1467,7 @@ ENDU ; cf40 wPlaceBallsX:: db ; cf40 wPlaceBallsY:: db ; cf41 -wcf42:: ds 1 ; cf42 +wTileAnimationTimer:: db ; cf42 ; palette backups? wBGP:: db |