Похоже, все эти DisplayObject
s.
Для группы DisplayObject
с, добавить их к DisplayObjectContainer
:
var blockContainer:Sprite = new Sprite();
blockContainer.addChild(block0);
blockContainer.addChild(block1);
blockContainer.addChild(block2);
addChild(blockContainer);
Теперь вы можете переместить их все перемещения контейнера:
blockContainer.x -= 5;
Там другая проблема с вашим кодом. Похоже, вы используете имена переменных с номерами в конце, чтобы отличить их. Это плохая практика.
- Нужно давать десятки объектов индивидуальным именам, если вы никогда не нуждаетесь в взаимодействии с ними по отдельности.
- Он также подвержен ошибкам и негибким. Если вы хотите добавить больше блоков, , то какое последнее число вы использовали, чтобы вы не использовали число в два раза? Что делать, если вы хотите удалить первые 3 блока по 20, переименуете ли вы остальное, чтобы начать с 0?
Наличие всех этих переменных является вашей реальной проблемой.
Их следует сгруппировать с самого начала. Поскольку вы, по-видимому, размещаете блоки вручную, простым решением этого является использование контейнера.
Поместите все блоки в пустой контейнер, не указывая им имена экземпляров. Затем используйте методы этого DisplayObjectContainer
, а именно numChildren
и getChildAt()
, чтобы поместить всех своих детей в массив. Затем вы можете перебирать массив, чтобы применить какое-либо действие ко всем его элементам, если хотите, но опять же, для изменения свойства .x
его должно быть достаточно, чтобы просто переместить контейнер.
достаточно не информации, чтобы ответить.Это зависит от того, к чему относятся эти переменные, к чему они предназначены, и т. Д. – BotMaster