Josh Davy / Mbed OS Flip_OS_5

Dependencies:   el17jd

LevelDefinitions/LevelDefinitions.h

Committer:
joshdavy
Date:
2019-04-24
Revision:
9:96969b1c6bde
Parent:
8:21b6d4dbce44
Child:
10:58cf89dd878c

File content as of revision 9:96969b1c6bde:



struct MovingBlockDefinition {
    int index;
    bool extending;
    int distance;
};
struct LevelDefinition {
    Block blocks [20];
    int number_of_blocks;
    MovingBlockDefinition moving_blocks [10];
    int number_of_moving_blocks ;
    Vector2D initial_pos;
    Vector2D goal;
};
// const LevelDefinition level_1 = {
//    // Define Blocks
//    {
//        { {5,30},{80,40} },
//        { {5,5}, {80,10} },
//        { {10,24},{20,34} },
//        { {40,24},{44,26} }
//    },
//    // Number Of Blocks
//    4,
//    // Moving Blocks
//    {
//        {3,'x',25},
//    },
//    // Number Of Moving blocks
//    1,
//    // Initial Position
//    {32,10},
//    // Goal
//    {70,19}
//};

 const LevelDefinition level_1 = {
    // Define Blocks
    {
        { {5,30},{80,40} },
        { {5,5}, {80,10} }
    },
    // Number Of Blocks
    2,
    // Moving Blocks
    {

    },
    // Number Of Moving blocks
    0,
    // Initial Position
    {12,10},
    // Goal
    {75,19}
};

 const LevelDefinition level_2 = {
    // Define Blocks
    {
        { {0,40},{84,45} },
        { {5,5}, {80,10} },
        { {30,20},{40,40} }
    },
    // Number Of Blocks
    3,
    // Moving Blocks
    {
        
    },
    // Number Of Moving blocks
    0,
    // Initial Position
    {12,30},
    // Goal
    {76,29}
};

 const LevelDefinition level_3 = {
    // Define Blocks
    {
        { {0,40},{84,45} },
        { {5,5}, {70,10} },
        { {30,20},{40,40} },
        { {50,10},{60,30} },
        { {70,20},{80,40} }
    },
    // Number Of Blocks
    5,
    // Moving Blocks
    {
        
    },
    // Number Of Moving blocks
    0,
    // Initial Position
    {12,30},
    // Goal
    {72,9}
};
 const LevelDefinition level_4 = {
    // Define Blocks
    {
        { {5,8}, {60,10} },
        { {50,10},{60,30} },
        { {20,22},{50,30} },
        { {1,1}, {5,10} },
        { {5,40}, {57,50} }
        
    },
    // Number Of Blocks
    5,
    // Moving Blocks
    {
        
    },
    // Number Of Moving blocks
    0,
    // Initial Position
    {12,0},
    // Goal
    {30,11}
};
 const LevelDefinition level_5 = {
    // Define Blocks
    {
        { {30,8}, {60,10} },
        { {40 ,20 },{ 70 ,22 } },
        { {30,30}, {60,32} },
        { {0 ,40 },{ 70 ,42 } },
        
        { {70,0},{72,42} },
        { {28,0},{30,32} },
        
        {{0,14},{10,40} },
        {{0,0},{30,2}},
    },
    // Number Of Blocks
    8,
    // Moving Blocks
    {
        
    },
    // Number Of Moving blocks
    0,
    // Initial Position
    {30,0},
    // Goal
    {1,3}
};

 const LevelDefinition level_6 = {
    // Define Blocks
    {
        {{1,20},{12,48}},
        {{12,26},{22,36}},
        {{77,28},{84,48}},
    },
    // Number Of Blocks
    3,
    // Moving Blocks
    {
        {1,false,55}, //55
    },
    // Number Of Moving blocks
    1,
    // Initial Position
    {0,10},
    // Goal
    {77,17}
};


 const LevelDefinition level_7 = {
    // Define Blocks
    {
        {{1,34},{12,48}},
        {{12,38},{22,48}},
        {{32,0},{42,10}},
        {{77,24},{84,48}},
    },
    // Number Of Blocks
    4,
    // Moving Blocks
    {
        {1,true,25}, 
        {2,false,25}, 
    },
    // Number Of Moving blocks
    2,
    // Initial Position
    {0,20},
    // Goal
    {77,13}
};