diff --git a/Escape-the-Dawn/Systems/PlayerSystem.cpp b/Escape-the-Dawn/Systems/PlayerSystem.cpp index 6e98ad6..04da475 100644 --- a/Escape-the-Dawn/Systems/PlayerSystem.cpp +++ b/Escape-the-Dawn/Systems/PlayerSystem.cpp @@ -35,7 +35,7 @@ void Systems::PlayerSystem::UpdateEntity(double dt, EntityID entity, EntityID pa if(input->KeyState[GLFW_KEY_A] || input->KeyState[GLFW_KEY_LEFT]) { transform->Position -= Camera_Right * (float)dt * speed; } - if(input->KeyState[GLFW_KEY_D] || input->KeyState[GLFW_KEY_RIGHT]) { + else if(input->KeyState[GLFW_KEY_D] || input->KeyState[GLFW_KEY_RIGHT]) { transform->Position += Camera_Right * (float)dt * speed; } if(input->KeyState[GLFW_KEY_W]) { @@ -69,7 +69,6 @@ void Systems::PlayerSystem::UpdateEntity(double dt, EntityID entity, EntityID pa float TurnSpeed = 2.0f; glm::vec3 Euler = glm::eulerAngles(transform->Orientation); - LOG_DEBUG("Euler: %f", Euler.z); if(input->KeyState[GLFW_KEY_LEFT]) { transform->Position -= Ship_Right * (float)dt * speed; @@ -105,7 +104,7 @@ void Systems::PlayerSystem::UpdateEntity(double dt, EntityID entity, EntityID pa } else { - if(Euler.z < 0.5f && Euler.z > -0.5f) + if(Euler.z < 1.5f && Euler.z > -1.5f) transform->Orientation = glm::angleAxis(0,glm::vec3(0,0,1)); else if(Euler.z < 0.f) transform->Orientation = transform->Orientation * glm::angleAxis((float)dt,glm::vec3(0,0,1)); diff --git a/Escape-the-Dawn/Systems/RenderSystem.cpp b/Escape-the-Dawn/Systems/RenderSystem.cpp index c113486..bed895a 100644 --- a/Escape-the-Dawn/Systems/RenderSystem.cpp +++ b/Escape-the-Dawn/Systems/RenderSystem.cpp @@ -32,7 +32,7 @@ void Systems::RenderSystem::UpdateEntity( double dt, EntityID entity, EntityID p #ifdef DEBUG auto bounds = m_World->GetComponent(entity, "Bounds"); if (bounds != nullptr) { - glm::vec3 origin = transformComponent->Position + bounds->Origin; + glm::vec3 origin = transformComponent->Scale * (transformComponent->Position + bounds->Origin); glm::vec3 volumeVector = transformComponent->Scale * bounds->VolumeVector; m_Renderer->AddAABBToDraw(origin, volumeVector); } diff --git a/Escape-the-Dawn/World.cpp b/Escape-the-Dawn/World.cpp index 4c03697..e52c803 100644 --- a/Escape-the-Dawn/World.cpp +++ b/Escape-the-Dawn/World.cpp @@ -65,7 +65,7 @@ void World::RemoveEntity(EntityID entity) for (auto pair : m_EntityComponents[entity]) { auto type = pair.first; auto component = pair.second; - m_ComponentsOfType[type].erase(std::remove(m_ComponentsOfType[type].begin(), m_ComponentsOfType[type].end(), component)); + m_ComponentsOfType[type].remove(component); } RecycleEntityID(entity); } diff --git a/Escape-the-Dawn/World.h b/Escape-the-Dawn/World.h index 009c768..a0c7f22 100644 --- a/Escape-the-Dawn/World.h +++ b/Escape-the-Dawn/World.h @@ -81,7 +81,7 @@ protected: std::unordered_map> m_EntityProperties; - std::unordered_map>> m_ComponentsOfType; + std::unordered_map>> m_ComponentsOfType; std::unordered_map>> m_EntityComponents; EntityID GenerateEntityID();