even more bug fixes
This commit is contained in:
@@ -189,7 +189,7 @@ public:
|
||||
// {
|
||||
// auto Pe = m_World->CreateEntity();
|
||||
// auto transform = m_World->AddComponent<Components::Transform>(Pe);
|
||||
// auto particleEmitter= m_World->AddComponent<Components::ParticleEmitter>(Pe);
|
||||
// auto particleEmitter= m_World->AddComponent<Components::Emitter>(Pe);
|
||||
//
|
||||
// transform->Position = glm::vec3(0.f, -5.f, -10.f);
|
||||
// particleEmitter->GravityScale = 0.0f;
|
||||
|
||||
@@ -14,7 +14,7 @@ struct ParticleEmitter : public Component
|
||||
double SpawnRate = 1.f;
|
||||
double TimeSinceLastSpawn = 0;
|
||||
|
||||
//ParticleSystem variables
|
||||
//System variables
|
||||
float GravityScale = 1.0f;
|
||||
};
|
||||
|
||||
|
||||
@@ -99,9 +99,9 @@ namespace dd
|
||||
//TODO: Fill struct with info needed.
|
||||
struct ParticleEmitter
|
||||
{
|
||||
std::vector<b2ParticleSystem*> ParticleSystem;
|
||||
std::vector<EntityID> ParticleEmitter;
|
||||
std::vector<EntityID> ParticleTemplate;
|
||||
std::vector<b2ParticleSystem*> System;
|
||||
std::vector<EntityID> Emitter;
|
||||
std::vector<EntityID> Template;
|
||||
};
|
||||
ParticleEmitter m_ParticleEmitters;
|
||||
|
||||
|
||||
@@ -371,10 +371,10 @@ void dd::Systems::PhysicsSystem::CreateParticleGroup(EntityID e)
|
||||
|
||||
void dd::Systems::PhysicsSystem::UpdateParticleEmitters(double dt)
|
||||
{
|
||||
for (int i = 0; i < m_ParticleEmitters.ParticleSystem.size(); i++) {
|
||||
auto e = m_ParticleEmitters.ParticleEmitter[i];
|
||||
auto pt = m_ParticleEmitters.ParticleTemplate[i];
|
||||
auto ps = m_ParticleEmitters.ParticleSystem[i];
|
||||
for (int i = 0; i < m_ParticleEmitters.System.size(); i++) {
|
||||
auto e = m_ParticleEmitters.Emitter[i];
|
||||
auto pt = m_ParticleEmitters.Template[i];
|
||||
auto ps = m_ParticleEmitters.System[i];
|
||||
|
||||
|
||||
auto emitter = m_World->GetComponent<Components::ParticleEmitter>(e);
|
||||
@@ -426,14 +426,14 @@ void dd::Systems::PhysicsSystem::CreateParticleEmitter(EntityID entity)
|
||||
auto particleTemplate = m_World->GetComponent<Components::Template>(c);
|
||||
if (!p) {
|
||||
continue;
|
||||
LOG_WARNING("--ParticleEmitter's Child is not a particle.");
|
||||
LOG_WARNING("--Emitter's Child is not a particle.");
|
||||
}
|
||||
if(!particleTemplate) {
|
||||
LOG_ERROR("ParticleEmitter's particleChild is not a template.");
|
||||
LOG_ERROR("Emitter's particleChild is not a template.");
|
||||
continue;
|
||||
}
|
||||
if (pf != 0) {
|
||||
LOG_WARNING("ParticleEmitter has more than one child that is a particleTemplate, only the first one is used.");
|
||||
LOG_WARNING("Emitter has more than one child that is a particleTemplate, only the first one is used.");
|
||||
break;
|
||||
}
|
||||
childEntity = c;
|
||||
@@ -441,9 +441,9 @@ void dd::Systems::PhysicsSystem::CreateParticleEmitter(EntityID entity)
|
||||
pf++;
|
||||
}
|
||||
//TODO: Skicka med fler flaggor till particlesystemet;
|
||||
m_ParticleEmitters.ParticleSystem.push_back(CreateParticleSystem(particle->Radius, 0.f));
|
||||
m_ParticleEmitters.ParticleEmitter.push_back(entity);
|
||||
m_ParticleEmitters.ParticleTemplate.push_back(childEntity);
|
||||
m_ParticleEmitters.System.push_back(CreateParticleSystem(particle->Radius, 0.f));
|
||||
m_ParticleEmitters.Emitter.push_back(entity);
|
||||
m_ParticleEmitters.Template.push_back(childEntity);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user