Привет, небольшой вопрос по SFML , у меня есть карта из 1 и W, в цикле обработки смотрит если 1 то рисую спрайт травы если W то спрайт стены, при движении я прописал что
if(!objSprite.getGlobalBounds().intersects(s_breakablewall.getGlobalBounds()) , где objsprite спрайт игрока, когда запускаю игру оно реагирует только на одну из построенных стен а сквозь остальные спокойно едет, не подскажете в чем ошибка?
Карты отрисовка
P.S траву всегда рисую чтоб стена поверх нее была а не на черном квадрате
for (int i = 0; i < Y; i++){
for (int j = 0; j < X; j++){
s_grass.setPosition(j * 64, i * 64);
window.draw(s_grass);
switch (Map[i][j]){
case’w':
s_breakablewall.setPosition(j * 64, i * 64);
window.draw(s_breakablewall);
break;
Движение
if (!objSprite.getGlobalBounds().intersects(s_breakablewall.getGlobalBounds())){
switch (rotation){
case’r':
objSprite.setRotation(0);
objSprite.move(0.2, 0);
break;
case’l':
objSprite.move(-0.2, 0);
objSprite.setRotation(180);
break;
case’u':
objSprite.move(0, -0.2);
objSprite.setRotation(270);
break;
case’d':
objSprite.move(0, 0.2);
objSprite.setRotation(90);
break;
}
}
else{
switch (rotation){
case’r':
objSprite.move(-0.2, 0);
break;
case’l':
objSprite.move(0.2, 0);
break;
case’u':
objSprite.move(0, 0.2);
break;
case’d':
objSprite.move(0, -0.2);
break;
}
}
return objSprite;