![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
[+1.3 06.03.12]
|
Есть SWC подключенный к FD.
В SWC зашита графика Main(Мувиклип) в которой вручную добавлены три объекта(Мувика) Clon1, Clon2, Clon3. Для Main и для каждого из Clon есть AS файлы с их классами. Main после прелодинга успешно попадает на сцену и ведет себя в соответсвие с Main.as Мувики (Clon1 2 3) также стоят на своих местах - как я их и расставил внутри Main. Нигде никаких ошибок не выдается - но почемуто поведение описанное для ClonX не срабатывает Подозреваю что их необходимо также через код addChild() на сцену - но вопрос в том: Разве нельзя обойтись без добавления на сцену программно так, чтоб Мувиклипы автоматом подхватывали и исполняли предписамные им классы в библиотеке? Например у меня есть игра в которой целая куча предметов (ящики, столы, стулья) расставленные мной в ручную для каждой стадии, при этом программно (ВСЛЕПУЮ) расставлять хаотично разбросанные объекты былобы очень сложно
__________________
http://apa-noua.com/portfolio |
|
|||||
|
[+4 06.05.14]
|
Это у вас какой то косяк, все должно работать. Но обычно так не делают. Делают вот как : логику описываем отдельно, это значит, что создав в библиотеке символ и задав ему класс, мы должны так же создать отдельно управляемый класс extends ваш графический класс. Но как вы описали, объектов много и кодом добавлять не хочется, тогда придется все описывать в одном классе, - поведение будет нормальным, это 100%.
__________________
Марк Tween |
|
|||||
|
[+1.3 06.03.12]
|
"управляемый класс extends ваш графический класс"
Вот это уже ближе к делу. Но при этом нужно будет добавлять на сцену управляющие классы? Больше интересует даже вопрос как заставить эти Clons начать двигаться, если все они расставлены в ручную ? И в дагонку немного позаковырестей вопрос - Если все Clonx будут extends некий MoveClon в котором описано движение и каждый в super(50); передает скорость своего движения. Вот как тогда прописать в библиотеке? класс - Clon1 ? базовый - MoveClon ? И как всё это дело запустить ?
__________________
http://apa-noua.com/portfolio |
|
|||||
|
По сути, то, что расставлено в ручную на сцене - это экземпляры класса. Они вполне могут расширять один и тот же класс, если выглядят одинаково. Если по разному, но поведение у них подобно, то да, надо указать базовый, всё верно.
Пишем где-то класс MoveClone в нем описываем движение объектов. Сам этот класс пусть расширяет мувиклип. Например: package { import flash.display.MovieClip; public class MoveClone extends MovieClip { public function MoveClone() { } public function move(posX:Number, posY:Number):void { // этот метод можно будет вызывать у всех клонов у которых базовый класс MoveClone, не зависимо от того к какому классу они принадлежат сами this.x = posX; this.y = posY; } } } вот, собственно, и всё |
|
|||||
|
[+1.3 06.03.12]
|
Ну вот у меня так и с сделано.
Есть 3 клона в каждом из них одинаковый мувик с анимацией (клоны закрашены в разный цвет) Каждому клону прописал в библиотеке класс Clon1, базовый MoveClon (также для 2 3) В MoveClon присутвует цикл(setInterval) с движением по X Все клоны лежат внутри Main Cоздаю SWC, подключаю, добавляю Main на сцену. Все отображается но в клонах не срабатывает даже trace как в Clon1 конструкторе так и в MoveClon На простых примерах никак не могу понять более глубокий принцип работы. Чтоже и где делаю не так? Поубирал все лишнее Clon1 не хочет работать даже с базовым классом MovieClip package { import flash.display.MovieClip; public class Clon1 extends MovieClip { public function Clon1() { this.x = 400; } } } а быть может все правильно делаю и подводит Flash или FD Если не сложно протестируйте на вашем ПО - сдвинется ли синенький клон на 400? ((( подозрения усиливаются - так как с рядом лежащими graphics.fla и ClonClass Clon1 не хочет добавляться в базовый класс - ClonClass (((
__________________
http://apa-noua.com/portfolio Последний раз редактировалось udaaff; 11.10.2012 в 12:07. |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Используйте композицию и не мучайтесь.
|
|
|||||
|
[+1.3 06.03.12]
|
Ахренеть можно!!!!!
Разобрался! Вообщем класс в библиотеке Clon1 не должен был присутвовать в раельном Clon1.as Тупо убил это файл и Flash позволил указать Clon1 с базовым ClonClass Запустил в FD и Clon1 стал вести себя как предписанно в ClonClass Надеюсь эта темка пригодится комуто из новичков ))) Добавлено через 3 минуты Аааа стоп )А как тогда быть если всетаки требуются 3 клона и каждый должен указать свою скорость? До того как все заработало предпологал делать так или тупо в кадр каждого клона поставить некую переменную - подскажите как правильно это сделать?
__________________
http://apa-noua.com/portfolio |
![]() |
![]() |
Часовой пояс GMT +4, время: 20:22. |
|
|
« Предыдущая тема | Следующая тема » |
|
|