public PaletteOffsetCollections() { ExtraPalettes = new ExtraPalettes(); var objectBuilder = new PaletteIndexCollectionBuilder(0xDE6C8, 7); var spriteBuilder = new PaletteIndexCollectionBuilder(0xDD446, 7); LightWorld = new LightWorld( objectBuilder, spriteBuilder, new PaletteIndexCollectionBuilder(0xDD218, 15)); DarkWorld = new DarkWorld( objectBuilder, spriteBuilder, new PaletteIndexCollectionBuilder(0xDD290, 15)); TriforceRoom = new TriforceRoom(objectBuilder); LightWorldMap = new OverworldMap( new PaletteIndexCollectionBuilder(0x55B39, 16)); DarkWorldMap = new OverworldMap( new PaletteIndexCollectionBuilder(0x55C39, 16)); LightWorldAndMap = new LightWorldAndMap(LightWorld, LightWorldMap); DarkWorldAndMap = new DarkWorldAndMap(DarkWorld, DarkWorldMap); }
public LightWorldAndMap(LightWorld lightWorld, OverworldMap lightWorldMap) { if (lightWorld is null) { throw new ArgumentNullException(nameof(lightWorld)); } if (lightWorldMap is null) { throw new ArgumentNullException(nameof(lightWorldMap)); } GrassShrubsAndTrees = AddCollectionsAsConcatenation( lightWorld.GrassShrubsAndTrees, lightWorldMap.Grass); FlowersAndRocks = AddCollectionsAsConcatenation( lightWorld.FlowersAndRocks, lightWorldMap.Flowers); Water = AddCollectionsAsConcatenation( lightWorld.Water, lightWorldMap.Water); HillsAndDirt = AddCollectionsAsConcatenation( lightWorld.HillsAndDirt, lightWorldMap.HillsAndDirt, lightWorldMap.TreeWood); Clouds = AddCollectionsAsConcatenation( lightWorld.DeathMountain.Clouds, lightWorldMap.Clouds); HyruleCastleWalls = AddCollectionsAsConcatenation( lightWorld.HyruleCastle.Walls, lightWorldMap.HyruleCastle); Sanctuary = AddCollectionsAsConcatenation( lightWorld.Sanctuary.Wall, lightWorldMap.Sanctuary); Houses = AddCollectionsAsConcatenation( lightWorld.Houses, lightWorldMap.Houses); DeathMountain = AddCollectionsAsConcatenation( lightWorld.DeathMountain.WallsAndAbyss, lightWorldMap.DeathMountain); TowerOfHera = AddCollectionsAsConcatenation( lightWorld.DeathMountain.HeraBricks, lightWorldMap.TowerOfHera); AllIndexCollections = new ReadOnlyCollection <IndexCollection>( new IndexCollection[] { GrassShrubsAndTrees, FlowersAndRocks, Water, HillsAndDirt, Clouds, HyruleCastleWalls, Sanctuary, Houses, DeathMountain, TowerOfHera, }); }