12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #pragma once
- #include "Array.h"
- namespace Framework
- {
- class Bild;
- class Animation2DData;
- class Textur2D : public virtual ReferenceCounter
- {
- private:
- struct Animation
- {
- Animation2DData *data;
- int jetzt;
- double ausgleich;
- };
- bool circularAnimation;
- int animationIndex;
- Bild *txt;
- Array< Animation * > *animData;
- public:
- //! Konstructor
- DLLEXPORT Textur2D();
- //! Destructor
- DLLEXPORT ~Textur2D();
- //! Legt fest, ob die animation sich automatisch wiederhohlen soll
- //! \param ca 1, falls sich die animation automatisch wiederhohlen soll
- DLLEXPORT void setCircularAnimation( bool ca );
- //! setzt einen Zeiger auf die Textur (fals nicht animiert)
- //! \param textur Der Zeiger auf das Bild
- DLLEXPORT void setTexturZ( Bild *textur );
- //! fügt eine Animation hinzu
- //! \param textur Der Zeiger auf die Animationsdaten
- DLLEXPORT void addAnimationZ( Animation2DData *textur );
- //! setzt die aktuelle Annimation
- //! \param index Der Index der Animation
- DLLEXPORT void setAnimation( int index );
- //! aktiviert die nachfolgende animation
- DLLEXPORT void nextAnimation();
- //! setzt die vergangene Zeit seit dem letzten Aufruf
- //! \param t die vergangene Zeit in sekunden
- DLLEXPORT bool tick( double t );
- //! gibt die aktuelle Textur zurück
- DLLEXPORT Bild *zTextur() const;
- };
- }
|