![]() |
Как обратится к изображению в .fla?
Я только начинаю учить AS3, есть вопрос. Вот я кодю в Адоб Флеш ЦС3. Там я могу писать код AS3 в .as файлах, а рисовать фигурки и др. - в .fla Скажите, плиз, как я могу обратится к созданному в проге, допустим, прямоугольнику, через код в .as?
|
Делаете символ в библиотеке, даете ему класс, затем в коде создаете экземпляр этого класса и добавляете на сцену через addChild. Основы.
|
Не понимаю, как отрисовать символ из библиотеки
Здравствуйте, обчитался уже сегодня на форуме, но не смог найти ответа на тот же вопрос, что у топикстартера. И ответ не понял (
Пожалуйста поясните. Вот есть у меня библиотека cardlibrary. В ней нужные мне изображения игральных карт. 1) могу я увидеть ее содержимое в FD? Как? Или только в Flash IDE? 2) В Flash IDE когда я ее открываю вижу список примерно такой: #ace #eight ... #two ... clubs - 02 clubs - 03 ... clubs - king ... Это имена символов? Или вот это object.to_string ? 3) Если я допустим кликаю правой клавишей на clubs - 03 и выбираю Properties, то вижу внизу неактивную кнопку Symbol и справа пояснение Symbol name: c8 copy - это что такое? 4) Как я могу узнать имя класса для этого символа clubs - 03 - где посмотреть? 5) Я хочу написать флеш браузерный клиент карточной игры. Вот для кода я буду использовать FD, рисовать кнопки, стол, аватаров игроков, етс, я смогу в стандалон граф редакторе. А вот запихнуть эту графу и еще звуки смогу я в FD, или мне все же понадобится для это Flash IDE? 6) Чтобы библиотека стала доступной надо не только поместить ее в lib, но и поместить lib в source path в настройках проекта? Этого достаточно? или нужно еще что-то импортить? 7) Если надо импортить, то как узнать имя библиотеки 8) Как узнать какие в библиотеке пакеджи? читаю Мука, прочел также все посты с 20 стр. выдачи поиска, узнал много нужного, но с этими вопросами никак не могу разобраться. Пожалуйста помогите! |
1. Ваша библиотека - пустышка. Нужно к каждой карте прилинковать в пропертях класс. Затем зайти в настройки публикации, в разделе Flash отметить галочкой Export SWC. Затем просто скомпилировать флешку. На выходе будут swf и swc. Вам нужен последний, кидаем его в проект FD, в папку lib, пр.кн. по ней - add to the lib (или как-то так).
2. Это имена символов, причем даже не символов, а графики. 3. черт знает. 4. Как я и сказал выше - у вашей графики нет классов. 5. Рисовать во FlashIDE -> swc -> FD, как я описал выше. 6. Только поместить в lib и отметить в контекстном меню, как я описал выше. 7. Чего-чего? 8. FD сам подскажет. |
Вложений: 2
Спасибо за ответы!
Но не получается ни установить класс для символов, ни выбрать SWC в настройках экспорта. Попробуйте сами, у вас на этой библиотеке получается? У меня почему-то неактивны чекбоксы "export SWC" и "Класс". Пробовал ставить крыжи в разные соседние чекбоксы, думал, что это может активировать нужные мне чекбоксы, но увы. Как это можно побороть? |
Первый скрин: выбран язык не той версии сверху.
Второй скрин: выбран язык не той версии, а значит нельзя задать класс. И да, а разве можно задавать графике класс? |
1) скрин - выберите flash player не ниже 9 версии, и ActionScript - 3.0
2) скрин - вы не поставили флаг - Export for ActionScript не успел ) |
Вложений: 1
Спасибо, получилось!
Отметил для экспорта два изображения. При импорте swc в FD в дереве открывается узел cardlibrary.swc и в нем два класса, но имена у них вроде не кошерные. Их нужно менять для каждого изображения в fla и потом снова экспортировать? Есть возможность скопом отметить в fla все 54 изображения для экспорта, или придется топать на каждое и отмечать в пропертях по отдельности? |
Не понял ваш вопрос. Но на вашем примере: в библиотеке у вас дофига графики. Черт знает, наверно, это Shape. Так вот, дайте им вменяемые имена с Большой Буквы, затем поставьте галочки для экспорта в ActionScript. Вменяемые имена классов с большой буквы автоматически подставятся в поле Класс. Как сделали для всех своих карт такую штуку - компилируем флешку, получаем на выходе swc с вашими картами, достучаться к которым можно через те самые их классы:
Код AS3:
Следует эту тему прикрепить сверху в этом разделе... |
Спасибо! я понял )
зы В свойствах Символа поле Export for ActionScript останется неактивным, если в поле Type - значение Graphic. Чтобы активировать чекбокс Export for ActionScript надо выбрать значение Type: Movie Clip. При этом также активируется поле Class Добавлено через 2 часа 26 минут Получилось, но но не до конца. Сделал как советовали: В fla библиотеке символ Table2.png отметил для экспорта с именем класса TablePng, BaseClass: flash.display.BitmapData - так эти свойства заполнились автоматом когда я драгдропнул на список символов fla библиотеки png файл Table2.png В FD в дереве я вижу класс TablePng, наследующий от flash.display.BitmapData У себя в проекте создаю файл Table.as в котором: Код AS3:
Код AS3:
C:\flash\projects\PokerClient\src\Main.as(34): col: 13 Error: Implicit coercion of a value of type holdem:Table to an unrelated type flash.display:DisplayObject. а если пишу так Код AS3:
C:\flash\projects\PokerClient\src\Main.as(33): col: 16 Error: Implicit coercion of a value of type flash.display:DisplayObject to an unrelated type holdem:Table. C:\flash\projects\PokerClient\src\Main.as(34): col: 13 Error: Implicit coercion of a value of type holdem:Table to an unrelated type flash.display:DisplayObject. Как это победить? Добавлено через 4 часа 10 минут Разобрался! Оказалось из png файла получается символ типа BimapData - растровый полуфабрикат, который нельзя непосредственно вывести на сцену. Нужно еще из этого полуфабриката создать объект типа Bitmap, который уже можно выводить на сцену. Ух. Потому вместо: Код AS3:
Код AS3:
|
| Часовой пояс GMT +4, время: 08:09. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.