diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java index 1ab01d567..e15864d9c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/SWF.java @@ -1348,6 +1348,10 @@ public final class SWF implements SWFContainerItem, Timelined { } public List exportActionScript(AbortRetryIgnoreHandler handler, String outdir, ScriptExportSettings exportSettings, boolean parallel, EventListener evl) throws IOException { + return exportActionScript(handler, outdir, exportSettings, parallel, evl, true, true); + } + + public List exportActionScript(AbortRetryIgnoreHandler handler, String outdir, ScriptExportSettings exportSettings, boolean parallel, EventListener evl, boolean as2, boolean as3) throws IOException { List ret = new ArrayList<>(); if (isAS3()) { diff --git a/src/com/jpexs/decompiler/flash/console/CommandLineArgumentParser.java b/src/com/jpexs/decompiler/flash/console/CommandLineArgumentParser.java index 40e871a7a..2cac50ea2 100644 --- a/src/com/jpexs/decompiler/flash/console/CommandLineArgumentParser.java +++ b/src/com/jpexs/decompiler/flash/console/CommandLineArgumentParser.java @@ -1042,6 +1042,8 @@ public class CommandLineArgumentParser { } String[] validExportItems = new String[]{ "script", + "script_as2", + "script_as3", "image", "shape", "morphshape", @@ -1285,7 +1287,10 @@ public class CommandLineArgumentParser { } ScriptExportSettings scriptExportSettings = new ScriptExportSettings(enumFromStr(formats.get("script"), ScriptExportMode.class), singleScriptFile); - if (exportAll || exportFormats.contains("script")) { + boolean exportAllScript = exportAll || exportFormats.contains("script"); + boolean exportAs2Script = exportAllScript || exportFormats.contains("script_as2"); + boolean exportAs3Script = exportAllScript || exportFormats.contains("script_as3"); + if (exportAs2Script || exportAs3Script) { System.out.println("Exporting scripts..."); if (as3classes.isEmpty()) { as3classes = parseSelectClassOld(args); @@ -1301,7 +1306,7 @@ public class CommandLineArgumentParser { exportOK = swf.exportAS3Class(as3class, scriptsFolder, scriptExportSettings, parallel, evl) && exportOK; } } else { - exportOK = swf.exportActionScript(handler, scriptsFolder, scriptExportSettings, parallel, evl) != null && exportOK; + exportOK = swf.exportActionScript(handler, scriptsFolder, scriptExportSettings, parallel, evl, exportAs2Script, exportAs3Script) != null && exportOK; } } }