ELEC2645 (2018/19) / Mbed 2 deprecated el17ajf

Dependencies:   mbed

Fork of el17ajf by Angus Findlay

Tetromino/Tetromino.h

Committer:
el17ajf
Date:
2019-03-14
Revision:
6:a54df561f442
Parent:
5:3efbdcb3efaf
Child:
7:2e37bad816cb

File content as of revision 6:a54df561f442:

#include "Block.h"

class Tetromino {
public:
    enum Type {
        I, O, T, J, L, S, Z
    };
    static Tetromino getTetrominoOfType(Type type);
    Tetromino movedLeft();
    Tetromino movedRight();
    Tetromino movedDown();
    void draw();
    static Type getRandomTetrominoType();
private:
    Tetromino translated(int dx, int dy);
    Tetromino(Block a, Block b, Block c, Block d);
    static Tetromino getTetrominoFromString(const char * str);
    ~Tetromino();
};