Container::Container(Vector2f pos, float rot, std::vector<Item*>* i, int t) : m_pos(pos), rotation(rot), items(i) { type = t; open = false; invCols = 4; invRows = 5; invSize = 20; LoadAssets(); SetupSlots(); GenerateItems(); createBox2dBody(); }
void Game::HandleInput() { sf::Event evento; while (wnd->pollEvent(evento)) { switch (evento.type) { case sf::Event::EventType::Closed://Evento para capturar el cierre de la ventana { wnd->close();//Cierro la ventana } break; case sf::Event::KeyPressed: { if (evento.key.code == sf::Keyboard::Space) { if (currentState == GameStates::INTRO) { currentState = GameStates::PLAYING; GenerateItems(layers); main->play(); } } if (evento.key.code == sf::Keyboard::Escape) { currentState = GameStates::INTRO; wnd->setView(wnd->getDefaultView()); main->stop(); } if (evento.key.code == sf::Keyboard::R) { if (currentState == GameStates::PLAYING) { //map->Load("map_test_2.tmx"); //layers.clear(); //layers = map->GetLayers(); GenerateItems(layers); main->stop(); main->play(); } } if (evento.key.code == sf::Keyboard::P) { main->pause(); pauseSound->play(); if (oldState != currentState) oldState = currentState; if (currentState == GameStates::PLAYING) currentState = GameStates::PAUSED; else { currentState = GameStates::PLAYING; main->play(); } } } break; default: break; } } }