Возникли проблемы в управлении спрайтом. Коды клавиш управления храню в (int keyLeft, keyRight), они могут изменяться. Появляется системная задержка винды перед непрерывным вводом клавиши. Если цикл while закрываю после строки window.close(), спрайт движется постоянно влево или вправо после однократного нажатия клавиши.
while (window.pollEvent(event)) {
if (event.type == sf::Event::Closed)
window.close();
if (sf::Event::KeyPressed) {
if(event.key.code==keyLeft) ball.x-=15+platSpeed/2,0;
else if(event.key.code==keyRight) ball.x+=15+platSpeed/2,0;
else if(event.key.code==27) menu(window, text);
}
}
Попробуйте использовать sf::Keyboard::isKeyPressed(), вместо Event. Также цикл проверки события "Closed" лучше делать отдельно от обработки. Например вот так:
struct Keys {
sf::Keyboard::Key keyLeft = sf::Keyboard::A;
sf::Keyboard::Key keyRight = sf::Keyboard::D;
sf::Keyboard::Key keyMenu = sf::Keyboard::F;
} keys;
while (window.isOpen()) {
while (window.pollEvent(event)) {
if (event.type == sf::Event::Closed)
window.close();
}
if(sf::Keyboard::isKeyPressed(keys.keyLeft))
ball.x-=15+platSpeed/2,0;
if(sf::Keyboard::isKeyPressed(keys.keyLeft))
ball.x+=15+platSpeed/2,0;
if(sf::Keyboard::isKeyPressed(keys.keyMenu))
menu(window, text);
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
есть вот такой буфер hex-значений - fe ff 03 99 00 01
Нужно получить аудио-стрим микрофона (не звука во вкладке, а именно микрофона) через расширение ChromeОбычный navigator