X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2FCharacter.hh;h=087bf494c819743eafc099fcca9f7c9635fc300a;hp=00e5a4b2b6912dc8ceae0b27643d5f67496102ea;hb=d5b4262bc0c6cea41c603e8a3a85ab93adfdc36b;hpb=df541170776dc4ac4f241ca480812bd70bcb6eca diff --git a/src/Character.hh b/src/Character.hh index 00e5a4b..087bf49 100644 --- a/src/Character.hh +++ b/src/Character.hh @@ -35,7 +35,6 @@ #include #include #include -#include #include #include @@ -102,6 +101,9 @@ struct Character : public Mf::Entity //derivative.force = Mf::Vector2(0.0, 0.0); derivative.velocity = velocity; derivative.force = force; + + //Mf::Vector2 x = position - Mf::Vector2(500.0, 200.0); + //derivative.force += -15.0 * x - 1.5 * velocity; } void applyDerivative(const Derivative& derivative, Mf::Scalar dt) @@ -136,8 +138,6 @@ struct Character : public Mf::Entity State previous; State current; - Mf::OctreeNodeP treeNode; - private: @@ -146,38 +146,23 @@ private: Mf::Tilemap tilemap_; Mf::Animation animation_; - void updateContainers(); +protected: -public: + Mf::Vector2 userForce; - inline static CharacterP alloc(const std::string& name) - { - return CharacterP(new Character(name)); - } +public: Character(const std::string& name); - inline virtual ~Character() {} + virtual ~Character() {} - void update(Mf::Scalar t, Mf::Scalar dt); - void handleEvent(const Mf::Event& event); - void draw(Mf::Scalar alpha) const; + virtual void update(Mf::Scalar t, Mf::Scalar dt); + virtual void draw(Mf::Scalar alpha) const; Mf::Tilemap& getTilemap(); Mf::Animation& getAnimation(); }; -//inline Character::State operator*(Mf::Scalar scalar, - //const Character::State& state) -//{ - //Character::State newState = state; - //newState.position *= scalar; - //newState.momentum *= scalar; - //newState.recalculate(); - //return newState; -//} - - #endif // _CHARACTER_HH_ /** vim: set ts=4 sw=4 tw=80: *************************************************/