public void RegenerateBioms(float minEs, float maxEs) { LevelHolder.LevelSkeletonWithBioms = null; LevelHolder.Level = null; if (LevelHolder.LevelSkeleton == null) { Debug.Log($"[Failed] Bioms generation failed: {nameof(LevelHolder.LevelSkeleton)} is null"); return; } var levelSkeletonBiomsGeneratorParams = new LevelSkeletonBiomsGeneratorParams() { LevelSkeleton = LevelHolder.LevelSkeleton }; if (minEs > 0) { levelSkeletonBiomsGeneratorParams.MinOpenSpacePerimeter = minEs; } if (maxEs > 0) { levelSkeletonBiomsGeneratorParams.MaxOpenSpacePerimeter = maxEs; } var levelSkeletonBiomsGenerator = new LevelSkeletonBiomsGenerator(levelSkeletonBiomsGeneratorParams); LevelHolder.LevelSkeletonWithBioms = levelSkeletonBiomsGenerator.Execute(); if (LevelHolder.LevelSkeletonWithBioms == null) { Debug.Log("[Failed] Bioms generation failed"); return; } var levelGeneratorParams = new LevelGeneratorParams() { LevelSkeleton = LevelHolder.LevelSkeletonWithBioms }; var levelGenerator = new LevelGenerator(levelGeneratorParams); LevelHolder.Level = levelGenerator.Execute(); if (LevelHolder.Level == null) { Debug.Log("[Failed] Level generation failed"); return; } Redraw(); }
public void Regenerate(LevelSkeletonGeneratorParams levelSkeletonGeneratorParams) { LevelHolder.LevelSkeleton = null; LevelHolder.LevelSkeletonWithBioms = null; LevelHolder.Level = null; var levelSkeletonGenerator = new LevelSkeletonGenerator(levelSkeletonGeneratorParams); LevelHolder.LevelSkeleton = levelSkeletonGenerator.Execute(); if (LevelHolder.LevelSkeleton == null) { Debug.Log("[Failed] generation failed"); return; } var levelSkeletonBiomsGeneratorParams = new LevelSkeletonBiomsGeneratorParams { LevelSkeleton = LevelHolder.LevelSkeleton, MinOpenSpacePerimeter = levelSkeletonGeneratorParams.MinOpenSpacePerimeter, MaxOpenSpacePerimeter = levelSkeletonGeneratorParams.MaxOpenSpacePerimeter }; var levelSkeletonBiomsGenerator = new LevelSkeletonBiomsGenerator(levelSkeletonBiomsGeneratorParams); LevelHolder.LevelSkeletonWithBioms = levelSkeletonBiomsGenerator.Execute(); if (LevelHolder.LevelSkeletonWithBioms == null) { Debug.Log("[Failed] Bioms generation failed"); return; } var levelGeneratorParams = new LevelGeneratorParams() { LevelSkeleton = LevelHolder.LevelSkeletonWithBioms }; var levelGenerator = new LevelGenerator(levelGeneratorParams); LevelHolder.Level = levelGenerator.Execute(); if (LevelHolder.Level == null) { Debug.Log("[Failed] Level generation failed"); return; } Redraw(); }