void ProjectileSpawner::spawn(int projectileCount, const glm::vec2& position, const glm::vec2& velocity, float angle) { Game* gameInstance = Game::GetInstance(); for(int i = 0; i < projectileCount; i++) { Projectile* projectile = new Projectile(0, glm::vec4(0.0f, 0.0f, 1.0f, 1.0f), _projectileWidth, _projectileHeight, glm::vec2(position.x, position.y), angle, _source, _projectileDamage); projectile->setSkin(_projectileSkin); projectile->createB2Data(); projectile->setVelocity(velocity * _projectileVelocity); projectile->spawn(); gameInstance->getGameplayScreen()->getProjectileManager()->add(projectile); if(_playSound) { gameInstance->getAudioManager()->playEvent("event:/effects/laser_shot", true); } } }