diff options
Diffstat (limited to 'data/sprites')
-rw-r--r-- | data/sprites/facings.asm | 175 | ||||
-rw-r--r-- | data/sprites/sprites.asm | 16 |
2 files changed, 134 insertions, 57 deletions
diff --git a/data/sprites/facings.asm b/data/sprites/facings.asm index eb583d53..d3455d74 100644 --- a/data/sprites/facings.asm +++ b/data/sprites/facings.asm @@ -1,59 +1,126 @@ SpriteFacingAndAnimationTable: ; This table is used for overworld sprites $1-$9. - dw .StandingDown, .NormalOAM ; facing down, walk animation frame 0 - dw .WalkingDown, .NormalOAM ; facing down, walk animation frame 1 - dw .StandingDown, .NormalOAM ; facing down, walk animation frame 2 - dw .WalkingDown, .FlippedOAM ; facing down, walk animation frame 3 - dw .StandingUp, .NormalOAM ; facing up, walk animation frame 0 - dw .WalkingUp, .NormalOAM ; facing up, walk animation frame 1 - dw .StandingUp, .NormalOAM ; facing up, walk animation frame 2 - dw .WalkingUp, .FlippedOAM ; facing up, walk animation frame 3 - dw .StandingLeft, .NormalOAM ; facing left, walk animation frame 0 - dw .WalkingLeft, .NormalOAM ; facing left, walk animation frame 1 - dw .StandingLeft, .NormalOAM ; facing left, walk animation frame 2 - dw .WalkingLeft, .NormalOAM ; facing left, walk animation frame 3 - dw .StandingLeft, .FlippedOAM ; facing right, walk animation frame 0 - dw .WalkingLeft, .FlippedOAM ; facing right, walk animation frame 1 - dw .StandingLeft, .FlippedOAM ; facing right, walk animation frame 2 - dw .WalkingLeft, .FlippedOAM ; facing right, walk animation frame 3 + dw .StandingDown ; facing down, walk animation frame 0 + dw .WalkingDown ; facing down, walk animation frame 1 + dw .StandingDown ; facing down, walk animation frame 2 + dw .WalkingDown2 ; facing down, walk animation frame 3 + dw .StandingUp ; facing up, walk animation frame 0 + dw .WalkingUp ; facing up, walk animation frame 1 + dw .StandingUp ; facing up, walk animation frame 2 + dw .WalkingUp2 ; facing up, walk animation frame 3 + dw .StandingLeft ; facing left, walk animation frame 0 + dw .WalkingLeft ; facing left, walk animation frame 1 + dw .StandingLeft ; facing left, walk animation frame 2 + dw .WalkingLeft ; facing left, walk animation frame 3 + dw .StandingRight ; facing right, walk animation frame 0 + dw .WalkingRight ; facing right, walk animation frame 1 + dw .StandingRight ; facing right, walk animation frame 2 + dw .WalkingRight ; facing right, walk animation frame 3 ; The rest of this table is used for sprites $a and $b. ; All orientation and animation parameters lead to the same result. ; Used for immobile sprites like items on the ground. - dw .StandingDown, .NormalOAM ; facing down, walk animation frame 0 - dw .StandingDown, .NormalOAM ; facing down, walk animation frame 1 - dw .StandingDown, .NormalOAM ; facing down, walk animation frame 2 - dw .StandingDown, .NormalOAM ; facing down, walk animation frame 3 - dw .StandingDown, .NormalOAM ; facing up, walk animation frame 0 - dw .StandingDown, .NormalOAM ; facing up, walk animation frame 1 - dw .StandingDown, .NormalOAM ; facing up, walk animation frame 2 - dw .StandingDown, .NormalOAM ; facing up, walk animation frame 3 - dw .StandingDown, .NormalOAM ; facing left, walk animation frame 0 - dw .StandingDown, .NormalOAM ; facing left, walk animation frame 1 - dw .StandingDown, .NormalOAM ; facing left, walk animation frame 2 - dw .StandingDown, .NormalOAM ; facing left, walk animation frame 3 - dw .StandingDown, .NormalOAM ; facing right, walk animation frame 0 - dw .StandingDown, .NormalOAM ; facing right, walk animation frame 1 - dw .StandingDown, .NormalOAM ; facing right, walk animation frame 2 - dw .StandingDown, .NormalOAM ; facing right, walk animation frame 3 - -; four tile ids compose an overworld sprite -.StandingDown: db $00, $01, $02, $03 -.WalkingDown: db $80, $81, $82, $83 -.StandingUp: db $04, $05, $06, $07 -.WalkingUp: db $84, $85, $86, $87 -.StandingLeft: db $08, $09, $0a, $0b -.WalkingLeft: db $88, $89, $8a, $8b - -.NormalOAM: - ; y, x, attributes - db 0, 0, $00 ; top left - db 0, 8, $00 ; top right - db 8, 0, OAMFLAG_CANBEMASKED ; bottom left - db 8, 8, OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA ; bottom right - -.FlippedOAM: - ; y, x, attributes - db 0, 8, OAM_HFLIP ; top left - db 0, 0, OAM_HFLIP ; top right - db 8, 8, OAM_HFLIP | OAMFLAG_CANBEMASKED ; bottom left - db 8, 0, OAM_HFLIP | OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA ; bottom right + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown + dw .StandingDown +; special case + dw .SpecialCase ; pikachu maybe? + +; Tables used as a reference to transform OAM data. + +; Format: +; db y, x, attributes, tile index + +.StandingDown: + db 4 ; # + db 0, 0, $00, 0 + db 0, 8, $01, 0 + db 8, 0, $02, OAMFLAG_CANBEMASKED + db 8, 8, $03, OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.WalkingDown: + db 4 ; # + db 0, 0, $80, 0 + db 0, 8, $81, 0 + db 8, 0, $82, OAMFLAG_CANBEMASKED + db 8, 8, $83, OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.WalkingDown2: + db 4 ; # + db 0, 8, $80, OAM_HFLIP + db 0, 0, $81, OAM_HFLIP + db 8, 8, $82, OAM_HFLIP | OAMFLAG_CANBEMASKED + db 8, 0, $83, OAM_HFLIP | OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.StandingUp: + db 4 ; # + db 0, 0, $04, 0 + db 0, 8, $05, 0 + db 8, 0, $06, OAMFLAG_CANBEMASKED + db 8, 8, $07, OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.WalkingUp: + db 4 ; # + db 0, 0, $84, 0 + db 0, 8, $85, 0 + db 8, 0, $86, OAMFLAG_CANBEMASKED + db 8, 8, $87, OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.WalkingUp2: + db 4 ; # + db 0, 8, $84, OAM_HFLIP + db 0, 0, $85, OAM_HFLIP + db 8, 8, $86, OAM_HFLIP | OAMFLAG_CANBEMASKED + db 8, 0, $87, OAM_HFLIP | OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.StandingLeft: + db 4 ; # + db 0, 0, $08, 0 + db 0, 8, $09, 0 + db 8, 0, $0a, OAMFLAG_CANBEMASKED + db 8, 8, $0b, OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.WalkingLeft: + db 4 ; # + db 0, 0, $88, 0 + db 0, 8, $89, 0 + db 8, 0, $8a, OAMFLAG_CANBEMASKED + db 8, 8, $8b, OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.StandingRight: + db 4 ; # + db 0, 8, $08, OAM_HFLIP + db 0, 0, $09, OAM_HFLIP + db 8, 8, $0a, OAM_HFLIP | OAMFLAG_CANBEMASKED + db 8, 0, $0b, OAM_HFLIP | OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.WalkingRight: + db 4 ; # + db 0, 8, $88, OAM_HFLIP + db 0, 0, $89, OAM_HFLIP + db 8, 8, $8a, OAM_HFLIP | OAMFLAG_CANBEMASKED + db 8, 0, $8b, OAM_HFLIP | OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA + +.SpecialCase: + db 9 ; # + db -4, -4, $00, 0 + db -4, 4, $01, 0 + db -4, 12, $00, OAM_HFLIP + db 4, -4, $01, 0 + db 4, 4, $02, 0 + db 4, 12, $01, 0 + db 12, -4, $00, OAM_VFLIP | OAMFLAG_CANBEMASKED + db 12, 4, $01, OAMFLAG_CANBEMASKED + db 12, 12, $00, OAM_VFLIP | OAM_HFLIP | OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA diff --git a/data/sprites/sprites.asm b/data/sprites/sprites.asm index 1cd793c1..47b52b1c 100644 --- a/data/sprites/sprites.asm +++ b/data/sprites/sprites.asm @@ -37,7 +37,7 @@ SpriteSheetPointerTable: overworld_sprite MiddleAgedWomanSprite, 12 ; SPRITE_MIDDLE_AGED_WOMAN overworld_sprite BrunetteGirlSprite, 12 ; SPRITE_BRUNETTE_GIRL overworld_sprite LanceSprite, 12 ; SPRITE_LANCE - overworld_sprite ScientistSprite, 12 ; SPRITE_UNUSED_SCIENTIST + overworld_sprite RedSprite, 12 ; SPRITE_UNUSED_RED_1 overworld_sprite ScientistSprite, 12 ; SPRITE_SCIENTIST overworld_sprite RockerSprite, 12 ; SPRITE_ROCKER overworld_sprite SwimmerSprite, 12 ; SPRITE_SWIMMER @@ -56,17 +56,27 @@ SpriteSheetPointerTable: overworld_sprite FisherSprite, 12 ; SPRITE_FISHER overworld_sprite KogaSprite, 12 ; SPRITE_KOGA overworld_sprite GuardSprite, 12 ; SPRITE_GUARD - overworld_sprite GuardSprite, 12 ; SPRITE_UNUSED_GUARD + overworld_sprite RedSprite, 12 ; SPRITE_UNUSED_RED_2 overworld_sprite MomSprite, 12 ; SPRITE_MOM overworld_sprite BaldingGuySprite, 12 ; SPRITE_BALDING_GUY overworld_sprite LittleBoySprite, 12 ; SPRITE_LITTLE_BOY - overworld_sprite GameboyKidSprite, 12 ; SPRITE_UNUSED_GAMEBOY_KID + overworld_sprite RedSprite, 12 ; SPRITE_UNUSED_RED_3 overworld_sprite GameboyKidSprite, 12 ; SPRITE_GAMEBOY_KID overworld_sprite FairySprite, 12 ; SPRITE_FAIRY overworld_sprite AgathaSprite, 12 ; SPRITE_AGATHA overworld_sprite BrunoSprite, 12 ; SPRITE_BRUNO overworld_sprite LoreleiSprite, 12 ; SPRITE_LORELEI overworld_sprite SeelSprite, 12 ; SPRITE_SEEL + overworld_sprite PikachuSprite, 12 ; SPRITE_PIKACHU + overworld_sprite OfficerJennySprite, 12 ; SPRITE_OFFICER_JENNY + overworld_sprite SandshrewSprite, 12 ; SPRITE_SANDSHREW + overworld_sprite OddishSprite, 12 ; SPRITE_ODDISH + overworld_sprite BulbasaurSprite, 12 ; SPRITE_BULBASAUR + overworld_sprite JigglypuffSprite, 12 ; SPRITE_JIGGLYPUFF + overworld_sprite ClefairySprite, 12 ; SPRITE_CLEFAIRY + overworld_sprite ChanseySprite, 12 ; SPRITE_CHANSEY + overworld_sprite JessieSprite, 12 ; SPRITE_JESSIE + overworld_sprite JamesSprite, 12 ; SPRITE_JAMES overworld_sprite PokeBallSprite, 4 ; SPRITE_POKE_BALL overworld_sprite FossilSprite, 4 ; SPRITE_FOSSIL overworld_sprite BoulderSprite, 4 ; SPRITE_BOULDER |