Here is a sample script on how I would approach creating a combined script. I move the scripts into literal strings, and then generate the New Script message in a combined literal string, and then execute the statement.
dt = open("$SAMPLE_DATA\Semiconductor Capability.jmp");
biv=Bivariate(invisible, Y( :NPN1 ), X( :PNP1 ), Fit Line( {Line Color( {213, 72, 87} )} ) );
myscript1=char(biv<<get script);
sct=Scatterplot Matrix(invisible,
Y( :NPN1, :PNP1, :PNP2, :NPN2 ),
Matrix Format( "Lower Triangular" ),
Ellipse Color( 3 ),
{},
"Scatterplot Matrix Options",
FrameBox,
{Frame Size( 51, 37 )}
);
myscript2=char(sct<<get script);
eval(parse("dt<<new script(\!"combined\!","|| myscript1||";"||myscript2||";);"));
Jim