Skip to content

Instantly share code, notes, and snippets.

@yurfuwa-chan
Last active December 10, 2015 03:08
Show Gist options
  • Save yurfuwa-chan/4372504 to your computer and use it in GitHub Desktop.
Save yurfuwa-chan/4372504 to your computer and use it in GitHub Desktop.
Flaファイル内のガイドレイヤを全部削除するJSFL
var doc = fl.getDocumentDOM()
var lib = doc.library;
var n = 0;
document.timelines.forEach(function(timeline){
removeGuildLayer(timeline)
})
lib.items.forEach(function(item){
removeGuildLayer(item)
})
fl.trace("deleted "+n+" layers");
function removeGuildLayer(item){
if(item instanceof Timeline || (item instanceof SymbolItem && item.timeline)){
var timeline = item.timeline || item
var layers = timeline.layers;
var delete_index;
/*
deleteLayerはひとつのindexしか処理できない
当然、deleteLayerされたあとのarrayは更新されないので、
layersを再取得してもう一度走査処理をする必要がある。
削除後のlayer構造を予想して一括走査する方法もあるけど今回は割愛。
*/
while(layers.some(function(layer,index){
if(layer.layerType == "guide"){
//モーションガイドは除外する
if(layers[index+1] && layers[index+1].layerType == "guided"){
return false
}
delete_index = index;
return true
}
})){
fl.trace(item.name+" : "+delete_index);
timeline.deleteLayer(delete_index);
layers = timeline.layers;
n++;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment