/*] Copyright (c) 2009-2010, Charles McGarvey [************************** **] All rights reserved. * * vi:ts=4 sw=4 tw=75 * * Distributable under the terms and conditions of the 2-clause BSD license; * see the file COPYING for a complete text of the license. * **************************************************************************/ #ifndef _CHARACTER_HH_ #define _CHARACTER_HH_ #include #include #include #include #include #include #include #include #include "Animation.hh" class Character; typedef boost::shared_ptr CharacterP; /** * Parent class of animate objects with "personalities." This basically * includes the heroine herself and the bad guys. */ class Character : public Mf::RigidBody2 { public: Character(const std::string& name); virtual ~Character() {} virtual void update(Mf::Scalar t, Mf::Scalar dt); virtual void draw(Mf::Scalar alpha) const; void addImpulse(Mf::Vector2 impulse); void addForce(Mf::Vector2 force); void setPosition(Mf::Vector2 position); //virtual int getOctant(const Mf::Aabb<3>& aabb) const; Mf::Texture tilemap; Animation animation; }; #endif // _CHARACTER_HH_