From 49d6e93427024bb863164d3b0b653a41520c278e Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sun, 9 Apr 2017 11:53:44 -0700 Subject: Split out game object collision routines/data --- .../blue_stage_game_object_collision.asm | 138 +++++++++++++++++ .../red_stage_game_object_collision.asm | 166 +++++++++++++++++++++ 2 files changed, 304 insertions(+) create mode 100755 data/collision/game_objects/blue_stage_game_object_collision.asm create mode 100755 data/collision/game_objects/red_stage_game_object_collision.asm (limited to 'data') diff --git a/data/collision/game_objects/blue_stage_game_object_collision.asm b/data/collision/game_objects/blue_stage_game_object_collision.asm new file mode 100755 index 0000000..6a4dd1f --- /dev/null +++ b/data/collision/game_objects/blue_stage_game_object_collision.asm @@ -0,0 +1,138 @@ +BlueStageBumpersCollisionAttributes: + db $00 ; flat list + db $34, $3F, $39, $3C, $38, $37, $3F, $33, $32, $3E, $3D, $3B, $3A, $3E, $36, $35, $31, $30 + db $FF ; terminator + +BlueStageBumpersCollisionData: + db $06, $0B ; x, y bounding box + db $01, $30, $66 ; id, x, y + db $02, $6F, $66 ; id, x, y + db $FF ; terminator + +BlueStageShellderCollisionAttributes: + db $00 ; flat list + db $5E, $5F, $60, $61, $62, $63, $64, $65, $98, $66, $67, $68, $69, $6A, $6B, $99, $6C, $6D, $6E, $6F + db $FF ; terminator + +BlueStageShellderCollisionData: + db $0E, $0E ; x, y bounding box + db $03, $3A, $56 ; id, x, y + db $04, $4F, $45 ; id, x, y + db $05, $64, $56 ; id, x, y + db $FF ; terminator + +BlueStageSpinnerCollisionData: + db $08, $04 ; x, y bounding box + db $06, $92, $6A ; id, x, y + db $FF ; terminator + +BlueStageBoardTriggersCollisionData: + db $09, $09 ; x, y bounding box + db $07, $15, $43 ; id, x, y + db $08, $8B, $43 ; id, x, y + db $09, $10, $8C ; id, x, y + db $0A, $8F, $8C ; id, x, y + db $FF ; terminator + +BlueStageCloysterCollisionData: + db $06, $05 ; x, y bounding box + db $0B, $73, $78 ; id, x, y + db $FF ; terminator + +BlueStageSlowpokeCollisionData: + db $06, $05 ; x, y bounding box + db $0C, $2C, $78 ; id, x, y + db $FF ; terminator + +BlueStagePikachuCollisionData: + db $03, $05 ; x, y bounding box + db $0D, $0E, $7C ; id, x, y + db $0E, $92, $7C ; id, x, y + db $FF ; terminator + +BlueStageBonusMultiplierCollisionAttributes: + db $00 ; flat list + db $56, $59, $58, $57, $1C, $5A, $5B, $5C, $5D, $1D + db $FF ; terminator + +BlueStageBonusMultiplierCollisionData: + db $09, $08 ; x, y bounding box + db $0F, $2C, $20 ; id, x, y + db $10, $74, $20 ; id, x, y + db $FF ; terminator + +BlueStagePsyduckPoliwagCollisionAttributes: + db $00 ; flat list + db $5E, $5F, $24, $25 + db $FF ; terminator + +BlueStagePsyduckPoliwagCollisionData: + db $08, $0C ; x, y bounding box + db $11, $22, $3E ; id, x, y + db $12, $7D, $3D ; id, x, y + db $FF ; terminator + +BlueStagePinballUpgradeTriggersCollisionData: + db $06, $05 ; x, y bounding box + db $13, $37, $34 ; id, x, y + db $14, $4F, $2F ; id, x, y + db $15, $67, $35 ; id, x, y + db $FF ; terminator + +BlueStageCAVELightsCollisionData: + db $05, $03 ; x, y bounding box + db $16, $0E, $65 ; id, x, y + db $17, $1E, $65 ; id, x, y + db $18, $82, $65 ; id, x, y + db $19, $92, $65 ; id, x, y + db $FF ; terminator + +BlueStageSlotCollisionData: + db $04, $04 ; x, y bounding box + db $1A, $50, $16 ; id, x, y + db $FF ; terminator + +BlueStageWildPokemonCollisionAttributes: + db $00 ; flat list + db $D0, $D1, $D2, $D3, $D4, $D5, $D6, $D7, $D8, $D9, $DA, $DB, $DC, $DD, $DE, $DF + db $FF ; terminator + +BlueStageWildPokemonCollisionData: + db $1A, $1A ; x, y bounding box + db $1B, $50, $40 ; id, x, y + db $FF ; terminator + +BlueTopEvolutionTrinketCoords: ; 0x1c6d7 +; First byte is just non-zero to signify that the array hasn't ended. +; Second byte is x coordinate. +; Third byte is y coordinate. + db $01, $44, $11 + db $01, $23, $1B + db $01, $65, $1B + db $01, $0D, $2E + db $01, $7A, $2E + db $01, $05, $48 + db $01, $44, $88 + db $01, $83, $48 + db $01, $02, $6E + db $01, $2E, $88 + db $01, $59, $88 + db $01, $85, $6E + db $00 + +BlueBottomEvolutionTrinketCoords: ; 0x1c6fc +; First byte is just non-zero to signify that the array hasn't ended. +; Second byte is x coordinate. +; Third byte is y coordinate. + db $01, $33, $1B + db $01, $55, $1B + db $01, $29, $1F + db $01, $5F, $1F + db $01, $1D, $35 + db $01, $6B, $35 + db $00 + +BlueStageLaunchAlleyCollisionData: + db $08, $08 ; x, y bounding box + db $1C, $A8, $98 ; id, x, y + db $FF ; terminator diff --git a/data/collision/game_objects/red_stage_game_object_collision.asm b/data/collision/game_objects/red_stage_game_object_collision.asm new file mode 100755 index 0000000..6ff62b4 --- /dev/null +++ b/data/collision/game_objects/red_stage_game_object_collision.asm @@ -0,0 +1,166 @@ +RedStageDiglettCollisionAttributes: + db $00 ; flat list + db $64, $65, $68, $69 + db $FF ; terminator + +RedStageDiglettCollisionData: + db $08, $0C ; x, y bounding box + db $01, $20, $40 ; id, x, y + db $02, $80, $40 ; id, x, y + db $FF ; terminator + +RedStageVoltorbCollisionAttributes: + db $00 ; flat list + db $E0, $E1, $E2, $E3, $E4, $E5, $E6, $E7, $E8, $E9, $EA, $EB, $EC, $ED, $EE, $EF, $F0, $F1, $F2, $F3, $F4, $F5 + db $FF ; terminator + +RedStageVoltorbCollisionData: + db $0E, $0E ; x, y bounding box + db $03, $42, $66 ; id, x, y + db $04, $5A, $5C ; id, x, y + db $05, $55, $78 ; id, x, y + db $FF ; terminator + +RedStageBumpersCollisionAttributes: + db $00 ; flat list + db $32, $3F, $37, $3C, $34, $31, $3E, $36, $3B, $3D + db $FF ; terminator + +RedStageBumpersCollisionData: + db $06, $0B ; x, y bounding box + db $06, $30, $66 ; id, x, y + db $07, $6F, $66 ; id, x, y + db $FF ; terminator + +RedStageLaunchAlleyCollisionData: + db $08, $08 ; x, y bounding box + db $08, $A8, $98 ; id, x, y + db $FF ; terminator + +RedStageSpinnerCollisionData: + db $08, $04 ; x, y, bounding box + db $09, $90, $6C ; id, x, y + db $FF ; terminator + +RedStageCAVELightsCollisionData: + db $05, $03 ; x, y bounding box + db $0A, $0E, $65 ; id, x, y + db $0B, $1E, $65 ; id, x, y + db $0C, $82, $65 ; id, x, y + db $0D, $92, $65 ; id, x, y + db $FF ; terminator + +RedStagePinballUpgradeTriggerCollisionData: + db $06, $05 ; x, y bounding box + db $0E, $3A, $53 ; id, x, y + db $0F, $50, $48 ; id, x, y + db $10, $66, $49 ; id, x, y + db $FF ; terminator + +RedStageBoardTriggersCollisionData: + db $09, $09 ; x, y bounding box + db $11, $1C, $3C ; id, x, y + db $12, $2A, $44 ; id, x, y + db $13, $25, $63 ; id, x, y + db $14, $12, $7A ; id, x, y + db $15, $26, $84 ; id, x, y + db $16, $7C, $44 ; id, x, y + db $17, $8E, $7A ; id, x, y + db $18, $7F, $39 ; id, x, y + db $FF ; terminator + +RedStageTopStaryuCollisionAttributes: + db $00 ; flat list + db $10, $11, $12 + db $FF ; terminator + +RedStageTopStaryuCollisionData: + db $08, $06 ; x, y bounding box + db $19, $40, $90 ; id, x, y + db $FF ; terminator + +RedStageBottomStaryuCollisionAttributes: + db $00 ; flat list + db $56, $5B, $5C + db $FF ; terminator + +RedStageBottomStaryuCollisionData: + db $08, $06 ; x, y bounding box + db $1A, $40, $08 ; id, x, y + db $FF ; terminator + +RedStageBellsproutCollisionData: + db $06, $05 ; x, y bounding box + db $1B, $7B, $76 ; id, x, y + db $FF ; terminator + +RedStagePikachuCollisionData: + db $03, $05 ; x, y bounding box + db $1C, $0E, $7C ; id, x, y + db $1D, $92, $7C ; id, x, y + db $FF ; terminator + +RedStageWildPokemonCollisionAttributes: + db $00 ; flat list + db $D0, $D1, $D2, $D3, $D4, $D5, $D6, $D7, $D8, $D9, $DA, $DB, $DC, $DD, $DE, $DF + db $FF ; terminator + +RedStageWildPokemonCollisionData: + db $1A, $1A ; x, y bounding box + db $1E, $50, $40 ; id, x, y + db $FF ; terminator + +RedStageDittoSlotCollisionData: + db $03, $03 ; x, y bounding box + db $1F, $12, $24 ; id, x, y + db $FF ; terminator + +RedStageSlotCollisionData: + db $04, $04 ; x, y bounding box + db $20, $50, $16 ; id, x, y + db $FF ; terminator + +RedStageBonusMultipliersCollisionAttributes: + db $00 ; flat list + db $4C, $4B, $48, $47, $4D, $4A + db $FF ; terminator + +RedStageBonusMultipliersCollisionData: + db $07, $07 ; x, y bounding box + db $21, $2C, $20 ; id, x, y + db $22, $74, $20 ; id, x, y + db $FF ; terminator + +RedStageEvolutionTrinketCoordinatePointers: ; 0x145d2 + dw RedStageTopEvolutionTrinketCoords + dw RedStageBottomEvolutionTrinketCoords + +RedStageTopEvolutionTrinketCoords: ; 0x156d6 +; First byte is just non-zero to signify that the array hasn't ended. +; Second byte is x coordinate. +; Third byte is y coordinate. + db $01, $44, $14 + db $01, $2A, $1A + db $01, $5E, $1A + db $01, $11, $2D + db $01, $77, $2D + db $01, $16, $3E + db $01, $77, $3E + db $01, $06, $6D + db $01, $83, $6D + db $01, $41, $82 + db $01, $51, $82 + db $01, $69, $82 + db $00 ; terminator + +RedStageBottomEvolutionTrinketCoords: ; 0x145fb +; First byte is just non-zero to signify that the array hasn't ended. +; Second byte is x coordinate. +; Third byte is y coordinate. + db $01, $35, $1B + db $01, $53, $1B + db $01, $29, $1F + db $01, $5F, $1F + db $01, $26, $34 + db $01, $62, $34 + db $00 ; terminator -- cgit v1.2.3