/* * Bullet.h * * Created on: 12.08.2012 * Author: Felix */ #ifndef DG_BULLET_H_ #define DG_BULLET_H_ #include "../particle/Particle.h" class Particle; /** * Bullet particle fired by a weapon, may damage actors. */ class Bullet : public Particle { // Public functions. public: Bullet(const Vector2f& position, b2World& world, const std::shared_ptr& texture, Physical& shooter, float direction, int damage); void onCollide(Physical& other, uint16 category); bool doesCollide(Physical& other); // Public variables. public: static const Vector2i SIZE; // Private variables. private: static const float SPEED; //< If speed is too low, bullets push each other away on insert. Physical& mShooter; const int mDamage; }; #endif /* DG_BULLET_H_ */