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

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

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

Регистрация: Dec 2010
Сообщений: 3
По умолчанию Swf-файл, как хранилище ресурсов

Здравствуйте, начал изучать as3.0 и получил следующее задание: существует 2 свф-файла, в одном из которых хранится 3 мувиклипа, а другой должен при помощи первого создать 10 таких мувиклипов и они должны двигаться. Вопрос: как все это сделать оптимально?Т.е. в 1ом создать функции рисования и вызывать их через лоадер из второго?Может создать классы этих клипов и дальше уже с классами работать?Или есть общепринятые способы, которых я не знаю?Спасибо за ответ

Старый 23.12.2010, 12:39
nOobCrafter вне форума Посмотреть профиль Отправить личное сообщение для nOobCrafter Найти все сообщения от nOobCrafter
  № 2  
Ответить с цитированием
nOobCrafter

Регистрация: Nov 2008
Сообщений: 894
Записей в блоге: 1
в одной свке логика, в другой ресурсы, первой грузите вторую и далее запускаете логику, т.к. вторая свфка у вас уже будет загружена мы можете брать из нее необходимые клипы.

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

Регистрация: Jul 2008
Адрес: Украина, Херсон
Сообщений: 635
Отправить сообщение для Division с помощью ICQ
Код AS3:
override protected function processGetSprite(name : String) : Sprite {
    return new (_loader.contentLoaderInfo.applicationDomain.getDefinition(name) as Class) as Sprite;		
}
Вот так к примеру получается Sprite из swf в моем менеджере ресурсов. _loader - Loader, которым была загружена swf с ресурсами.
__________________
while(1) {}


Последний раз редактировалось Division; 23.12.2010 в 13:13.
Старый 27.12.2010, 19:15
PPie вне форума Посмотреть профиль Отправить личное сообщение для PPie Найти все сообщения от PPie
  № 4  
Ответить с цитированием
PPie

Регистрация: Dec 2010
Сообщений: 3
Подскажите, пожалуйста, что не так, дураку)судя по циклу 10 фигур должны быть на сцене. а получается только, как я понимаю сама последняя)
Код AS3:
import flash.display.Loader;
import flash.display.MovieClip;
import flash.events.Event;
import flash.net.URLRequest;
import flash.system.LoaderContext;
var rectArray:Array = new Array();
var loader:Loader;
loader = new Loader();
addChild(loader);
loader.contentLoaderInfo.addEventListener(Event.INIT, handleInit);
loader.load(new URLRequest("source.swf"));
function handleInit(e:Event):void
{
	var movie:* = loader.content;
	for (var k:int = 0; k < 10; k++)
	{
		var clip: MovieClip = new MovieClip();
		clip = movie.getRectan();
		clip.x = Math.random()*550;
		clip.y = Math.random()*300;
		addChild(clip);
		rectArray.push(clip);
             }
}
Код source.swf
Код AS3:
import flash.display.MovieClip;
var rect:MovieClip = new MovieClip();
function drawRectan():void
{
	rect.graphics.beginFill(Math.random()*0x100000);
	rect.graphics.drawRect(100, 100, 20, 20);
	rect.graphics.endFill();
}
function getRectan():MovieClip{
	drawRectan();
	return rect;
}
Это из за того что все время добавляю clip?


Последний раз редактировалось PPie; 27.12.2010 в 19:24.
Старый 27.12.2010, 19:54
passertm вне форума Посмотреть профиль Отправить личное сообщение для passertm Найти все сообщения от passertm
  № 5  
Ответить с цитированием
passertm
[+1 28.12.10]
[+1 29.12.10]
 
Аватар для passertm

Регистрация: Aug 2006
Сообщений: 107
смари
Цитата:
Сообщение от PPie Посмотреть сообщение
Код AS3:
	var clip: MovieClip = new MovieClip();
		clip = movie.getRectan();
ты создал новый обьект. но бросил его и взял вместо него то что возврашается функцией getRectan()


Цитата:
Сообщение от PPie Посмотреть сообщение
Код AS3:
var rect:MovieClip = new MovieClip();
а функция getRectan() возврашает один и тот же MovieClip

Старый 28.12.2010, 14:48
PPie вне форума Посмотреть профиль Отправить личное сообщение для PPie Найти все сообщения от PPie
  № 6  
Ответить с цитированием
PPie

Регистрация: Dec 2010
Сообщений: 3
Спасибо большое)

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

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

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


 


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


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