import contextlib import dcc.config import dcc.doom_base import subprocess import tempfile class Fabricate(dcc.doom_base.WadMap): def take_action(self, parsed_args): with tempfile.TemporaryDirectory() as td: with contextlib.chdir(td): subprocess.run([dcc.config.DSDA] + dcc.config.DsdaPreamble(parsed_args.wad, parsed_args.map) + ["-timedemo", dcc.config.DemoInPath(parsed_args.wad, parsed_args.map)] + ["-viddump", dcc.config.VideoPath(parsed_args.wad, parsed_args.map)])