ScummVM API documentation
Sword25::Animation Class Reference
Inheritance diagram for Sword25::Animation:
Sword25::TimedRenderObject Sword25::RenderObject

Public Types

enum  ANIMATION_TYPES { AT_ONESHOT, AT_LOOP, AT_JOJO }
 
typedef bool(* ANIMATION_CALLBACK) (uint)
 
- Public Types inherited from Sword25::RenderObject
enum  TYPES {
  TYPE_ROOT, TYPE_STATICBITMAP, TYPE_DYNAMICBITMAP, TYPE_ANIMATION,
  TYPE_PANEL, TYPE_TEXT, TYPE_UNKNOWN
}
 

Public Member Functions

void play ()
 
void pause ()
 
void stop ()
 
void setFrame (uint nr)
 
void setPos (int x, int y) override
 Setzt die Position des Objektes. More...
 
void setX (int x) override
 Setzt die Position des Objektes auf der X-Achse. More...
 
void setY (int y) override
 Setzt die Position des Objektes auf der Y-Achse. More...
 
int getX () const override
 Gibt die Position des Objektes auf der X-Achse relativ zum Elternobjekt zurück.
 
int getY () const override
 Gibt die Position des Objektes auf der Y-Achse relativ zum Elternobjekt zurück.
 
int getAbsoluteX () const override
 Gibt die absolute Position des Objektes auf der X-Achse zurück.
 
int getAbsoluteY () const override
 Gibt die absolute Position des Objektes auf der Y-Achse zurück.
 
void setAlpha (int alpha)
 Setzt den Alphawert der Animation. More...
 
void setModulationColor (uint modulationColor)
 Setzt die Modulationfarbe der Animation. More...
 
void setScaleFactor (float scaleFactor)
 Setzt den Skalierungsfaktor der Animation. More...
 
void setScaleFactorX (float scaleFactorX)
 Setzt den Skalierungsfaktor der Animation auf der X-Achse. More...
 
void setScaleFactorY (float scaleFactorY)
 Setzt den Skalierungsfaktor der Animation auf der Y-Achse. More...
 
float getScaleFactorX () const
 Gibt den Skalierungsfakter der Animation auf der X-Achse zurück. More...
 
float getScaleFactorY () const
 Gibt den Skalierungsfakter der Animation auf der Y-Achse zurück. More...
 
bool persist (OutputPersistenceBlock &writer) override
 
bool unpersist (InputPersistenceBlock &reader) override
 
void frameNotification (int timeElapsed) override
 Teilt dem Objekt mit, dass ein neuer Frame begonnen wird. More...
 
ANIMATION_TYPES getAnimationType () const
 
int getFPS () const
 
int getFrameCount () const
 
bool isScalingAllowed () const
 
bool isAlphaAllowed () const
 
bool isColorModulationAllowed () const
 
uint getCurrentFrame () const
 
const Common::StringgetCurrentAction () const
 
bool isRunning () const
 
void setCallbacks ()
 
- Public Member Functions inherited from Sword25::TimedRenderObject
 TimedRenderObject (RenderObjectPtr< RenderObject > pParent, TYPES type, uint handle=0)
 
- Public Member Functions inherited from Sword25::RenderObject
RenderObjectPtr< BitmapaddBitmap (const Common::String &fileName)
 Erzeugt ein Bitmap als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< BitmapaddDynamicBitmap (uint width, uint height)
 Erzeugt ein veränderbares Bitmap als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< AnimationaddAnimation (const Common::String &fileName)
 Erzeugt eine Animation auf Basis einer Animationsdatei als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< AnimationaddAnimation (const AnimationTemplate &animationTemplate)
 Erzeugt eine Animation auf Basis eines Animationstemplate als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< PaneladdPanel (int width, int height, uint color=BS_RGB(0, 0, 0))
 Erzeugt ein neues Farbpanel als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< TextaddText (const Common::String &font, const Common::String &text="")
 Erzeugt ein Textobjekt als Kinderobjekt des Renderobjektes. More...
 
RenderObjectPtr< BitmaptoBitmap ()
 Castet das Objekt zu einem BS_Bitmap-Objekt wenn zulässig. More...
 
RenderObjectPtr< AnimationtoAnimation ()
 Castet das Objekt zu einem BS_Animation-Objekt wenn zulässig. More...
 
RenderObjectPtr< PaneltoPanel ()
 Castet das Objekt zu einem BS_Panel-Objekt wenn zulässig. More...
 
