звучит так, как будто вы хотите определить, какую сторону вы видите, на основе поворота и угла перспективы вместе взятых.
вращение вы уже умеете читать.
и похоже, что угол перспективы основан только на изменении x (в зависимости от вашего изображения)
в игровом плане это все равно, что видеть глазами героя, который может только шагать влево и вправо, но не вперед или назад. Пожалуйста, подтвердите.
Если это так, я рекомендую найти угол перспективы с помощью чего-то подобного.
Это 2-я математика, как будто вы смотрите на свою камеру (как герой) и ваше изображение сверху. и найти угол между ними.
//find difference between hero and pic positions (delta means difference or change)
var deltaPt:Point = new Point(pic.x - hero.x, pic.y - hero.y);
//find angle between hero and pic, then convert to degrees from radians
var angle:Number = Math.atan2(deltaPt.y, deltaPt.x) * 180 / Math.PI
var testAngle:Number = pic.rotation + angle;
trace("angle: "+angle);
trace("testAngle: "+testAngle);
проверьте, есть ли эти следы рядом с тем, что вы ожидаете увидеть.
возможно, угол должен быть отрицательным, а не положительным, или смещаться на 90º или что-то в этом духе (я склонен угадывать и проверять это немного, извините за наклон)
если ваш герой также может вращаться ... это может стать более сложным, или это может просто включать добавление вращения героя в микс, я еще не продумал эту часть.
как только вы настроите его правильно, оно должно закончиться чем-то вроде этого, что, я уверен, вы уже знаете.
if(testAngle > 90){gotoAndStop(2)}
else{gotoAndStop(1)};
надеюсь, что это поможет некоторым.