]> git.localhorst.tv Git - l2e.git/blobdiff - src/map/Entity.h
switched geometric scalars from floating to fixed
[l2e.git] / src / map / Entity.h
index be3197d9da4010fa6e9fc2100171c3e3d44a2f62..d68861c7a60c5a7006aefe234abd39d26d3af294 100644 (file)
@@ -3,6 +3,7 @@
 
 #include "../battle/fwd.h"
 #include "../battle/Monster.h"
+#include "../math/Fixed.h"
 #include "../math/Vector.h"
 #include "../graphics/fwd.h"
 #include "../graphics/Animation.h"
@@ -38,12 +39,12 @@ public:
 
 public:
        /// Pixel resolved position of the entity's top left corner on the map.
-       math::Vector<float> &Position() { return position; }
-       const math::Vector<float> &Position() const { return position; }
+       math::Vector<math::Fixed<8> > &Position() { return position; }
+       const math::Vector<math::Fixed<8> > &Position() const { return position; }
 
        /// Velocity of the entity in pixels per second.
-       math::Vector<float> &Velocity() { return velocity; }
-       const math::Vector<float> &Velocity() const { return velocity; }
+       math::Vector<math::Fixed<8> > &Velocity() { return velocity; }
+       const math::Vector<math::Fixed<8> > &Velocity() const { return velocity; }
 
        /// Offset of the entity's sprite's to left corner relative to Position().
        math::Vector<int> &SpriteOffset() { return spriteOffset; }
@@ -79,7 +80,7 @@ public:
        Orientation GetOrientation() const { return orientation; }
        /// Set the entity's speed in pixels per second.
        /// This speed is then combined with the orientation to form a velocity.
-       void SetSpeed(float);
+       void SetSpeed(math::Fixed<8>);
 
        /// Change to a natural, relaxed animation state (row offset 0).
        void SetHandsFree();
@@ -127,7 +128,7 @@ public:
        bool TileLock(const math::Vector<int> &tileSize) const;
 
        /// Integrate this entity's physical properties over given time interval.
-       void Update(float deltaT);
+       void Update(Uint32 deltaT);
 
        void Render(SDL_Surface *, const math::Vector<int> &offset) const;
 
@@ -148,10 +149,10 @@ private:
        graphics::AnimationRunner runner;
        math::Vector<int> spriteOffset;
        math::Vector<int> tilePosition;
-       math::Vector<float> position;
-       math::Vector<float> velocity;
+       math::Vector<math::Fixed<8> > position;
+       math::Vector<math::Fixed<8> > velocity;
        Orientation orientation;
-       float speed;
+       math::Fixed<8> speed;
        int flags;
 
 };