Back to shtanton's homepage
summaryrefslogtreecommitdiff
path: root/src/levels.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/levels.c')
-rw-r--r--src/levels.c279
1 files changed, 274 insertions, 5 deletions
diff --git a/src/levels.c b/src/levels.c
index f0254d4..a5f1d15 100644
--- a/src/levels.c
+++ b/src/levels.c
@@ -183,9 +183,9 @@ static Level levels[] = {
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- _ _ _ _ _ _ RU _ _ _ _ _ _ _ _ _ _ _ _ _
- _ _ _ _ _ B _ _ _ _ O B _ _ _ _ _ _ _ _
- _ _ _ _ _ B _ _ _ _ O B _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ B B _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ B B _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
@@ -195,14 +195,283 @@ static Level levels[] = {
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
},
+ .need9 = 1,
+ .goalx = 6,
+ .goaly = 11,
+ .spawnerx = 10,
+ .spawnery = 6,
+ .spawnRate = 6,
+ .placeableCells = {
+ RED,
+ YELLOW,
+ RED_UP,
+ BLACK,
+ },
+ },
+ {
+ // level 8
+ .grid = {
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ B B B _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ B B _ _ _ _ _ _ B _ _ _ _ _ _ _
+ _ _ _ _ B B B _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ },
+ .goalx = 11,
+ .goaly = 7,
+ .spawnerx = 6,
+ .spawnery = 7,
+ .need9 = 1,
+ .placeableCells = {
+ RED,
+ YELLOW,
+ },
+ },
+ {
+ // level 9
+ .grid = {
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ RD _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ O _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ B O _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ RU _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ },
+ .goalx = 12,
+ .goaly = 7,
+ .placeableCells = {
+ RED,
+ },
+ },
+ {
+ // level 10
+ .grid = {
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ RU _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ B _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ B _ _ _ _ B _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ B B _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ B RD _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ },
+ .goalx = 7,
+ .goaly = 9,
+ .spawnerx = 4,
+ .spawnery = 3,
+ .need9 = 1,
+ .spawnRate = 7,
+ .placeableCells = {
+ RED,
+ YELLOW,
+ BLACK,
+ BLACK,
+ BLACK,
+ BLACK,
+ BLACK,
+ BLACK,
+ },
+ },
+ {
+ // level 11
+ .grid = {
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ B _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ B _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ B _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ B B B B B B B B RL _ _ _ _ _ _ _ _ _ _ _
+ },
+ .goalx = 15,
+ .goaly = 15,
+ .spawnerx = 9,
+ .spawnery = 15,
+ .need9 = 1,
+ .spawnRate = 7,
+ .placeableCells = {
+ RED,
+ YELLOW,
+ BLACK,
+ BLACK,
+ },
+ },
+ {
+ // level 12
+ .grid = {
+ _ _ _ _ _ B _ _ _ _ _ _ RU _ _ _ _ _ _ _
+ _ _ _ _ RU _ _ _ _ _ _ _ _ B _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ B B _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ B B _ _ _ _ _ _ _ _ _ _ _
+ _ B _ _ _ _ _ _ O B B _ _ _ _ _ _ _ _ _
+ RU _ _ _ _ _ _ _ _ B B _ _ _ _ _ _ _ _ _
+ _ _ _ _ B _ _ _ _ _ _ _ _ _ RU _ _ _ _ _
+ _ _ _ _ _ RU _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ B _ _ _ _ _ _ _ _ RU _ _ _ _ _ _ _ _ _ _
+ _ RU _ _ _ _ _ _ B _ _ _ _ _ _ _ _ _ _ _
+ },
+ .goalx = 8,
+ .goaly = 7,
+ .spawnerx = 13,
+ .spawnery = 7,
+ .need9 = 1,
+ .spawnRate = 3,
+ .placeableCells = {
+ RED,
+ RED,
+ YELLOW,
+ YELLOW,
+ },
+ },
+ {
+ // level 14
+ // An attempt at a red herring
+ // This one has some similarities to level 12 so I didn't want it to be level 13
+ .grid = {
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ B B _ R B _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ B B _ r B _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ B O _ _ _ _ _ _ _ _ _ _ _ RU _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ },
+ .goalx = 10,
+ .goaly = 7,
+ .spawnerx = 15,
+ .spawnery = 7,
+ .need9 = 1,
+ .spawnRate = 3,
+ .placeableCells = {
+ RED,
+ RED_UP,
+ YELLOW,
+ },
+ },
+ {
+ // level 15
+ // This one is a bit tricky
+ .grid = {
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ RU _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ B _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ B _ _ _ _ B _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ B _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ },
+ .goalx = 7,
+ .goaly = 9,
+ .spawnerx = 4,
+ .spawnery = 3,
+ .need9 = 1,
+ .spawnRate = 2,
+ .placeableCells = {
+ RED,
+ RED,
+ YELLOW,
+ YELLOW,
+ BLACK,
+ BLACK,
+ BLACK,
+ BLACK,
+ BLACK,
+ BLACK,
+ },
+ },
+ {
+ // level ?
+ // Must go after blues turning yellows into reds is introduced
+ .grid = {
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ O B B _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ B B _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ B _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
+ },
+ .need9 = 1,
.goalx = 6,
.goaly = 11,
.placeableCells = {
RED,
RED_UP,
RED_DOWN,
- RED_LEFT,
- RED_RIGHT,
+ YELLOW,
+ BLACK,
+ BLACK,
},
},
};