Here are a couple of methods. There are probably more efficient ways to do it.
This one will name a new adjustment layer 1 higher than the current highest:
Code: Select all
{
var activeItem = app.project.activeItem;
if (activeItem == null || !(activeItem instanceof CompItem)){
alert("Please establish a comp as the active item and run the script again");
} else {
var layerNumber = 0;
var layerName;
var testNumber;
for (var x = 1; x <= activeItem.numLayers; x++) {
layerName = activeItem.layer(x).name;
if (layerName.indexOf("Adjustment Layer ") != -1) {
testNumber = parseInt(layerName.substring(layerName.lastIndexOf(" "), layerName.length));
if (!isNaN(testNumber)) {
layerNumber = Math.max(layerNumber, testNumber);
}
}
}
app.beginUndoGroup("Levels Adjust");
var activeComp = activeItem;
var solidName = "Adjustment Layer " + (layerNumber + 1);
var solidW = activeComp.width;
var solidH = activeComp.height;
var solidPixelAspectRatio = activeComp.pixelAspect;
var solidDuration = activeComp.duration;
var adjLayer = activeComp.layers.addSolid([1, 1, 1], solidName, solidW, solidH, solidPixelAspectRatio, solidDuration);
adjLayer.adjustmentLayer = true;
adjLayer.guideLayer = false;
adjLayer.moveToBeginning();
app.endUndoGroup();
}
}
This one will fill in earlier numbers if they don't already exist (i.e. if you have a 2 but not 1 it will create a 1):
Code: Select all
{
var activeItem = app.project.activeItem;
if (activeItem == null || !(activeItem instanceof CompItem)){
alert("Please establish a comp as the active item and run the script again");
} else {
var layerNumber = 0;
var layerExists = true;
while (layerExists) {
layerExists = false;
layerNumber ++;
for (var x = 1; x <= activeItem.numLayers; x++) {
if (activeItem.layer(x).name == "Adjustment Layer " + layerNumber) {
layerExists = true;
break;
}
}
}
app.beginUndoGroup("Levels Adjust");
var activeComp = activeItem;
var solidName = "Adjustment Layer " + layerNumber;
var solidW = activeComp.width;
var solidH = activeComp.height;
var solidPixelAspectRatio = activeComp.pixelAspect;
var solidDuration = activeComp.duration;
var adjLayer = activeComp.layers.addSolid([1, 1, 1], solidName, solidW, solidH, solidPixelAspectRatio, solidDuration);
adjLayer.adjustmentLayer = true;
adjLayer.guideLayer = false;
adjLayer.moveToBeginning();
app.endUndoGroup();
}
}