Сейчас немного перебрав примеры сам нашел ответ, все было в том что я брал готовые исходники из разных мест и ориентировался по ним, чем только глубже себя запутывал, после все стер и написал заново как считал нужным, сейчас уже начинаю по немного понимать как работает, правда не совсем понял как осуществляется поворот из отрицательного угла в -180 в положительный

Код AS3:
public function clicked(e:MouseEvent):void{
angleTo = Math.round(Math.atan2(mouseY - tower.y, mouseX - tower.x)*180/Math.PI);
//angleDiff разность углов, соответственно
angleDiff = angleTo - tower.rotation;
if (angleDiff > 180) angleDiff -= 360;
if (angleDiff < -180) angleDiff += 360;
}
public function processing(e:Event):void{
if(tower.rotation != angleTo){
if(angleDiff > 0) tower.rotation += 1
else{ tower.rotation -= 1}
}
}