]> git.localhorst.tv Git - l2e.git/blobdiff - src/graphics/ComplexAnimation.h
initialize objects after loading
[l2e.git] / src / graphics / ComplexAnimation.h
index eeeef680d37b558a8a06ebaa226c2b0d9d85ed4d..380ea2a066f831590f9e744d8215944ffdb239ef 100644 (file)
@@ -2,6 +2,7 @@
 #define GRAPHICS_COMPLEXANIMATION_H_
 
 #include "Animation.h"
+#include "../loader/noinit.h"
 
 namespace graphics {
 
@@ -14,27 +15,30 @@ public:
 public:
        ComplexAnimation();
        ComplexAnimation(const Sprite *sprite, int frameTime, bool repeat = false);
+protected:
+       ComplexAnimation(loader::noinit_t);
 
 public:
        struct FrameProp {
                static const int TYPE_ID = 403;
                FrameProp() : col(0), row(0) { }
-               FrameProp(int col, int row, const geometry::Vector<int> &disposition)
+               FrameProp(int col, int row, const math::Vector<int> &disposition)
                : col(col), row(row), disposition(disposition) {}
                int col;
                int row;
-               geometry::Vector<int> disposition;
+               math::Vector<int> disposition;
        };
        void SetFrames(const FrameProp *f, int num) { frames = f; numFrames = num; }
 
        static void CreateTypeDescription();
        static void Construct(void *);
+       static void Initialize(void *);
 
 protected:
        virtual int NumFrames() const;
        virtual int Col(int frame) const;
        virtual int Row(int frame) const;
-       virtual geometry::Vector<int> Offset(int frame) const;
+       virtual math::Vector<int> Offset(int frame) const;
 
 private:
        const FrameProp *frames;
@@ -44,4 +48,4 @@ private:
 
 }
 
-#endif /* GRAPHICS_COMPLEXANIMATION_H_ */
+#endif