Loading src/GlApplication.cpp +26 −0 Changes for src/GlApplication.cpp: 26 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -275,6 +275,19 @@ void GlApplication::updateGame() { didP2Die = true; } } for (int asteroidIndex = 0; asteroidIndex < this->m_entities[ModelKeys::ASTEROID].size(); ++asteroidIndex) { std::shared_ptr<Entity> asteroid = this->m_entities[ModelKeys::ASTEROID][asteroidIndex]; if (missile->check_box_intersection(this->m_models[ModelKeys::LASER_1], *asteroid.get(), this->m_models[ModelKeys::ASTEROID])) { this->m_entities[ModelKeys::LASER_1].erase(this->m_entities[ModelKeys::LASER_1].begin()+index); std::cout << "A missile hit an asteroid !" << std::endl; } } if (!missile->check_box_intersection(this->m_models[ModelKeys::LASER_1], *this->m_entities[ModelKeys::SKYBOX][0], this->m_models[ModelKeys::SKYBOX])) { this->m_entities[ModelKeys::LASER_1].erase(this->m_entities[ModelKeys::LASER_1].begin()+index); std::cout << "A missile went beyond the limits" << std::endl; } } for (int index = this->m_entities[ModelKeys::LASER_2].size()-1; index != -1; --index) { Loading @@ -289,6 +302,19 @@ void GlApplication::updateGame() { didP1Die = true; } } for (int asteroidIndex = 0; asteroidIndex < this->m_entities[ModelKeys::ASTEROID].size(); ++asteroidIndex) { std::shared_ptr<Entity> asteroid = this->m_entities[ModelKeys::ASTEROID][asteroidIndex]; if (missile->check_box_intersection(this->m_models[ModelKeys::LASER_2], *asteroid.get(), this->m_models[ModelKeys::ASTEROID])) { this->m_entities[ModelKeys::LASER_2].erase(this->m_entities[ModelKeys::LASER_2].begin()+index); std::cout << "A missile hit an asteroid !" << std::endl; } } if (!missile->check_box_intersection(this->m_models[ModelKeys::LASER_2], *this->m_entities[ModelKeys::SKYBOX][0], this->m_models[ModelKeys::SKYBOX])) { this->m_entities[ModelKeys::LASER_2].erase(this->m_entities[ModelKeys::LASER_2].begin()+index); std::cout << "A missile went beyond the limits" << std::endl; } } GLFWwindow *window = glfwGetCurrentContext(); Loading Loading
src/GlApplication.cpp +26 −0 Changes for src/GlApplication.cpp: 26 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -275,6 +275,19 @@ void GlApplication::updateGame() { didP2Die = true; } } for (int asteroidIndex = 0; asteroidIndex < this->m_entities[ModelKeys::ASTEROID].size(); ++asteroidIndex) { std::shared_ptr<Entity> asteroid = this->m_entities[ModelKeys::ASTEROID][asteroidIndex]; if (missile->check_box_intersection(this->m_models[ModelKeys::LASER_1], *asteroid.get(), this->m_models[ModelKeys::ASTEROID])) { this->m_entities[ModelKeys::LASER_1].erase(this->m_entities[ModelKeys::LASER_1].begin()+index); std::cout << "A missile hit an asteroid !" << std::endl; } } if (!missile->check_box_intersection(this->m_models[ModelKeys::LASER_1], *this->m_entities[ModelKeys::SKYBOX][0], this->m_models[ModelKeys::SKYBOX])) { this->m_entities[ModelKeys::LASER_1].erase(this->m_entities[ModelKeys::LASER_1].begin()+index); std::cout << "A missile went beyond the limits" << std::endl; } } for (int index = this->m_entities[ModelKeys::LASER_2].size()-1; index != -1; --index) { Loading @@ -289,6 +302,19 @@ void GlApplication::updateGame() { didP1Die = true; } } for (int asteroidIndex = 0; asteroidIndex < this->m_entities[ModelKeys::ASTEROID].size(); ++asteroidIndex) { std::shared_ptr<Entity> asteroid = this->m_entities[ModelKeys::ASTEROID][asteroidIndex]; if (missile->check_box_intersection(this->m_models[ModelKeys::LASER_2], *asteroid.get(), this->m_models[ModelKeys::ASTEROID])) { this->m_entities[ModelKeys::LASER_2].erase(this->m_entities[ModelKeys::LASER_2].begin()+index); std::cout << "A missile hit an asteroid !" << std::endl; } } if (!missile->check_box_intersection(this->m_models[ModelKeys::LASER_2], *this->m_entities[ModelKeys::SKYBOX][0], this->m_models[ModelKeys::SKYBOX])) { this->m_entities[ModelKeys::LASER_2].erase(this->m_entities[ModelKeys::LASER_2].begin()+index); std::cout << "A missile went beyond the limits" << std::endl; } } GLFWwindow *window = glfwGetCurrentContext(); Loading