12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- #pragma once
- #include "Array.h"
- namespace Framework
- {
- class Bild;
- class Animation2DData;
- class Textur2D
- {
- private:
- struct Animation
- {
- Animation2DData *data;
- int jetzt;
- double ausgleich;
- };
- bool circularAnimation;
- int animationIndex;
- Bild *txt;
- Array< Animation* > *animData;
- int ref;
- public:
- // Konstructor
- __declspec( dllexport ) Textur2D();
- // Destructor
- __declspec( dllexport ) ~Textur2D();
- // Legt fest, ob die animation sich automatisch wiederhohlen soll
- // ca: 1, falls sich die animation automatisch wiederhohlen soll
- __declspec( dllexport ) void setCircularAnimation( bool ca );
- // setzt einen Zeiger auf die Textur (fals nicht animiert)
- // textur: Der Zeiger auf das Bild
- __declspec( dllexport ) void setTexturZ( Bild *textur );
- // fügt eine Animation hinzu
- // textur: Der Zeiger auf die Animationsdaten
- __declspec( dllexport ) void addAnimationZ( Animation2DData *textur );
- // setzt die aktuelle Annimation
- // index: Der Index der Animation
- __declspec( dllexport ) void setAnimation( int index );
- // aktiviert die nachfolgende animation
- __declspec( dllexport ) void nextAnimation();
- // setzt die vergangene Zeit seit dem letzten Aufruf
- // t: die vergangene Zeit in sekunden
- __declspec( dllexport ) bool tick( double t );
- // gibt die aktuelle Textur zurück
- __declspec( dllexport ) Bild *zTextur() const;
- // erhöht den Reference Counter um 1 und gibt this zurück
- __declspec( dllexport ) Textur2D *getThis();
- // verringert den reference counter um 1 und löscht sich selbst, falls er 0 erreicht
- // gibt 0 zurück
- __declspec( dllexport ) Textur2D *release();
- };
- }
|