0
Я пытаюсь сделать игру стрелка, и, пытаясь закодировать врагов , чтобы посмотреть в сторону игрока, я попытался использовать тригонометрию, чтобы найти нужный поворот, но код не работал, и враг вращается беспорядочно. Это код:SFML 2.1 Как сделать один спрайт лицом другого спрайта
void face(sf::Sprite& target, sf::Sprite& subject){
int adjacent = subject.getPosition().x - target.getPosition().x;
int opposite = target.getPosition().y - subject.getPosition().y;
if (opposite == 0){
opposite++;
}
if (adjacent == 0){
adjacent++;
}
//if (adjacent < 0){
//adjacent += 180;
//}
float result=atan(/*opposite/adjacent*/adjacent/opposite)*180/PI;
subject.setRotation(result);
}
Любой совет будет оценен!
«смежные» и «противные» должны быть поплавками, потому что позиция 'sf :: Sprite' - это поплавки. – DarkPhantom