Beispiel #1
0
 private void ApplyLevelSpritePatterns(ChrBankBuilder builder, LevelIndex levelIndex, bool justinBailey)
 {
     ApplyPatternsToBank(builder, ExpandoPatternOffsets.GlobalGameplaySprites);
     ApplyPatternsToBank(builder, ExpandoPatternOffsets.DigitSprites);
     if (justinBailey)
     {
         ApplyPatternsToBank(builder, ExpandoPatternOffsets.JustinBaileySprites);
     }
     ApplyPatternsToBank(builder, ExpandoPatternOffsets.GetSpriteEntry(levelIndex));
 }
Beispiel #2
0
 private void ApplyLevelPatterns(ChrBankBuilder builder, LevelIndex level)
 {
     // Level sprites
     ApplyLevelSpritePatterns(builder, level, false);
     builder.NextBank();
     // Level sprites (Justin Bailey)
     ApplyLevelSpritePatterns(builder, level, true);
     builder.NextBank();
     // Level BG (copied four times)
     for (int i = 0; i < 4; i++)
     {
         ApplyPatternsToBank(builder, ExpandoPatternOffsets.GetBackgroundEntry(level));
         builder.NextBank();
     }
 }
Beispiel #3
0
        private void PerformTileCopy()
        {
            ChrBankBuilder builder = new ChrBankBuilder(enhancedRomData);

            builder.SetOffset(0x40010);

            // skipping title banks for now
            builder.NextBank();
            builder.NextBank();

            ApplyLevelPatterns(builder, LevelIndex.Brinstar);
            ApplyLevelPatterns(builder, LevelIndex.Norfair);
            ApplyLevelPatterns(builder, LevelIndex.Tourian);
            ApplyLevelPatterns(builder, LevelIndex.Kraid);
            ApplyLevelPatterns(builder, LevelIndex.Ridley);

            CreateTitleAndEndingCompositeBanks();
        }
Beispiel #4
0
 private void ApplyPatternsToBank(ChrBankBuilder builder, ExpandoPatternOffsets.Entry entry)
 {
     builder.CopyTiles(entry.RomOffset, entry.DestTileindex, entry.TileCount);
 }