![]() |
linkage + циклы
простите за глупый вопрос, но ничего не выходит
на ас2 все хорошо работает, когда linkage задаешь мувиклипам, а потом их аттачишь через i Код AS1/AS2:
Код AS3:
|
Код AS3:
|
Dante, ну тогда уже так:
Код AS3:
|
BlooDHounD, Sprite можно хранить в "библиотеке" :) Возможно вы подразумеваете, что MovieClip наследник Sprite, но все же наверное надо писать MovieClip.
Код AS3:
|
Так друзья, это что-то очень круто, а как быть с этим ?
Код AS3:
|
igrayka, наверно самое простое завести массив и в него добавлять ссылки на кнопки, пробегаемся по массиву подписываемся или отписываемся от слушателей.
|
MonkDead, чего? Вы в порядке? зачем мне писать мувиклип, если, как вы написали, Sprite Тоже можно хранить в библиотеке, и тем самым один и тот же код у меня подойдёт на обо случая, а ваш придётся переписывать.
p.s.: лично я всегда указываю DisplayObject. |
MonkDead,
Спасибо,попробую что-нибудь сейчас Добавлено через 22 минуты блин не могу понять как "пробежаться" по массиву и прявязать слушателей ( как используя массив ко всем его элементам добавить слушателей ? 1071: Syntax error: expected a definition keyword (such as function) after attribute rightbracket, not addEventListener. |
Цитата:
Код AS3:
|
Код AS3:
Код AS3:
1119: Access of possibly undefined property bigmap through a reference with static type flash.display:DisplayObject. когда я делаю хотя бы так Код AS3:
at AS::Control() у меня MovieClip - карта, называется на сцене bigmap, в нем кнопки, 60 штук ... bigmap.BTN(1-60).addEventListener( бла бла бла ) HOOW ? хотелось бы слушать их в цикле, но я что-то никак не могу понять как |
Код AS3:
|
а как быть в такой ситуации. достою первый клип, задаю ему твин и энтерфрейм. как только клип по х превысит свою ширину, за ним достается следующий и т.д. а по MOTION_FINISH я пытаюсь этот клип удалить. но почему-то удаляется только первый, последующие на это не реагируют. почему клипы не реагируют, они все же привязаны к этому твину, может надо каждому свой твин задать?
Код AS3:
|
получилось вот так . По другому вообще не работает пишет - TypeError: Error #1009: Cannot access a property or method of a null object reference.
at AS::Control() Код AS3:
Добавлено через 13 минут а теперь вопрос ) как заставить в зависимости от того какая кнопка была нажата, определенные клипы менять свой тайм лайн ? тоесть : у нас есть кнопка BTN34 и есть клип CLIP34 , если на кнопку навели мышку то клипчик выполняет gotoAndPlay(10) . мышку убрали gotoandStop(1) . Стандартная фичка Добавлено через 10 часов 7 минут решил эту штуку вот так Код AS3:
но пришлось создать 2 контэйнера ... и в них хранить только кнопки и клипы, строго хронологически их добавлять и называть, иначе ничего не работает ... вот бы знать как имя клипа кнопки ( INSTANCE NAME ) считывать когда он событие передает ! |
Цитата:
А хотелось бы узнать тогда, как создать переменную с именем ["s"+i] и типом sprite. А код из цитаты я так и не смог заставить работать %) |
cauchy, Вы что пытались этим кодом сделать? этот код добавляет мувик из библиотеки ( "s1", где i=1 )
|
BlooDHounD, если честно я сам запутался что я пытался сделать :wacko: С getDefinitionByName я разобрался, это не то, что мне было нужно.
Лучше я здесь задам корректный вопрос, из за которого собственно я и забрёл в эту тему: Мне необходимо программно создать, например, 100 объектов (пусть они являются экземплярами покласса Sprite), и затем их разместить на экране, добавить к ним слушателей и ещё как-либо ими управлять. Для этого необходимо использовать массив, в который и добавляются все эти объекты? Причём имён эти объекты иметь не будут, а получить доступ к ним можно только как к элементу массива по индексу? Я правильно подхожу к решению данной задачи? Или есть способ лучше? Надеюсь ничего страшного, что я решил это в данной теме спросить :) |
Будет быстрее если спрайты накидать в контейнер, а потом брать их от туда с помощью getChildAt().
|
правильно подходите. закидывайте в массив и обращайтесь по индексу.
|
Спасибо за ответы, решил пока остановиться на массиве.
|
| Часовой пояс GMT +4, время: 10:25. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.