Skip to main content
Firewood:D
Inspiring
May 30, 2023
Answered

How to ignore locked layers when selecting multi-layer operations

  • May 30, 2023
  • 2 replies
  • 959 views

Select frames on multiple layers for operation. If there are locked layers in the selection, how to ignore the locked layers.

Can jsfl achieve automatic judgment?

If possible, I need some help. Thanks

This topic has been closed for replies.
Correct answer Multoman

 

var tl = fl.getDocumentDOM().getTimeline()
var sel = tl.getSelectedFrames()
for (var i = 0; i < sel.length; i += 3) {
	if (tl.layers[sel[i]].locked === true) {
		tl.setSelectedFrames([sel[i], sel[(i + 1)], sel[(i + 2)]], false)
	}
}

 

2 replies

Multoman
Inspiring
May 30, 2023
if(fl.getDocumentDOM().getTimeline().layers[0].locked === false){
	
	}
or do you need to write a ready script ?
Firewood:D
Inspiring
May 30, 2023

The effect I want to achieve is to select multiple layers and insert keyframes (or other operations), then automatically ignore locked layers (locking layers does not add keyframes (or other operations)),

Multoman
MultomanCorrect answer
Inspiring
May 30, 2023

 

var tl = fl.getDocumentDOM().getTimeline()
var sel = tl.getSelectedFrames()
for (var i = 0; i < sel.length; i += 3) {
	if (tl.layers[sel[i]].locked === true) {
		tl.setSelectedFrames([sel[i], sel[(i + 1)], sel[(i + 2)]], false)
	}
}

 

kglad
Community Expert
Community Expert
May 30, 2023

jsfl has a boolean layer.locked property.

Firewood:D
Inspiring
May 30, 2023

Thank you for your reply. I will continue to explore

kglad
Community Expert
Community Expert
May 30, 2023

you're welcome.  (just loop through any timoof interest layers to do what you want.)