Created
May 25, 2014 08:36
-
-
Save lynxerzhang/116ae5183133da27e4e6 to your computer and use it in GitHub Desktop.
将库中所有元件设置成导出状态(Export For ActionScript)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var doc = fl.getDocumentDOM(); | |
//symbol type constant | |
var movieclipType = "movie clip"; | |
var folderType = "folder"; | |
var bitmapType = "bitmap"; | |
var soundType = "sound"; | |
//prefix | |
var mcPrefix = "ui"; | |
var bitmapPrefix = "bitmap"; | |
var soundPrefix = "sound"; | |
var library = null; | |
var items = null; | |
run(); | |
function run() | |
{ | |
if(!checkDocument()){ | |
return; | |
} | |
//get the library | |
library = doc.library; | |
items = library.items; | |
generateEmbedClassByName(items); | |
} | |
function checkDocument() | |
{ | |
var isLegal = true; | |
if(!doc){ | |
alert("must open a .fla file."); | |
isLegal = false; | |
} | |
return isLegal; | |
} | |
function generateEmbedClassByName(itemAry) | |
{ | |
if(!itemAry){ | |
return; | |
} | |
var len = itemAry.length; | |
var subItem = null; | |
if(len > 0){ | |
for(var i = 0; i < len; i ++){ | |
subItem = itemAry[i]; | |
if(subItem.itemType == movieclipType){ | |
generateEmbedClassWithMovieClip(subItem, mcPrefix); | |
} | |
else if(subItem.itemType == soundType){ | |
generateEmbedClassWithSound(subItem, soundPrefix); | |
} | |
else if(subItem.itemType == bitmapType){ | |
//TODO | |
generateEmbedClassWithBitmap(subItem, mcPrefix); | |
} | |
//else if(subItem.itemType == folderType){ | |
//} | |
} | |
doc.save(); | |
} | |
} | |
//sprite will be same as movieclip | |
function generateEmbedClassWithMovieClip(item, prefix) | |
{ | |
var name = getLibraryItemRawName(item); | |
if(!item.linkageExportForAS){ | |
item.linkageExportForAS = true; | |
item.linkageExportInFirstFrame = true; | |
item.linkageClassName = prefix + "_" + name; | |
} | |
} | |
//raw bitmap | |
function generateEmbedClassWithBitmap(item, prefix) | |
{ | |
if(item.linkageExportForAS){ | |
item.linkageExportForAS = false; | |
item.linkageExportInFirstFrame = false; | |
} | |
var name = getLibraryItemRawName(item); | |
library.selectNone(); | |
//* | |
if(library.itemExists(name)){ | |
//alert("already in the library"); | |
return; | |
} | |
//*/ | |
library.selectItem(item.name, false, true); | |
//fl.trace([name, item.name]); | |
library.addItemToDocument({"x":10, "y":10}, item.name); | |
var bItem = doc.convertToSymbol(movieclipType, name, "top left"); | |
//fl.trace(bItem);//[object SymbolItem] | |
if(bItem && !bItem.linkageExportForAS){ | |
bItem.linkageExportForAS = true; | |
bItem.linkageExportInFirstFrame = true; | |
bItem.linkageClassName = prefix + "_" + name; | |
} | |
doc.deleteSelection(); | |
} | |
//sound | |
function generateEmbedClassWithSound(item, prefix) | |
{ | |
var name = getLibraryItemRawName(item); | |
if(!item.linkageExportForAS){ | |
item.linkageExportForAS = true; | |
item.linkageExportInFirstFrame = true; | |
item.linkageClassName = prefix + "_" + name; | |
} | |
} | |
function getLibraryItemRawName(item) | |
{ | |
var s = item.name; | |
if(s.lastIndexOf("/") > -1){ | |
s = s.slice(s.lastIndexOf("/") + 1, s.length); | |
} | |
if(s.lastIndexOf(".") > -1){ | |
s = s.slice(0, s.lastIndexOf(".")); | |
} | |
return s; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment