WIP Level System + Pad

This commit is contained in:
PlatinumSkink
2015-09-10 20:28:48 +02:00
parent 193720e883
commit 6a81751e56
7 changed files with 108 additions and 19 deletions
+14 -1
View File
@@ -9,7 +9,11 @@
#include "Core/System.h"
#include "Core/EventBroker.h"
#include "Core/EKeyDown.h"
#include "Core/EKeyUp.h"
#include "Input/EBindKey.h"
#include "Core/CTransform.h"
#include "Rendering/CSprite.h"
#include "Core/Component.h"
namespace dd
{
@@ -24,14 +28,23 @@ public:
: System(world, eventBroker)
{ }
void Initialize() override ;
void Initialize() override;
void Update(double dt) override;
private:
dd::EventRelay<PadSystem, dd::Events::KeyDown> m_EKeyDown;
dd::EventRelay<PadSystem, dd::Events::KeyUp> m_EKeyUp;
class PadSteeringInputController;
std::array<std::shared_ptr<PadSteeringInputController>, 4> m_PadInputControllers;
bool OnKeyDown(const dd::Events::KeyDown &event);
bool OnKeyUp(const dd::Events::KeyUp &event);
EntityID ent;
std::shared_ptr<Components::Transform> transform;
std::shared_ptr<Components::Sprite> sprite;
glm::vec3 acceleration = glm::vec3(0.f, 0.f, 0.f);
bool left = false, right = false;
};
class PadSystem::PadSteeringInputController : InputController<PadSystem>