Созданные ответы форума
-
АвторСообщения
-
Не совсем понятно, а зачем именно так проверять столкновения? По идее не важно с какой стороны подошел, смотрим сначала, будут ли следующие координаты пересекаться с какоц либо стеной, если будут, то просто не обновляем координаты и оставляем как есть. Кажется будет проще. На счет хитбокса, а в каком месте вы пытаетесь получить хитбокс?
09.05.2023 в 22:16 в ответ на: При изменении разрешения экрана(окна) кнопки работают по их прошлым координатам. #5523+1Нужно после изменения размера окна применить новый view к окну, в visible area должны быть соотвественно новые размеры окна
Примерно так
// update the view to the new size of the window
sf::FloatRect visibleArea(0, 0, event.size.width, event.size.height);
window.setView(sf::View(visibleArea));Если текст в переменной типа wstring то просто с этом параметром вызываешь и всё.
Это всё сообщение об ошибке? Обычно информации больше.
Я бы перешёл на свободный компилятор, в идеале на свободной системе, дела с проприетарщиной до хорошего не доведут.
Ты консольное приложение создал?
Напиши свою реализацию, зачем тратить ресурсы на парсинг xml.
Просто напиши между ними sf::sleep(sf::seconds(x)); и на месте x пиши сколько секунд паузу делать.
Думаю вам стоит использовать готовые решения, SFGUI или TGUI.
Привожу пример кода:
C++123456789101112131415161718sf::Texture texture;if (!texture.loadFromFile("cb.bmp"))return EXIT_FAILURE;sf::Sprite sprite(texture);sf::Sprite tmp;sf::RenderTexture tmptexture;tmptexture.create(192,192);tmptexture.clear(sf::Color(0,20,0,0));sprite.setRotation(45);tmptexture.draw(sprite);tmptexture.display();tmp.setTexture(tmptexture.getTexture());tmp.setScale(1.0f, 0.3f);tmp.setPosition(210, 210);потом в окне отображаешь tmp. Потом не забудь сместить sprite чтобы он попадал в кадр, и установить размер tmptexture, но это ты уже сам должен вычислить в зависимости от размера спрайта, угла наклона и степени трансформации.
Почитай пока что про rendertexture, вкратце рендеришь повернутый спрайт сначала в текстуру, потом ее в спрайт переводь и его уже маштабируй. Как домой приду если надо будет подробнее распишу.
C++12345678910111213141516std::string str;sf::String text;// в event цикле...if (event.Type == sf::Event::TextEntered && isPassEnter){// отсекаем не ASCII символыif (event.Text.Unicode < 128){str += static_cast<char>(event.Text.Unicode);text.SetText(str);}}window.Draw(text);isPassEntered – логическая переменная, истинная тогда когда надо вводить пароль.
C++123int xPos, yPos;xPos = sprite.getPosition().x;yPos = sprite.getPosition().y;Думаю вам стоит собрать его из исходников.
Я бы это так реализовал: там где клетка пустая рисовать черный квадрат с зелёной границей, а где есть рисовать чисто зелёный квадрат (или другой цвет на усмотрение.)
-
АвторСообщения