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

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

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

Регистрация: Dec 2006
Адрес: Ukraine Lugansk
Сообщений: 188
Отправить сообщение для Anry_coolboy с помощью ICQ Отправить сообщение для Anry_coolboy с помощью Skype™
По умолчанию Разработка проекта без Flash IDE

Многие разабатывают проекты без использования Flash IDE, подключают SWC.
Таким способом на мой взгляд меняется сам подход к разработки.

Я еще пишу использую Flash IDE для компиляции, т.е. создал объект кинул его на stage в том месте где мне надо, прилинковал к ему класс, внутри него могу создать еще объект, прилинковать другой класс к нему, дать ему имя, и обращаться к нему из верхнего класса. Но мне не нравится постоянно бегать между FlashDevoper-ом и Flash IDE.

Я начал делать через SWC, и тут у меня сразу возникли проблемы.

Допустим я создал контейнер в котором находится N объектов, которые расположены по нужным координатам. Прицепил к этому контейнеру линк, к примеру Sky_back, и потом создал класс Sky который расширяется от Sky_back (Sky extends Sky_back)
Потом создаю этот объект и добавляю его на сцену.

Код AS3:
var  mcSky:Sky = new Sky();
addChild(mcSky);
Допустим внутри объетка mcSky находятся еще другие объекты, к примеру планеты, которые я тоже уже положил на сцену.

Я создаю базовый класс Planet и хочу что б все другие планеты расширялись от этого класса. К примеру класс Land extends Planet. И тут вопрос, как прицепить графику которая лежит в контейнере mcSky к классу Land.

И так что б в классе Sky я мог создать переменную mcLend с типом Land (var mcLend:Lend)
__________________
Работю в DigitalHouse

Старый 15.05.2010, 14:51
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 2  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Лучше делать не так. Все объекты делаем клипами без вложенности. В главном классе создаем объект класса Sky. В его классе создаем объекты класса Land с публичными ссылками (если хотим обращаться к планетам из других мест). Удобная структура, на мой взгляд.
С другой стороны, если нужно сохранить вложенность, то обращение к объектам класса Land будет осуществляться вот так:
Код AS3:
mcSky.getChildByName("planet1");
__________________
тут я

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

Регистрация: Dec 2006
Адрес: Ukraine Lugansk
Сообщений: 188
Отправить сообщение для Anry_coolboy с помощью ICQ Отправить сообщение для Anry_coolboy с помощью Skype™
Ну в таком случае мне надо сначала по создавать все объекты что будут на сцене, потом всем сделать addChild и расставлять по нужным координатам. Не очень удобно.

Так же, как связать планету с классом, если класс уже расширяется от другого.
Т.е. Sky extends Sky_back - тут все ясно, тут я линкую графику из swc к своему классу, но если Land extends Planet, то куда ж прилепить графику из swc файла?

Или же в flash ide надо прописывать полный путь к классу?
__________________
Работю в DigitalHouse

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

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Что-то мне немного не понятна ваша ситуация. Созданный программно объект же наследует графику класса, от которого он расширяется.
Почему неудобно? По-моему очень даже удобно - все на коде, все видно, можно быстро подправить и перекомпилить. Только сначала расставляют по координатам, а потом помещают в отображение. Я не знаю, лучше ли так, но по логике объект сначала помещается в (0, 0), а потом перемещается в нужную точку. И это может быть заметно при тормозах.
__________________
тут я

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

Регистрация: Dec 2006
Адрес: Ukraine Lugansk
Сообщений: 188
Отправить сообщение для Anry_coolboy с помощью ICQ Отправить сообщение для Anry_coolboy с помощью Skype™
Он наследует если мы в Flash IDE прописали полный путь к классу в linkage, я так понял при использовании swc, мы не прописываем полный путь, а просто даем любой линк, допусти Planet_img, а потом уже в своем классе, мы делаем Planet extends Planet_img. Или же можно использовать полный путь?

А на счет того что не удобно, ну мне проще все расставить в среде, по местам все пододвинуть, чем каждому объекту расставлять координаты...
__________________
Работю в DigitalHouse

Старый 15.05.2010, 15:42
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 6  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Так, смотрите, я как-то уже поднимал такой вопрос: http://www.flasher.ru/forum/showthread.php?t=138290
__________________
тут я

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

Регистрация: Nov 2008
Сообщений: 894
Записей в блоге: 1
как писал тов. КорДум кидаешь все в свой мувик ручками, даешь всем кому надо инстансы, в классе этого окнтейнера делаешь геттеры которые отдают ссылки на эти мувики и все по идее.
[as]
Код AS3:
		private var _disableMc			:Sprite;
..........
			_disableMc = _cont.getChildByName("disableMc") as Sprite;
			_disableMc.visible = false;
..........
		public function get disableMc():Sprite		{ return _disableMc; }


Последний раз редактировалось nOobCrafter; 15.05.2010 в 16:24.
Старый 16.05.2010, 01:26
fljot вне форума Посмотреть профиль Отправить личное сообщение для fljot Найти все сообщения от fljot
  № 8  
Ответить с цитированием
fljot

блогер
Регистрация: Jul 2007
Сообщений: 940
Записей в блоге: 3
Это ж кем надо быть, чтобы накидывать кучи объетов вручную...

Anry_coolboy, http://www.flasher.ru/forum/showthre...938#post897938

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

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

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


 


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


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