void Graphics::CallSpawnFunction(SpawnMessage* spawn) { //relevant ifs to determine spawn type if (spawn->type == EntityID::Icecream) { GraphicsComponent *gcp = new GraphicsComponent; gcp->SetComponentId(CompID::Graphics); //gcp->type = EntityID::Icecream; gcp->trans = spawn->trans; gcp->SetOwner(spawn->owner); //pushes GCP, into the entity components //that was passed in through the message. spawn->components->push_back(gcp); TexInstances[spawn->entid] = gcp; } else if (spawn->type == EntityID::ParticleGroup) { /*ParticleGroup *gcp; if (spawn->info == NULL) gcp = new ParticleGroup(1.0f,0.f,0.f, 30); else { std::cout << (((float *)spawn->info)[4]); gcp = new ParticleGroup((((float *)spawn->info)[1]), (((float *)spawn->info)[2]), (((float *)spawn->info)[3]), (((float *)spawn->info)[4]), (((float *)spawn->info)[5])); //gcp = new ParticleGroup; } gcp->SetComponentId(CompID::ParticleGroup); //gcp->type = EntityID::ParticleGroup; gcp->trans = spawn->trans; gcp->SetOwner(spawn->owner); spawn->components->push_back(gcp);*/ //NonTexInstances.push_back(gcp); } else if (spawn->type == EntityID::ParticleManager) { ParticleManager<ParticleGroup> *pcp = new ParticleManager<ParticleGroup>; pcp->trans = spawn->trans; pcp->SetOwner(spawn->owner); spawn->components->push_back(pcp); for (int i = 0; i < 50; ++i) pcp->AddParticle(new ParticleGroup(100)); NonTexInstances[spawn->entid] = pcp; } else if (spawn->type == EntityID::ParticleSystem) { ParticleSystem * psys = new ParticleSystem; psys->trans = spawn->trans; psys->SetOwner(spawn->owner); spawn->components->push_back(psys); NonTexInstances[spawn->entid] = psys; } };