У меня есть класс под названием Element
. Это в основном мой ultra-movieclip и почти все классы в подклассе игры. Element
extends MovieclipПереопределение x getter в ActionScript 3.0
Код в игре построен вокруг мысли, что все Movieclips зарегистрированы в верхнем левом углу. Зарегистрируйте его где-то еще, и все начинает разваливаться.
Проблема в том, что в анимации и в этом случае верхний левый угол перемещается, но точка регистрации не указана, и вы попадаете в точку регистрации где-то посередине Movieclip. Это вызывает проблемы.
Итак, как я могу исправить эту проблему? Мы можем найти истинный верхний левый угол Movieclip, используя getBounds
(this is the documentation for it), но с использованием getBounds
снова и снова в коде будет казаться утомительным.
Моя идея - переопределить геттер x
в классе Element
. Таким образом, мы всегда можем знать, где находится верхний левый угол Element
, без необходимости писать кучу сложного кода каждый раз!
И, ради аргумента, предположим, что просто создание нового геттера типа «trueX
» откроет люк под моими ногами и погрузит меня в клетку голодных сусликов.
Я не могу понять, как переопределить геттер x
! Как мы можем это сделать? Я пропустил невероятно простое решение проблемы, которая не имеет ничего общего с переопределением?
override public function get x():Number {
//I have no idea what I'm doing!
}
Итак ... что не работает? Ваш код переопределения действителен (хотя он фактически ничего не сделает). Ищите советы о том, какой код следует переустановить? Вы хотите получить смещение истинного значения x для учета границ детей? Кроме того, вы действительно должны кормить этих сусликов .... – BadFeelingAboutThis
если вы имеете в виду вращение и такое, вам нужно будет найти другой способ. Изменение хеттера x означает возврат неправильных значений для простой позиции x, что может также вызвать проблемы дальше по дороге. – BotMaster