Созданные ответы форума
-
АвторСообщения
-
Идем во вкладку C++->препроцессор и в первой строке «определение препроцессора» в самом начале дописываем: SFML_STATIC;
Если не понятно, то посмотри, в уроке по подключению SFML в VS было где надо прописывать SFML_DYNAMIC, ты вместо этого напиши SFML_STATIC:
А вот здесь меняешь Debug на Release:
Вложения:
You must be logged in to view attached files.Видать, потому что в уроках он двигался в место куда курсор указал, в вашем случае нужно управлять клавишами, значит. Задавайте не две точки, а направление и скорость движения.
Они у вас должны отрисовываться где-то в одном методе или функции, скорее всего в main(), там и меняйте очередность.
Позиция спрайта – это одна точка, там, где у него центр, если не ошибаюсь, какая может быть позиция лобовой части танка, если тока позиции одна? Что значит от одной точки к другой, почему у вас нет второй?
Тут есть возможность вставки кода в удобно виде для чтения, третий слева значок. Для зеркального отображения анимации надо
прибавить ширину кадра к позиции в тайлсете по x и сделать отрицательной ширину.
C++1sprite.setTextureRect(IntRect(36 * int(CF)+36, 48, -30, 48));Надо передавать массив врагов в параметры, вместо одного объекта Enemy, в функции проходиться циклом по всем врагам. Т.е. сравнивать в цикле по очереди столкновение с каждым, и отнимать здоровье.
ахах, прочел код бы)) Скорость мены кадров это и есть то число, на которое умножаете время.
Я не знаю какой у вас код и что в нем менять. Суть в том, что SFML умеет отрисовывать один спрайт поверх другого, вот используйте это и рисуйте сначала пол, потом звездочки.
Можете в классе игрока создать еще одну текстуру, в которую положите изначально изображение взрыва, создаете метод
C++12345Texture textureBoom;void boom(){sprite.setTexture(textureBoom);}потом вызывать просто метод, когда умирает ваш персонаж p.boom();
добавлять в отрисовке ничего не надо, это тот же спрайт, только меняете текстуру.
Пожалуйста.
Вы хотите проверять все объекты класса Enemy через эту функцию вместо одного, или поменять, чтобы можно было объекты других классов проверять?
перефразируйте вопрос. Не понятно что вы хотите поместить.
Код бы скинули, что вы там перекинули.
Попробуйте тогда не использовать готовые направления, а находить угол, и использовать его в переменной направления.
Разве отсчет массива идет не от нуля? Вы просто первую строку и первые элементы карты и не отрисовываете, поменяйте значения в циклах с 1 на 0.
C++12345678for (int i = 0; i < H1; i++)for (int j = 0; j < W1; j++){if (map[i][j] == 'W') map1.setTextureRect(IntRect(64, 0, 32, 32));if (map[i][j] == ' ') map1.setTextureRect(IntRect(0, 0, 32, 32));if (map[i][j] == 'S') map1.setTextureRect(IntRect(32, 0, 32, 32));map1.setPosition(j * 32, i * 32);window.draw(map1);} -
АвторСообщения