Some cleanup of the code

This commit is contained in:
verysecrethero
2016-02-09 16:15:19 +01:00
parent 971fee4a0c
commit 8bdf87da12
3 changed files with 5 additions and 80 deletions
+1 -13
View File
@@ -5,35 +5,23 @@
#include "Core/Transform.h"
#include "Core/ResourceManager.h"
#include "Core/EntityFileParser.h"
#include "Core/EPickupSpawned.h"
#include "Core/EPlayerDamage.h"
#include "Engine/Collision/ETrigger.h"
#include "Common.h"
#include <tuple>
//temp
#include "Input/EInputCommand.h"
#include "Rendering/ESetCamera.h"
#include <glm/gtc/quaternion.hpp>
#include <glm/gtx/vector_angle.hpp>
class DamageIndicatorSystem : public ImpureSystem
class DamageIndicatorSystem : public System
{
public:
DamageIndicatorSystem(World* world, EventBroker* eventBroker);
virtual void Update(double dt) override;
private:
EventRelay<DamageIndicatorSystem, Events::PlayerDamage> m_DamageTakenFromPlayer;
bool OnPlayerDamageTaken(Events::PlayerDamage& e);
//temp
EventRelay<DamageIndicatorSystem, Events::InputCommand> m_EInputCommand;
bool OnInputCommand(Events::InputCommand& e);
EventRelay<DamageIndicatorSystem, Events::SetCamera> m_ESetCamera;
bool OnSetCamera(const Events::SetCamera& e);
+3 -67
View File
@@ -4,23 +4,15 @@ DamageIndicatorSystem::DamageIndicatorSystem(World* m_World, EventBroker* eventB
: System(m_World, eventBroker)
{
EVENT_SUBSCRIBE_MEMBER(m_DamageTakenFromPlayer, &DamageIndicatorSystem::OnPlayerDamageTaken);
//TEMP
EVENT_SUBSCRIBE_MEMBER(m_EInputCommand, &DamageIndicatorSystem::OnInputCommand);
//current camera
EVENT_SUBSCRIBE_MEMBER(m_ESetCamera, &DamageIndicatorSystem::OnSetCamera);
}
void DamageIndicatorSystem::Update(double dt)
{
}
bool DamageIndicatorSystem::OnPlayerDamageTaken(Events::PlayerDamage& e)
{
auto test1 = (glm::vec3)e.PlayerShooter["Transform"]["Orientation"];
auto test2 = (glm::vec3)e.Player["Transform"]["Orientation"];
if (m_CurrentCamera == -1) {
return false;
}
//grab players direction
auto playerOrientation = glm::quat((glm::vec3)e.Player["Transform"]["Orientation"]);
@@ -51,8 +43,6 @@ bool DamageIndicatorSystem::OnPlayerDamageTaken(Events::PlayerDamage& e)
angleBetweenVectors = -angleBetweenVectors;
}
//LOG_INFO("vector angle %f %f %f %f", t1, t3, t4, enemyPlayerVector.x);
//load & set the "2d" sprite
auto entityFile = ResourceManager::Load<EntityFile>("Schema/Entities/SpriteTestTemporary.xml");
EntityFileParser parser(entityFile);
@@ -65,60 +55,6 @@ bool DamageIndicatorSystem::OnPlayerDamageTaken(Events::PlayerDamage& e)
return true;
}
//TEMP
bool DamageIndicatorSystem::OnInputCommand(Events::InputCommand& e)
{
if (e.Command != "Jump" || e.Value > 0) {
return false;
}
//auto entityFile = ResourceManager::Load<EntityFile>("Schema/Entities/SpriteTestTemporary.xml");
//EntityFileParser parser(entityFile);
//EntityID spriteID = parser.MergeEntities(m_World);
////get currently active camera
////auto cameras = m_World->GetComponents("Camera");
////for (auto& cCamera : *cameras) {
////
//// //auto temp = m_World->GetParent(cCamera.EntityID);
//// m_World->SetParent(spriteID, cCamera.EntityID);
////}
////m_CurrentCamera
//m_World->SetParent(spriteID, m_CurrentCamera);
//auto cameraWrapper = EntityWrapper(m_World, spriteID);
//cameraWrapper["Transform"]["Orientation"] = glm::vec3(1, 1, 1);
//ray player-enemyplayer eller bara spelarnas direction
//TODO: life time, rotering
//den ska väl vara där hela tiden, bara det att den inte syns
//EntityWrapper(m_World, spriteID);
auto players = m_World->GetComponents("Player");
EntityID id1 = (*players->begin()).EntityID;
EntityID id2;
int lameCounter = 0;
for (auto& cPlayers : *players) {
if (lameCounter == 1) {
id2 = cPlayers.EntityID;
}
lameCounter++;
}
if (lameCounter != 2) {
return false;
}
//do something here
Events::PlayerDamage ePlayerDamage;
ePlayerDamage.Player = EntityWrapper(m_World, id1);
ePlayerDamage.PlayerShooter = EntityWrapper(m_World, id2);
ePlayerDamage.Damage = 1;
m_EventBroker->Publish(ePlayerDamage);
return true;
}
bool DamageIndicatorSystem::OnSetCamera(const Events::SetCamera& e) {
m_CurrentCamera = e.CameraEntity.ID;
return true;
+1
View File
@@ -134,6 +134,7 @@ bool WeaponSystem::OnShoot(Events::Shoot& eShoot)
// TODO: Weapon damage calculations etc
Events::PlayerDamage ePlayerDamage;
ePlayerDamage.Player = player;
ePlayerDamage.PlayerShooter = eShoot.Player;
ePlayerDamage.Damage = 100;
m_EventBroker->Publish(ePlayerDamage);