you lose your original opacity value if its run as separate scripts.
here is how to do it as one script
var doc = app.activeDocument;
//var items = doc.pageItems; // this line states that items is an array of all page Items
var items = doc.selection; // this line states that items is an array of all selected items
for(var i = 0; i<items.length;i++){
if(items.opacity != 100){
if(items.filled === true){
items.fillColor.tint = items.fillColor.tint*(items.opacity/100);
}
if(items.stroked === true){
items.strokeColor.tint = items.strokeColor.tint*(items.opacity/100);
}
items.opacity = 100;
}
}
As for actions losing the script on restart.
CC+ still has the same issue.
very painfull
here is a more complete script.
bundled in a function to keep global space clean.
and should deal with Spot, CMYK, and RGB colours.
let me know if you find it does unexpected things...
function RemoveOpacity(){
// to work on selected items only set to SEL
// to work on whole document set to ALL
var work_on = "SEL";
//---------------------------------------------------------
var doc = app.activeDocument;
if(work_on === 'SEL'){
var items = doc.selection;
}else if(work_on === 'ALL'){
var items = doc.pathItems;
}else{
alert('the "work_on" variable is not set correctly');
return;
}
for(var i = 0; i<items.length;i++){
if(items.opacity != 100){
if(items.filled === true && items.fillColor == '[SpotColor]'){
items.fillColor.tint = items.fillColor.tint*(items.opacity/100);
}else if(items.filled === true && items.fillColor == '[CMYKColor]'){
items.fillColor.cyan = items.fillColor.cyan*(items.opacity/100);
items.fillColor.magenta = items.fillColor.magenta*(items.opacity/100);
items.fillColor.yellow = items.fillColor.yellow*(items.opacity/100);
items.fillColor.black = items.fillColor.black*(items.opacity/100);
}else if(items.filled === true && items.fillColor == '[RGBColor]'){
items.fillColor.red = items.fillColor.red+(255-items.fillColor.red)*(items.opacity/100);
items.fillColor.blue = items.fillColor.blue+(255-items.fillColor.blue)*(items.opacity/100);
items.fillColor.green = items.fillColor.green+(255-items.fillColor.green)*(items.opacity/100);
}
if(items.stroked === true && items.strokeColor == '[SpotColor]'){
items.strokeColor.tint = items.strokeColor.tint*(items.opacity/100);
}else if(items.stroked === true && items.strokeColor == '[CMYKColor]'){
items.strokeColor.cyan = items.strokeColor.cyan*(items.opacity/100);
items.strokeColor.magenta = items.strokeColor.magenta*(items.opacity/100);
items.strokeColor.yellow = items.strokeColor.yellow*(items.opacity/100);
items.strokeColor.black = items.strokeColor.black*(items.opacity/100);
}else if(items.stroked === true && items.strokeColor == '[RGBColor]'){
items.strokeColor.red = items.strokeColor.red+(255-items.strokeColor.red)*(items.opacity/100);
items.strokeColor.blue = items.strokeColor.blue+(255-items.strokeColor.blue)*(items.opacity/100);
items.strokeColor.green = items.strokeColor.green+(255-items.strokeColor.green)*(items.opacity/100);
}
items.opacity = 100;
}
}
}
RemoveOpacity();