Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Общие вопросы о Flash (не затрагивающие ActionScript) (http://www.flasher.ru/forum/forumdisplay.php?f=60)
-   -   JSFL - различия для версий ActionScript (http://www.flasher.ru/forum/showthread.php?t=126423)

Котяра 18.06.2009 18:14

JSFL - различия для версий ActionScript
 
Озадачился написанием небольшого скриптика:
нужно
1) открыть папку с png,
2) создать fla файл и экспортировать все картинки в библиотеку.
3 )После этого залинковать их и назначить базовый класс flash.display.BitmapData
Код AS1/AS2:

var inputFolder = fl.browseForFolderURL("select", "Import Path");
 
doc:document = null;
doc = fl.createDocument();
images = FLfile.listFolder( inputFolder+"/"+"*.png", "files");
library:library = doc.library;
library.newFolder("IMAGES");
for(var i = 0; i < images.length; i++) {
      doc.importFile(inputFolder+"/"+images[i], true );
 
          fl.trace(library.items[i+1].name);
          library.selectItem( images[i] );
 
        // вот тут начинаются проблемы
        // Выскакивает ошибка, что первый аргумент в setItemProperty неверный.
        // складывается впечатление, что в as3 это делается как-то по-другому)))
 
 
        //library.setItemProperty("linkageExportForAS", true);
        //library.setItemProperty("linkageExportInFirstFrame", true);
          // library.setItemProperty("linkageBaseClass", "flash.display.BitmapData" );
 
 
      library.renameItem( images[i] );
      library.moveToFolder( "IMAGES" );
}

Подскажите как для as3 fla делать линкование?

kup 19.06.2009 05:10

Хорошая штука кстати, полезная. Спасибо. :)

Код AS3:

var inputFolder = fl.browseForFolderURL("select", "Import Path");
 
doc:document = null;
doc = fl.createDocument();
images = FLfile.listFolder( inputFolder+"/"+"*.png", "files");
library:library = doc.library;
library.newFolder("IMAGES");
for(var i = 0; i < images.length; i++) {
      doc.importFile(inputFolder+"/"+images[i], true );
 
          fl.trace(library.items[i+1].name);
          library.selectItem( images[i] );
 
        // вот тут начинаются проблемы
        // Выскакивает ошибка, что первый аргумент в setItemProperty неверный.
        // складывается впечатление, что в as3 это делается как-то по-другому)))
 
 
        library.setItemProperty("linkageExportForAS", "true");
        library.setItemProperty("linkageExportInFirstFrame", "true");
                    library.setItemProperty("linkageBaseClass", "flash.display.BitmapData" );
 
 
      library.renameItem( images[i] );
      library.moveToFolder( "IMAGES" );
}


Котяра 19.06.2009 12:26

Цитата:

Сообщение от kup (Сообщение 829166)
Хорошая штука кстати, полезная. Спасибо. :)

Что работает? У меня на CS3 не работает((((

Код:

At line 19 of file ..\JSFL_Scripts\ImgToSWF.jsfl":
setItemProperty: Argument number 1 is invalid.

кавычки ставил. но не в них дело. неизвестен 1 аргумент.



Поставил CS4 - всё заработало - видимо у меня глюгнутая версия cs3 стоит.

окончательная версия скриптика
Код AS1/AS2:

var inputFolder = fl.browseForFolderURL("select", "Import Path");
 
doc:document = null;
doc = fl.createDocument();
images = FLfile.listFolder( inputFolder+"/"+"*.png", "files");
library:library = doc.library;
library.newFolder("IMAGES");
for(var i = 0; i < images.length; i++) {
      doc.importFile(inputFolder+"/"+images[i], true );
 
 
          library.selectItem( images[i] );
                  var itemName = images[i].split(".")[0];
      library.renameItem( itemName );
 
                fl.getDocumentDOM().library.items[i+1].linkageExportForAS = true;
                fl.getDocumentDOM().library.items[i+1].linkageExportInFirstFrame = true;
                fl.getDocumentDOM().library.items[i+1]["linkageBaseClass"]="flash.display.BitmapData";
 
      library.moveToFolder( "IMAGES" );
}
fl.saveDocumentAs(doc);
doc.exportSWF("", true);


dimarik 25.08.2009 17:56

http://groups.google.ru/group/ruflas...0b2c9dcf?hl=ru

Котяра 26.08.2009 16:24

Цитата:

Сообщение от dimarik (Сообщение 845482)

что-то там нехорошее написано..
Код AS3:

item.linkageExportForRS = true;
        item.linkageExportForAS = undefined;
        item.linkageExportInFirstFrame = false;

это мне не надо))))
А в общем, по моему скрипту, - походу глюк в CS3, в CS4 - работает

dimarik 26.08.2009 20:34

У меня получилось только с переходом на CS4


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

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