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

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

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

Регистрация: Oct 2009
Сообщений: 148
Отправить сообщение для Александр с помощью ICQ
По умолчанию FlashDevelop + FlexSDK + swfmill

всем привет!
использую эту связку!
\
но он что не видит ресурсы!
\
раньше использовал haXe там просто и все работало!
пишишь аттач и все (

а тут вроде так?
Код:
var cl : * = flash.utils.getDefinitionByName(name) as Class;
var myClip:MovieClip  = new cl() ;
а он говорит что переменная name не определена ..

что я не так делаю?
может пример каойнить подкините?

Зарание спасибо

Старый 31.10.2009, 04:29
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 2  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
А переменная name определена? Из преведеного куска кода не ясно.

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

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
swfmill и AS3 по большому счету не совместимы, ну, по крайней мере не на столько, чтобы так просто было их вместе использовать. На сколько я понимаю, HaXe умеет сам встраивать ресурсы с небольшой помощью swfmill, но, на самом деле swfmill не умеет компилировать многие виды ресурсов, да и вообще, вы умаетесь сами ее к AS3 подключать. Просто пользуйтесь [Embed] тэгами, это не создает очень много дополнительного хлама в SWF, всего каких-то пару классов, и те практически невесомые...

Что касается вашего кода, то он... не совсем нормально выглядит
Код AS3:
var cl : * = flash.utils.getDefinitionByName(name) as Class;
var myClip:MovieClip  = new cl() ;
должно быть:
Код AS3:
import flash.utils.getDefinitionByName;
var cl:Class = getDefinitionByName(name) as Class;
var myClip:MovieClip = new cl() as MovieClip;
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 31.10.2009 в 05:06.
Старый 31.10.2009, 17:59
Александр вне форума Посмотреть профиль Отправить личное сообщение для Александр Найти все сообщения от Александр
  № 4  
Ответить с цитированием
Александр
 
Аватар для Александр

Регистрация: Oct 2009
Сообщений: 148
Отправить сообщение для Александр с помощью ICQ
не (
видимо, я криво объяснил)
мой действия!
1) Создаю хмл-ку, в ней описываю ресурсы
Код:
<?xml version="1.0" encoding="iso-8859-1" ?>
<movie width="320" height="240" framerate="12">
  <background color="#ffffff"/>
  <!-- first frame -->
  <frame>
    <!-- add some assets to the library -->
    <library>
      <clip id="swfLoadingBar" 	import="swf\LoadingBar.swf"/>
      <clip id="swfDoor" 		import="swf\Door.swf"/>	  
      <clip id="swfSky" 	           import="swf\Sky.swf"/>
      <clip id="swfGround" 	import="swf\Ground.swf"/>	  
  </library>			
  </frame>
</movie>
2) с помощью утилиты создаю файл swf с медией
Код:
swfmill.exe simple media.xml ..\lib\media.swf
3) в флеш девелопе цепляю этот файл (на правыю кнопку с проектом)
и там что то типо Ассет Либерти

4) в хаксе я писал так
Код AS3:
var mc:MovieClip = Lib.attach("swfSky") //тут имя ресурса, который лежит в этой медии.свф
и он появлялся! и все было хорошо)

= ХОЧу сделать также во флеше на АктионСкрипт3
вот мой действия

5)
Код AS3:
var cl:Class = getDefinitionByName("swfSky") as Class;
var myClip:MovieClip = new cl() as MovieClip;
а он горит, что swfSky нету! ,
так вот КАК ЕЕ ДОБАИТЬ ?


ПС, как ник сменить? буковку забыл (

Старый 31.10.2009, 18:51
murz вне форума Посмотреть профиль Отправить личное сообщение для murz Найти все сообщения от murz
  № 5  
Ответить с цитированием
murz
[+1 10.12.10]

Регистрация: Feb 2006
Сообщений: 148
Отправить сообщение для murz с помощью ICQ
кажется не надо использовать getDefinitionByName.
я не работал с SwfMill, но если он билдит ресусы и ассоциирует их с классами давая им меня как в атрибуте id.
то тогда
должно получиться так:
Код AS3:
new swfSky();

Старый 31.10.2009, 18:58
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 6  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
После того, как вы скомпилировали SWF из swfmill - во FlashDevelop, правый клик на SWF > Insert Into Document, он вам уже ембед и сгенерит.
__________________
Hell is the possibility of sanity

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

Регистрация: Oct 2009
Сообщений: 148
Отправить сообщение для Александр с помощью ICQ
угу генерит)
и че сним делать?
он делает чтото вроде
Код:
[Embed(source='../lib/media.swf', symbol='swfSky')]
куда его запихнуть?
(извините за тупость, но ни как не втыкаю как использовать)

Добавлено через 17 минут
Вот делаю так
Код AS3:
сlass Main ...
{
[Embed(source = '../lib/media.swf', symbol = 'swfSky')]			
public const swfSky:Class;
 
public static function main()
{
 var mc:MovieClip = new swfSky() as MovieClip;
}
}
ошибок нет! , но мс = 0 всеровно...

Старый 31.10.2009, 21:18
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 8  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
попробуйте как тут
http://www.flasher.ru/forum/showthre...845#post860845
__________________
Гоночка

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

Регистрация: Oct 2009
Сообщений: 148
Отправить сообщение для Александр с помощью ICQ
Спасибо!
попробую!
кстати следует отметить, что если цеплять не как библиотеку,
а по отдельно ресурсы то все работает
Код AS1/AS2:
[Embed(source='../Sky.swf')]

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

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Код AS3:
сlass Main ...
{
[Embed(source = '../lib/media.swf', symbol = 'swfSky')]			
public var swfSky:Class;
 
public function main()
{
 var mc:MovieClip = new swfSky() as MovieClip;
}
}
если класс swfSky не является наследником MovieClip, mc будет равен null.
можно попробовать
[as3]var mc:MovieClip = MovieClip(new swfSky());[as3]
в таком случае если newSky не является наследником MovieClip на выходе будет ошибка.

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

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

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


 


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


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