![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
[+1 14.08.08]
[+1 20.08.08] |
Изначально у меня был мувик, в котором находились все анимации персонажа для игры. Этот мувик был привязан к классу GChar extends MovieClip. Класс GChar принимает в конструкторе три аргумента - положение персонажа по трем осям.
Теперь я расширяю функционал игры, и хочу, чтобы было три различных персонажа с одинаковым функционалом, но разными анимациями. Для этого я отрисовываю еще два мувика с анимациями. И все три привязываю так: Char1 extends GChar, Char2 extends GChar, Char3 extends GChar. Но, получается, что создавать в коде персонажей как раньше GChar (x,y,z) я не могу, потому что у создаваемого автоматом класса пустой конструктор. Т.е. мне придется самому описать классы Char1,Char2,Char3 добавив конструктор, который всего-то и делает, что super (x,y,z). Так и должно быть, или я изначально принципиально неправильно концепцию сделал?
__________________
~ Never trouble trouble till trouble troubles you! |
|
|||||
|
Регистрация: Jul 2007
Адрес: Москва
Сообщений: 996
|
Сталкивался с подобным.
Тут 2 выхода. Либо, как Вы сказали, описывать классы с конструктором, не полагаясь на автогенерацию. Либо добавить в GChar какой-нибудь метод init(x,y,z) и вызывать его после создания экземпляров. |
|
|||||
|
стервочка (я мужик)
|
визуальные объекты лучше делать без аргументов, или делать с опциональными аргументами. да это вообще ко всем классам относится, но больше всего применительно к визуальным, ибо трудно создавать из сторонних либ через getDefinitionByName. нужно ещё кучу проверок тянуть за собой. а вообще в ИДЕ обычно сгенерированные классы принимают аргументы своих предков. например BitmapData требует 2 аргумента. причём пофигу, что в них передавать.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 00:27. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|