#if !defined(_STEUERUNG_H)
#define _STEUERUNG_H

#include "TdieGUI.h"
#include "Daten.h"
#include "Highscore.h"

class Steuerung {
public:
        Steuerung(void);
        void tasteGedruecktPause();
	void tasteGedruecktRechts();
	void tasteGedruecktLinks();
	void tasteGedruecktOben();
	void tasteGedruecktUnten();
	void fallen();
	void neuesSpiel();
        void spielBeenden();
        void ladeHighscores();
        AnsiString gibName(int pPlatz);
	int gibScore(int pPlatz);
        void speichereHighscore(AnsiString pName);
        int gibSpielstatus();   // 2 Spiel l�uft
                                // 1 Spiel pausiert
                                // 0 Spiel beendet

protected:
	bool pause;
        //bool beschaeftigt;
        bool gameOver; //true:game over, false: spiel l�uft noch
        int typStein;
        int naechsterStein;
        int reihen; //Anzahl gel�schter Reihen
        int level;
        int drehungStein;  //0: nicht gedreht
                           //1: nach rechts
                           //2: auf dem Kopf
                           //3: nach links
	int xPositionBrick[4];
        int yPositionBrick[4];
	bool testePosition(int x, int y);
	void drehen();
	void initialisiereStein(int typ);
	void schreibeDaten();
	void loescheReihe(int y);
        void aktualisiereSpielfeld(void);
        TForm *TdieGUI;
	Daten *dieDaten;
        Highscore *dieHighscores;
};

#endif  //_STEUERUNG_H