#pragma once

#include "GameObject.h"

class Spiel;

class Umlenkung : public GameObject
{
private:
    int id;
    Richtung richtung;
    bool drehend;
    bool aktiv;
    int benutzt;
    int maxAbklingzeit;
    float abklingzeitVerbleibend;

public:
    Umlenkung( int id, int x, int y, int breite, int height, Richtung richtung, int maxAbklingzeit, bool drehend, bool aktiv );
    void setMaxAbklingzeit( int sekunden );
    void setAktiv( bool aktiv );
    void setDrehend( bool drehend );
    void setRichtung( Richtung r );
    void addBenutzt( Spiel *zSpiel );
    void tick( double time );
    bool isAktive() const;
    bool hatAbklingzeit() const;
    bool istDrehend() const;
    int getMaxAbklingzeit() const;
    Richtung getRichtung() const;
    int getBenutzungen() const;
    int getId() const;
};