/Samples/Breakout/LevelData.cs
C# | 118 lines | 100 code | 9 blank | 9 comment | 7 complexity | 7f4a0fef6509f15fc67d4852ba5d6ebb MD5 | raw file
Possible License(s): Apache-2.0
- using Delta.Utilities.Datatypes;
-
- namespace Breakout
- {
- /// <summary>
- /// Helper class to setup the different levels of the game, level 1-5 are
- /// custom made, then anything bigger will just use level 5 data again.
- /// </summary>
- public static class LevelData
- {
- #region SetupLevelColors
- /// <summary>
- /// Setup level colors for level 1-5
- /// </summary>
- /// <param name="bricks">Bricks to set the color to</param>
- /// <param name="level">Current level number</param>
- public static void SetupLevelColors(Brick[,] bricks, int level)
- {
- switch (level)
- {
- case 1:
- Level1(bricks);
- break;
- case 2:
- Level2(bricks);
- break;
- case 3:
- Level3(bricks);
- break;
- case 4:
- Level4(bricks);
- break;
- case 5:
- Level5(bricks);
- break;
- }
- }
- #endregion
-
- #region Level1
- private static void Level1(Brick[,] bricks)
- {
- for (int i = 0; i < 2; i++)
- {
- bricks[i, 0].Color = Color.Green;// Color.Purple;
- bricks[i, 1].Color = Color.Orange;// Color.Blue;
- }
- }
- #endregion
-
- #region Level2
- private static void Level2(Brick[,] bricks)
- {
- for (int i = 0; i < 3; i++)
- {
- bricks[i, 0].Color = new Color(0.25f, 0.25f, 0.25f);
- bricks[i, 1].Color = Color.Red;
- bricks[i, 2].Color = Color.Gold;
- }
- }
- #endregion
-
- #region Level3
- private static void Level3(Brick[,] bricks)
- {
- bricks[0, 0].Color = Color.Yellow;
- bricks[1, 1].Color = Color.Yellow;
- bricks[2, 2].Color = Color.Yellow;
- bricks[3, 3].Color = Color.Yellow;
-
- bricks[1, 0].Color = Color.Teal;
- bricks[2, 1].Color = Color.Teal;
- bricks[3, 2].Color = Color.Teal;
- bricks[0, 1].Color = Color.Teal;
- bricks[1, 2].Color = Color.Teal;
- bricks[2, 3].Color = Color.Teal;
-
- bricks[2, 0].Color = Color.Green;
- bricks[3, 1].Color = Color.Green;
- bricks[0, 2].Color = Color.Green;
- bricks[1, 3].Color = Color.Green;
-
- bricks[3, 0].Color = Color.LightBlue;
- bricks[0, 3].Color = Color.LightBlue;
- }
- #endregion
-
- #region Level4
- private static void Level4(Brick[,] bricks)
- {
- float factor = 1f / 255f;
- for (int x = 0; x < 5; x++)
- {
- for (int y = 0; y < 5; y++)
- {
- bricks[x, y].Color = new Color((x * 42) * factor,
- (64 + y * 32) * factor, 128 * factor);
- }
- }
- }
- #endregion
-
- #region Level5
- private static void Level5(Brick[,] bricks)
- {
- float factor = 1f / 255f;
- for (int x = 0; x < 6; x++)
- {
- for (int y = 0; y < 6; y++)
- {
- bricks[x, y].Color = new Color((x * 36 + 32) * factor,
- 0.33f, (x * 36 + 32) * factor);
- }
- }
- }
- #endregion
- }
- }