Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Регистрация Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 04.06.2012, 14:48
D1KTAT0R вне форума Посмотреть профиль Отправить личное сообщение для D1KTAT0R Найти все сообщения от D1KTAT0R
  № 1  
Ответить с цитированием
D1KTAT0R
 
Аватар для D1KTAT0R

Регистрация: May 2012
Адрес: г. Москва
Сообщений: 11
По умолчанию FlashDevelop. Символы из SWC, классы к ним свои.

Привет! Народ, подскажите, есть у меня SWC библиотека сделанная следующим образом:
1. Рисую шейпы - экспортирую в объекты - указываю "Export for AS" и "Export in frame 1" (без последнего экспортирует только один символ).
2. Собственно делаю экспорт в SWC...

Далее я подключаю ее к FlashDevelop и вобщем-то все круто, но классы для символов уже определены автоматически. Как мне правильно для этих символов определить свои классы? По сутия хочу к готовым классам подключить нарисованные символы.

Старый 04.06.2012, 15:08
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 2  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
Вам поможет наследование, либо композиция. Другого не дано.

Старый 04.06.2012, 15:11
D1KTAT0R вне форума Посмотреть профиль Отправить личное сообщение для D1KTAT0R Найти все сообщения от D1KTAT0R
  № 3  
Ответить с цитированием
D1KTAT0R
 
Аватар для D1KTAT0R

Регистрация: May 2012
Адрес: г. Москва
Сообщений: 11
Жаль.. Во Flash IDE можно было создать символ и описать его полностью... Хотя это не критично.

Старый 04.06.2012, 15:15
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 4  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
Так что Вам мешает описать его полностью? Создали графику, сохранили в swc.
1) в коде отнаследовались от созданной графики (описали полностью)
2) в коде отнаследовались от Sprite-а, добавили дитёнком созданную графику (описали полностью)

Старый 04.06.2012, 15:36
D1KTAT0R вне форума Посмотреть профиль Отправить личное сообщение для D1KTAT0R Найти все сообщения от D1KTAT0R
  № 5  
Ответить с цитированием
D1KTAT0R
 
Аватар для D1KTAT0R

Регистрация: May 2012
Адрес: г. Москва
Сообщений: 11
У меня в библиотеке классы, которые должны быть потомками более общего класса - в котором присутствует основная логика для потомков. Т.е. например у меня в библиотеки треугольник, круг и квадрат (каждый с автоматически созданными классами) а мне нужно сделать их потомками базового класа "Фигура", в которой нужные методы и поля.

Я вот и подумал - нет ли приема который позволил изначально заложить свою логику в символы?


Последний раз редактировалось D1KTAT0R; 04.06.2012 в 15:38.
Старый 04.06.2012, 15:59
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 6  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,284
А чем вас не устраивает
Цитата:
2) в коде отнаследовались от Sprite-а, добавили дитёнком созданную графику (описали полностью)
?

Старый 04.06.2012, 16:10
D1KTAT0R вне форума Посмотреть профиль Отправить личное сообщение для D1KTAT0R Найти все сообщения от D1KTAT0R
  № 7  
Ответить с цитированием
D1KTAT0R
 
Аватар для D1KTAT0R

Регистрация: May 2012
Адрес: г. Москва
Сообщений: 11
Вы правы. Вполне устраивает. Не подумал. Спасибо!

Старый 04.06.2012, 17:42
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 8  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
3) во Flash IDE выбирается для символов, которые идут на экспорт, общий класс, в котором есть какая-то логика. (правда, при любом изменении, придется всю графику перекомпилировать, либо пользоваться хаками - загрузкой в начале нужного класса, чтобы класс, созданный в Flash IDE перекрывался классом, собранным в FlashDevelope)

Я сделал проект, который показывает примерный принцип. Он не простой для понимания (я, кстати, думал, что не сработает, ан нет, работает). Если разберетесь, хорошо, но лучше использовать композицию - идеологически правильно, и без хаков.
Вложения
Тип файла: zip test_flash.zip (123.4 Кб, 66 просмотров)

Старый 04.06.2012, 21:13
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 9  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Цитата:
Жаль.. Во Flash IDE можно было создать символ и описать его полностью... Хотя это не критично.
Дык там тоже нельзя было выходить за рамки наследования, т.е. нельзя было один и тот же класс назначить 2-м символам. Т.е. наследуйтесь - будет тоже самое. Используйте композицию - будет гибше.

Старый 04.06.2012, 21:27
fish_r вне форума Посмотреть профиль Отправить личное сообщение для fish_r Посетить домашнюю страницу fish_r Найти все сообщения от fish_r
  № 10  
Ответить с цитированием
fish_r
 
Аватар для fish_r

блогер
Регистрация: Jan 2011
Сообщений: 1,162
Записей в блоге: 4
Ещё можно получить ссылку на граф. символы ( что там? шейпы, да? ) обращением #getChildAt(). Затем забрать их и поместить в целевой класс. Ну например:

Код AS3:
 
  // экземпляр класса из swc
  var myImportClass:MovieClip = new MyImportClass();
 
  // получаем ссылку на один из нужных шейпов
  var mySimbol:Shape = myImportClass.getChildAt( 0 ) as Shape;
 
  // забрали и поместили в дисплей лист целевого класса с нужной логикой.
  myTargetClass.addChild( mySimbol );

Создать новую тему Ответ Часовой пояс GMT +4, время: 15:41.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
Action script 3.0 , AS3 , flashdevelop , swc
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 15:41.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2023, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.