//call from init.cpp void CWorldManager::loop() { SDL_Event event; ::SDL_PollEvent(&event); receiver->onEvent(event); if(in_battle == false) { playerControl(event); test->render(); runPeople(); } else { //run battle sim for(int i= 0; i<no_battles.size() ; i++) { //fix this if(no_battles[i]->inBattle()) { no_battles[i]->run(); } else { //remove no_battles[i]->drop(); no_battles.erase(no_battles.begin()+i); } } } }
TEST_F(PlayerControlTest, Construct_SetWorldCameraPosition_PlayerPositionMinus1xMinus1) { mOwnerPosition.set<glm::ivec2>(glm::ivec2(-1, -1)); PlayerControl playerControl(mInput, mWorld, mOwner); EXPECT_EQ(glm::ivec2(-33, -19), mWorldCameraPosition.get<glm::ivec2>()); }
void GameView::mainTimer(){ // Вектор будет хранить указатели на игрока(-ов) QVector <Ship*> player; if ( count_players > 0 ) player.push_back(player1); if ( count_players > 1 ) player.push_back(player2); // X A W S D Tab Q E Space for (int i = 0; i < count_players; ++i) playerControl(player[i], i); }
TEST_F(PlayerControlTest, Construct_SetWorldCameraPosition_PlayerPositionZero) { PlayerControl playerControl(mInput, mWorld, mOwner); EXPECT_EQ(glm::ivec2(-32, -18), mWorldCameraPosition.get<glm::ivec2>()); }
void Engine::runEngine() { sf::Clock clock; sf::Time timer; sf::Clock time; float delta = 0; volatile bool pressed = false; bool menu = false; gameAudio.playGame(); while(!menu) { timer = clock.getElapsedTime(); if(timer >= sf::seconds(1)) { if(!gameOver) player.score++; clock.restart(); } sf::Event event; while(window->pollEvent(event)) { if(event.type == sf::Event::Closed) { gameAudio.stopGame(); window->close(); } } if(sf::Keyboard::isKeyPressed(sf::Keyboard::Escape)) { menu = true; gameAudio.stopGame(); } if(sf::Keyboard::isKeyPressed(sf::Keyboard::Right) && !pressed) player.ship.rotate(player.Rotate*delta); if(sf::Keyboard::isKeyPressed(sf::Keyboard::Left) && !pressed) player.ship.rotate(-player.Rotate*delta); if(sf::Keyboard::isKeyPressed(sf::Keyboard::Up)) { if(player.velocity < player.accLimit) player.velocity += player.accelerate; pressed = true; } else if(sf::Event::KeyReleased) { if(player.velocity > 0) player.velocity -= (player.speedLess*delta); if(event.key.code == sf::Keyboard::Up) pressed = false; } meteorControl(entity, delta); playerControl(&player, delta, pressed); if(!gameOver && collision(player, entity) && !crash) crash = true; window->clear(); window->draw(info); window->draw(player.ship); if(gameOver) { window->clear(); window->draw(game_over); } for(int i=0; i<entity.ile; i++) window->draw(entity.meteor[i]); window->display(); delta = time.getElapsedTime().asSeconds(); time.restart(); } }