31 #ifndef SWORD25_ANIMATION_H 32 #define SWORD25_ANIMATION_H 35 #include "sword25/kernel/common.h" 36 #include "sword25/gfx/timedrenderobject.h" 42 class AnimationResource;
43 class AnimationTemplate;
44 class AnimationDescription;
45 class InputPersistenceBlock;
56 enum ANIMATION_TYPES {
67 void setFrame(uint nr);
69 void setPos(
int x,
int y)
override;
70 void setX(
int x)
override;
71 void setY(
int y)
override;
73 int getX()
const override;
74 int getY()
const override;
118 return _scaleFactorX;
126 return _scaleFactorY;
134 ANIMATION_TYPES getAnimationType()
const;
136 int getFrameCount()
const;
137 bool isScalingAllowed()
const;
138 bool isAlphaAllowed()
const;
139 bool isColorModulationAllowed()
const;
140 uint getCurrentFrame()
const {
141 return _currentFrame;
144 bool isRunning()
const {
148 typedef bool (*ANIMATION_CALLBACK)(uint);
165 uint32 _modulationColor;
166 uint32 _currentFrame;
167 int32 _currentFrameTime;
170 Direction _direction;
172 uint32 _animationTemplateHandle;
175 ANIMATION_CALLBACK _loopPointCallback;
176 ANIMATION_CALLBACK _actionCallback;
177 ANIMATION_CALLBACK _deleteCallback;
183 bool lockAllFrames();
189 bool unlockAllFrames();
196 void computeCurrentCharacteristics();
201 int computeXModifier()
const;
206 int computeYModifier()
const;
float getScaleFactorX() const
Gibt den Skalierungsfakter der Animation auf der X-Achse zurück.
Definition: animation.h:117
void setX(int x) override
Setzt die Position des Objektes auf der X-Achse.
Definition: animation.h:47
float getScaleFactorY() const
Gibt den Skalierungsfakter der Animation auf der Y-Achse zurück.
Definition: animation.h:125
void setAlpha(int alpha)
Setzt den Alphawert der Animation.
void setPos(int x, int y) override
Setzt die Position des Objektes.
Definition: renderobjectptr.h:46
void frameNotification(int timeElapsed) override
Teilt dem Objekt mit, dass ein neuer Frame begonnen wird.
Definition: microtiles.h:38
void setScaleFactor(float scaleFactor)
Setzt den Skalierungsfaktor der Animation.
int getX() const override
Gibt die Position des Objektes auf der X-Achse relativ zum Elternobjekt zurück.
Definition: timedrenderobject.h:40
void setModulationColor(uint modulationColor)
Setzt die Modulationfarbe der Animation.
int getY() const override
Gibt die Position des Objektes auf der Y-Achse relativ zum Elternobjekt zurück.
bool doRender(RectangleList *updateRects) override
Einschubmethode, die den tatsächlichen Redervorgang durchführt.
Definition: animationdescription.h:40
void setY(int y) override
Setzt die Position des Objektes auf der Y-Achse.
Definition: animationtemplate.h:46
void setScaleFactorY(float scaleFactorY)
Setzt den Skalierungsfaktor der Animation auf der Y-Achse.
Definition: animationresource.h:45
int getAbsoluteY() const override
Gibt die absolute Position des Objektes auf der Y-Achse zurück.
Dieses ist die Klasse die sämtliche sichtbaren Objekte beschreibt.
Definition: renderobject.h:72
int getAbsoluteX() const override
Gibt die absolute Position des Objektes auf der X-Achse zurück.
Definition: outputpersistenceblock.h:39
void setScaleFactorX(float scaleFactorX)
Setzt den Skalierungsfaktor der Animation auf der X-Achse.