RenderObjectPtr< TexttoText ()
 Castet das Object zu einem BS_Text-Objekt wenn zulässig. More...
 
 RenderObject (RenderObjectPtr< RenderObject > pParent, TYPES type, uint handle=0)
 Erzeugt ein neues BS_RenderObject. More...
 
void preRender (RenderObjectQueue *renderQueue)
 
bool render (RectangleList *updateRects, const Common::Array< int > &updateRectsMinZ)
 Rendert des Objekt und alle seine Unterobjekte. More...
 
bool updateObjectState ()
 Bereitet das Objekt und alle seine Unterobjekte auf einen Rendervorgang vor. Hierbei werden alle Dirty-Rectangles berechnet und die Renderreihenfolge aktualisiert. More...
 
void deleteAllChildren ()
 Löscht alle Kinderobjekte.
 
virtual void setZ (int z)
 Setzt den Z-Wert des Objektes. More...
 
virtual void setVisible (bool visible)
 Setzt die Sichtbarkeit eine Objektes. More...
 
int getZ () const
 Gibt den Z-Wert des Objektes relativ zum Elternobjekt zurück. More...
 
int getAbsoluteZ () const
 
int getWidth () const
 Gibt die Breite des Objektes zurück.
 
int getHeight () const
 Gibt die Höhe des Objektes zurück.
 
bool isVisible () const
 Gibt den Sichtbarkeitszustand des Objektes zurück. More...
 
TYPES getType () const
 Gibt den Typ des Objektes zurück.
 
bool getInitSuccess () const
 Gibt zurück, ob das Objekt erfolgreich initialisiert wurde. More...
 
const Common::RectgetBbox () const
 Gibt die Bounding-Box des Objektes zurück. More...
 
void forceRefresh ()
 Stellt sicher, dass das Objekt im nächsten Frame neu gezeichnet wird.
 
uint32 getHandle () const
 Gibt das Handle des Objekte zurück.
 
int getVersion () const
 
bool isSolid () const
 
bool persistChildren (OutputPersistenceBlock &writer)
 
bool unpersistChildren (InputPersistenceBlock &reader)
 
RenderObjectPtr< RenderObjectrecreatePersistedRenderObject (InputPersistenceBlock &reader)
 

Protected Member Functions

bool doRender (RectangleList *updateRects) override
 Einschubmethode, die den tatsächlichen Redervorgang durchführt. More...
 
- Protected Member Functions inherited from Sword25::RenderObject
RenderObjectManagergetManager () const
 Gibt einen Pointer auf den BS_RenderObjektManager zurück, der das Objekt verwaltet.
 
bool addObject (RenderObjectPtr< RenderObject > pObject)
 Fügt dem Objekt ein neues Kinderobjekt hinzu. More...
 

Additional Inherited Members

- Protected Types inherited from Sword25::RenderObject
typedef Common::List< RenderObjectPtr< RenderObject > > RENDEROBJECT_LIST
 
typedef Common::List< RenderObjectPtr< RenderObject > >::iterator RENDEROBJECT_ITER
 
- Protected Attributes inherited from Sword25::RenderObject
int32 _x
 Die X-Position des Objektes relativ zum Eltern-Objekt.
 
int32 _y
 Die Y-Position des Objektes relativ zum Eltern-Objekt.
 
int32 _z
 Der Z-Wert des Objektes relativ zum Eltern-Objekt.
 
int32 _absoluteX
 Die absolute X-Position des Objektes.
 
int32 _absoluteY
 Die absolute Y-Position des Objektes.
 
int32 _absoluteZ
 
int32 _width
 Die Breite des Objektes.
 
int32 _height
 Die Höhe des Objektes.
 
bool _visible
 Ist true, wenn das Objekt sichtbar ist.
 
bool _childChanged
 Ist true, wenn sich ein Kinderobjekt verändert hat.
 
TYPES _type
 Der Objekttyp.
 
bool _initSuccess
 Ist true, wenn Objekt erfolgreich intialisiert werden konnte.
 
Common::Rect _bbox
 Die Bounding-Box des Objektes in Bildschirmkoordinaten.
 
Common::Rect _oldBbox
 
int32 _oldX
 
int32 _oldY
 
int32 _oldZ
 
bool _oldVisible
 
int32 _version
 
bool _isSolid
 
RenderObjectManager_managerPtr
 Ein Pointer auf den BS_RenderObjektManager, der das Objekt verwaltet.
 
