public SimpleFixedTerrainLayer(ISet<ITerrain> terrains,
                                       ITerrainFactory<Hills> hillsFactory,
                                       ITerrainFactory<Mountains> mountainsFactory,
                                       ITerrainFactory<Oceans> oceansFactory,
                                       ITerrainFactory<Plains> plainsFactory)
        {
            Terrains = terrains;
            this.plainsFactory = plainsFactory;

            Terrains.Add(hillsFactory.Create(HillsTile));
            Terrains.Add(mountainsFactory.Create(MountainsTile));
            Terrains.Add(oceansFactory.Create(OceansTile));
            
            AddRemainingPlains();
        }
 public PlanetFactory(ITerrainFactory terrainFactory)
 {
     _terrainFactory = terrainFactory;
 }