PROTO::KLUDGE  0.1
Quick prototyping library for games using SDL and OpenGL.
Walker.hpp
Go to the documentation of this file.
1 #ifndef WALKER_HPP
2 #define WALKER_HPP
3 
4 #include "core/Game.hpp"
6 #include "graphics/GLSprite.hpp"
7 #include "steeriously/libinc.hpp"
8 
9 namespace pk
10 {
11 
12 class Walker
13 {
14  public:
15  Walker(b2World* world, GLTexture& texture, GLRect rect, glm::vec2 endPosition, steer::BehaviorParameters* params);
16  virtual ~Walker();
17 
19 
20  void setMoveSpeed(float speed){ m_seek.setWeight(speed); };
21 
22  void setTarget(glm::vec2 target){ m_seek.setTarget({target.x, target.y}); };
23 
24  void update(float dt);
25 
26  private:
27  b2World* m_world;
30  steer::SeekComponent m_seek;
32  glm::vec2 m_initialPosition;
33  glm::vec2 m_endPosition;
34  float m_moveSpeed;
35 };
36 
37 }
38 
39 #endif // WALKER_HPP
Walker(b2World *world, GLTexture &texture, GLRect rect, glm::vec2 endPosition, steer::BehaviorParameters *params)
Definition: Game.hpp:7
b2World * m_world
Definition: Walker.hpp:27
virtual ~Walker()
int m_direction
Definition: Walker.hpp:31
void setTarget(glm::vec2 target)
Definition: Walker.hpp:22
pk::KinematicBody m_body
Definition: Walker.hpp:28
steer::SeekComponent m_seek
Definition: Walker.hpp:30
void update(float dt)
pk::GLSprite & getSprite()
Definition: Walker.hpp:18
Useful for defining size and origin of an OpenGL object.
Definition: GLTransformable.hpp:15
glm::vec2 m_endPosition
Definition: Walker.hpp:33
pk::GLSprite m_sprite
Definition: Walker.hpp:29
A class wrapper to ease the instantiation and use of Box2D kinematic bodies. It also performs convers...
Definition: KinematicBody.hpp:20
void setMoveSpeed(float speed)
Definition: Walker.hpp:20
Class for creating textures usable with OpenGL from SDL.
Definition: GLTexture.hpp:57
glm::vec2 m_initialPosition
Definition: Walker.hpp:32
float m_moveSpeed
Definition: Walker.hpp:34
Definition: GLSprite.hpp:13
Definition: Walker.hpp:12