RenderObjectPtr< RenderObject_parentPtr
 Ein Pointer auf das Elternobjekt.
 
RENDEROBJECT_LIST _children
 Die Liste der Kinderobjekte nach der Renderreihenfolge geordnet.
 
- Static Protected Attributes inherited from Sword25::RenderObject
static int _nextGlobalVersion
 

Member Function Documentation

◆ setPos()

void Sword25::Animation::setPos ( int  x,
int  y 
)
overridevirtual

Setzt die Position des Objektes.

Parameters
Xdie neue X-Koordinate des Objektes relativ zum Elternobjekt.
Ydie neue Y-Koordinate des Objektes relativ zum Elternobjekt.

Reimplemented from Sword25::RenderObject.

◆ setX()

void Sword25::Animation::setX ( int  x)
overridevirtual

Setzt die Position des Objektes auf der X-Achse.

Parameters
Xdie neue X-Koordinate des Objektes relativ zum Elternobjekt.

Reimplemented from Sword25::RenderObject.

◆ setY()

void Sword25::Animation::setY ( int  y)
overridevirtual

Setzt die Position des Objektes auf der Y-Achse.

Parameters
Ydie neue Y-Koordinate des Objektes relativ zum Elternobjekt.

Reimplemented from Sword25::RenderObject.

◆ setAlpha()

void Sword25::Animation::setAlpha ( int  alpha)

Setzt den Alphawert der Animation.

Parameters
Alphader neue Alphawert der Animation (0 = keine Deckung, 255 = volle Deckung).
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsAlphaAllowed() true zurückgibt.

◆ setModulationColor()

void Sword25::Animation::setModulationColor ( uint  modulationColor)

Setzt die Modulationfarbe der Animation.

Parameters
Coloreine 24-Bit Farbe, die die Modulationsfarbe der Animation festlegt.
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsColorModulationAllowed() true zurückgibt.

◆ setScaleFactor()

void Sword25::Animation::setScaleFactor ( float  scaleFactor)

Setzt den Skalierungsfaktor der Animation.

Parameters
ScaleFactorder Faktor um den die Animation in beide Richtungen gestreckt werden soll.
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ setScaleFactorX()

void Sword25::Animation::setScaleFactorX ( float  scaleFactorX)

Setzt den Skalierungsfaktor der Animation auf der X-Achse.

Parameters
ScaleFactorder Faktor um den die Animation in Richtungen der X-Achse gestreckt werden soll.
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ setScaleFactorY()

void Sword25::Animation::setScaleFactorY ( float  scaleFactorY)

Setzt den Skalierungsfaktor der Animation auf der Y-Achse.

Parameters
ScaleFactorder Faktor um den die Animation in Richtungen der Y-Achse gestreckt werden soll.
Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ getScaleFactorX()

float Sword25::Animation::getScaleFactorX ( ) const
inline

Gibt den Skalierungsfakter der Animation auf der X-Achse zurück.

Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ getScaleFactorY()

float Sword25::Animation::getScaleFactorY ( ) const
inline

Gibt den Skalierungsfakter der Animation auf der Y-Achse zurück.

Remarks
Diese Methode darf nur aufgerufen werden, wenn die Methode IsScalingAllowed() true zurückgibt.

◆ frameNotification()

void Sword25::Animation::frameNotification ( int  timeElapsed)
overridevirtual

Teilt dem Objekt mit, dass ein neuer Frame begonnen wird.

Diese Methode wird jeden Frame an jedem BS_TimedRenderObject aufgerufen um diesen zu ermöglichen ihren Zustand Zeitabhängig zu verändern (z.B. Animationen).

Parameters
intTimeElapsed gibt an wie viel Zeit (in Microsekunden) seit dem letzten Frame vergangen ist.

Implements Sword25::TimedRenderObject.

◆ doRender()

bool Sword25::Animation::doRender ( RectangleList updateRects)
overrideprotectedvirtual

Einschubmethode, die den tatsächlichen Redervorgang durchführt.

Diese Methode wird von Render() aufgerufen um das Objekt darzustellen. Diese Methode sollte von allen Klassen implementiert werden, die von BS_RederObject erben, um das Zeichnen umzusetzen.

Returns
Gibt false zurück, falls das Rendern fehlgeschlagen ist.
Remarks

Implements Sword25::RenderObject.


The documentation for this class was generated from the following file: