kernmodule-cpp/src/player.hpp

29 lines
737 B
C++

#ifndef PLAYER_HPP
#define PLAYER_HPP
#include "core/collidable_node.hpp"
#include "core/input/input_value.hpp"
namespace ce {
class CollisionShape;
class Sprite;
};
class Player : public ce::CollidableNode {
ce::Vecf const SPEED{3.f, 2.5f};
float const ACCELERATION{20.f};
ce::Vecf velocity{0.f, 0.f};
ce::Vecf input{0.f, 0.f};
ce::CollisionShape *shape{nullptr};
ce::Sprite *sprite{nullptr};
public:
Player();
virtual void _tick(double const &delta) override;
void _input_horizontal_movement(ce::InputValue value);
void _input_vertical_movement(ce::InputValue value);
void _on_overlap_enter(ce::CollisionShape *, ce::CollidableNode *node, ce::CollisionShape*);
};
#endif // !PLAYER_HPP