Код: Выделить всё
class Potwor:public sf::Drawable
{
private:
sf::Texture MonsterTexture;
...
Potwor::Potwor(sf::Vector2f pozycja,int rodzaj) {
MonsterTexture.loadFromFile("Potwor.png");
MonsterSprite.setTexture(MonsterTexture);
...
< /code>
В классе игры у меня есть вектор объектов класса Monster, но когда я нарисую их, текстура пустая. < /p>
class Gra
{
private:
std::vector
potwory1;
...
void Gra::render() {
for (Potwor& potwor : potwory1) {
if (gracz.PozY() < potwor.GetY()) {
window.draw(potwor);
}
}
< /code>
Метод рисования в классе монстра выглядит следующим образом: < /p>
void Potwor::draw(sf::RenderTarget& target, sf::RenderStates states) const
{
target.draw(ksztalt, states);
target.draw(HitboxShape, states);
target.draw(MonsterSprite);
if (rodzaj == 3) {
for (auto& projectile : projectiles) {
target.draw(projectile.ksztalt);
target.draw(projectile.HitBoxShape);
}
}
}
< /code>
У меня была похожая проблема с классом игрока, но это работало, когда я инициировал объект, как это: < /p>
Gra::Gra() :gracz({ 375.f,275.f }), ... {
...
Полный код: https://github.com/darksourerer-swmg/cpp -Game
Подробнее здесь: https://stackoverflow.com/questions/793 ... nk-texture