geometry::Vector<float> &Velocity() { return velocity; }
const geometry::Vector<float> &Velocity() const { return velocity; }
- geometry::Vector<float> &SpriteOffset() { return spriteOffset; }
- const geometry::Vector<float> &SpriteOffset() const { return spriteOffset; }
+ geometry::Vector<int> &SpriteOffset() { return spriteOffset; }
+ const geometry::Vector<int> &SpriteOffset() const { return spriteOffset; }
void SetAnimation(const graphics::Animation *a);
void StartAnimation(app::Application &ctrl);
void Render(SDL_Surface *, const geometry::Vector<int> &offset) const;
+ static void CreateTypeDescription();
+ static void Construct(void *);
+ static void Load(void *);
+
private:
void UpdateVelocity();
Entity *follower;
const graphics::Animation *animation;
graphics::AnimationRunner runner;
- geometry::Vector<float> spriteOffset;
+ geometry::Vector<int> spriteOffset;
geometry::Vector<float> position;
geometry::Vector<float> velocity;
Orientation orientation;