Removed class PlayerSystem and associated files.
This commit is contained in:
@@ -18,7 +18,11 @@ public:
|
|||||||
: System(eventBroker)
|
: System(eventBroker)
|
||||||
, PureSystem("Trigger")
|
, PureSystem("Trigger")
|
||||||
, m_Octree(octree)
|
, m_Octree(octree)
|
||||||
{ }
|
{
|
||||||
|
EVENT_SUBSCRIBE_MEMBER(m_ETouch, &TriggerSystem::OnTouch);
|
||||||
|
EVENT_SUBSCRIBE_MEMBER(m_EEnter, &TriggerSystem::OnEnter);
|
||||||
|
EVENT_SUBSCRIBE_MEMBER(m_ELeave, &TriggerSystem::OnLeave);
|
||||||
|
}
|
||||||
|
|
||||||
virtual void UpdateComponent(World* world, EntityWrapper& entity, ComponentWrapper& component, double dt) override;
|
virtual void UpdateComponent(World* world, EntityWrapper& entity, ComponentWrapper& component, double dt) override;
|
||||||
|
|
||||||
@@ -27,6 +31,14 @@ private:
|
|||||||
std::unordered_map<EntityID, std::unordered_set<EntityID>> m_EntitiesTouchingTrigger;
|
std::unordered_map<EntityID, std::unordered_set<EntityID>> m_EntitiesTouchingTrigger;
|
||||||
std::unordered_map<EntityID, std::unordered_set<EntityID>> m_EntitiesCompletelyInTrigger;
|
std::unordered_map<EntityID, std::unordered_set<EntityID>> m_EntitiesCompletelyInTrigger;
|
||||||
|
|
||||||
|
//TODO: Only exists for debug purposes, remove later.
|
||||||
|
EventRelay<TriggerSystem, Events::TriggerEnter> m_EEnter;
|
||||||
|
bool OnEnter(const Events::TriggerEnter &event);
|
||||||
|
EventRelay<TriggerSystem, Events::TriggerTouch> m_ETouch;
|
||||||
|
bool OnTouch(const Events::TriggerTouch &event);
|
||||||
|
EventRelay<TriggerSystem, Events::TriggerLeave> m_ELeave;
|
||||||
|
bool OnLeave(const Events::TriggerLeave &event);
|
||||||
|
|
||||||
//True if leave event was thrown.
|
//True if leave event was thrown.
|
||||||
bool throwLeaveIfWasInTrigger(std::unordered_set<EntityID>& triggerSet, EntityID pId, EntityID tId);
|
bool throwLeaveIfWasInTrigger(std::unordered_set<EntityID>& triggerSet, EntityID pId, EntityID tId);
|
||||||
template<typename Event>
|
template<typename Event>
|
||||||
|
|||||||
@@ -1,34 +0,0 @@
|
|||||||
#ifndef PlayerSystem_h__
|
|
||||||
#define PlayerSystem_h__
|
|
||||||
|
|
||||||
#include <GLFW/glfw3.h>
|
|
||||||
#include <glm/common.hpp>
|
|
||||||
|
|
||||||
#include "Common.h"
|
|
||||||
#include "Core/System.h"
|
|
||||||
#include "Collision/ETrigger.h"
|
|
||||||
|
|
||||||
class PlayerSystem : public PureSystem
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
PlayerSystem(EventBroker* eventBroker)
|
|
||||||
: System(eventBroker)
|
|
||||||
, PureSystem("Player")
|
|
||||||
{
|
|
||||||
EVENT_SUBSCRIBE_MEMBER(m_ETouch, &PlayerSystem::OnTouch);
|
|
||||||
EVENT_SUBSCRIBE_MEMBER(m_EEnter, &PlayerSystem::OnEnter);
|
|
||||||
EVENT_SUBSCRIBE_MEMBER(m_ELeave, &PlayerSystem::OnLeave);
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual void UpdateComponent(World* world, EntityWrapper& entity, ComponentWrapper& component, double dt) override;
|
|
||||||
private:
|
|
||||||
float m_Speed = 5;
|
|
||||||
EventRelay<PlayerSystem, Events::TriggerEnter> m_EEnter;
|
|
||||||
bool OnEnter(const Events::TriggerEnter &event);
|
|
||||||
EventRelay<PlayerSystem, Events::TriggerTouch> m_ETouch;
|
|
||||||
bool PlayerSystem::OnTouch(const Events::TriggerTouch &event);
|
|
||||||
EventRelay<PlayerSystem, Events::TriggerLeave> m_ELeave;
|
|
||||||
bool PlayerSystem::OnLeave(const Events::TriggerLeave &event);
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif
|
|
||||||
@@ -78,3 +78,20 @@ bool TriggerSystem::throwLeaveIfWasInTrigger(std::unordered_set<EntityID>& trigg
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool TriggerSystem::OnTouch(const Events::TriggerTouch &event)
|
||||||
|
{
|
||||||
|
LOG_INFO("Player entity %i touched trigger entity %i.", event.Entity, event.Trigger);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TriggerSystem::OnEnter(const Events::TriggerEnter &event)
|
||||||
|
{
|
||||||
|
LOG_INFO("Player entity %i entered trigger entity %i.", event.Entity, event.Trigger);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TriggerSystem::OnLeave(const Events::TriggerLeave &event)
|
||||||
|
{
|
||||||
|
LOG_INFO("Player entity %i left trigger entity %i.", event.Entity, event.Trigger);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
@@ -3,7 +3,6 @@
|
|||||||
#include "Collision/TriggerSystem.h"
|
#include "Collision/TriggerSystem.h"
|
||||||
#include "Collision/CollisionSystem.h"
|
#include "Collision/CollisionSystem.h"
|
||||||
#include "Systems/RaptorCopterSystem.h"
|
#include "Systems/RaptorCopterSystem.h"
|
||||||
#include "Systems/PlayerSystem.h"
|
|
||||||
#include "Systems/HealthSystem.h"
|
#include "Systems/HealthSystem.h"
|
||||||
#include "Systems/PlayerMovementSystem.h"
|
#include "Systems/PlayerMovementSystem.h"
|
||||||
#include "Systems/SpawnerSystem.h"
|
#include "Systems/SpawnerSystem.h"
|
||||||
@@ -76,7 +75,6 @@ Game::Game(int argc, char* argv[])
|
|||||||
// All systems with orderlevel 0 will be updated first.
|
// All systems with orderlevel 0 will be updated first.
|
||||||
unsigned int updateOrderLevel = 0;
|
unsigned int updateOrderLevel = 0;
|
||||||
m_SystemPipeline->AddSystem<RaptorCopterSystem>(updateOrderLevel);
|
m_SystemPipeline->AddSystem<RaptorCopterSystem>(updateOrderLevel);
|
||||||
m_SystemPipeline->AddSystem<PlayerSystem>(updateOrderLevel);
|
|
||||||
m_SystemPipeline->AddSystem<EditorSystem>(updateOrderLevel, m_Renderer);
|
m_SystemPipeline->AddSystem<EditorSystem>(updateOrderLevel, m_Renderer);
|
||||||
m_SystemPipeline->AddSystem<HealthSystem>(updateOrderLevel);
|
m_SystemPipeline->AddSystem<HealthSystem>(updateOrderLevel);
|
||||||
m_SystemPipeline->AddSystem<PlayerMovementSystem>(updateOrderLevel);
|
m_SystemPipeline->AddSystem<PlayerMovementSystem>(updateOrderLevel);
|
||||||
|
|||||||
@@ -1,42 +0,0 @@
|
|||||||
#include "Systems/PlayerSystem.h"
|
|
||||||
|
|
||||||
void PlayerSystem::UpdateComponent(World* world, EntityWrapper& entity, ComponentWrapper& component, double dt)
|
|
||||||
{
|
|
||||||
component["Velocity"] = glm::vec3(0.f, 0.f, 0.f);
|
|
||||||
if ((bool&)component["Forward"] == true) {
|
|
||||||
((glm::vec3&)component["Velocity"]).z = m_Speed * float(dt) * -1;
|
|
||||||
|
|
||||||
}
|
|
||||||
if ((bool&)component["Left"] == true) {
|
|
||||||
((glm::vec3&)component["Velocity"]).x = m_Speed * float(dt) * -1;
|
|
||||||
}
|
|
||||||
if ((bool&)component["Back"] == true) {
|
|
||||||
((glm::vec3&)component["Velocity"]).z = m_Speed * float(dt);
|
|
||||||
}
|
|
||||||
if ((bool&)component["Right"] == true) {
|
|
||||||
((glm::vec3&)component["Velocity"]).x = m_Speed * float(dt);
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((glm::vec3)component["Velocity"] != glm::vec3(0.f)) {
|
|
||||||
ComponentWrapper& transform = world->GetComponent(component.EntityID, "Transform");
|
|
||||||
(glm::vec3&)transform["Position"] += (glm::vec3)component["Velocity"];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool PlayerSystem::OnTouch(const Events::TriggerTouch &event)
|
|
||||||
{
|
|
||||||
LOG_INFO("Player entity %i touched widget (entity %i).", event.Entity, event.Trigger);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool PlayerSystem::OnEnter(const Events::TriggerEnter &event)
|
|
||||||
{
|
|
||||||
LOG_INFO("Player entity %i entered widget (entity %i).", event.Entity, event.Trigger);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool PlayerSystem::OnLeave(const Events::TriggerLeave &event)
|
|
||||||
{
|
|
||||||
LOG_INFO("Player entity %i left widget (entity %i).", event.Entity, event.Trigger);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user