Exemple #1
0
def func(args):
	for srcpath in fs.walkdir(args.src, '*.mef'):
		meffile = MEF()
		meffile.load(srcpath)

		for i, dner in enumerate(meffile.dner):
			if dner.head['objectid'][0] > len(meffile.dner):
				print(srcpath, dner.head['objectid'][0], i)
Exemple #2
0
def func(args):
	for srcpath in fs.walkdir(args.src, args.filter):
		dstpath = srcpath.replace(args.src, args.dst, 1)

		result = compare_files(srcpath, dstpath)

		if not result:
			print(srcpath, result)
Exemple #3
0
def func(args):
    dataset = defaultdict(lambda: 0)

    for srcpath in fs.walkdir(args.src, args.filter):
        ff = ilff.fromfile(srcpath)
        cc = tuple([c.fourcc for c in ff.chunks()])

        dataset[cc] += 1

    for k, v in dataset.items():
        print('{0:<5} {1}'.format(v, ' '.join([s.decode('utf8') for s in k])))
Exemple #4
0
def func(args):
	for srcpath in fs.walkdir(args.src, '*.cmd'):
		cmdfile = CMD()
		cmdfile.load(srcpath)

		# Editing code here
		# ...

		dstpath = srcpath.replace(args.src, args.dst, 1)
		fs.makedir(dstpath)
		cmdfile.save(dstpath)
Exemple #5
0
def func(args):
    datadict = defaultdict(lambda: 0)

    for path in fs.walkdir(args.src, '*'):
        _, ext = os.path.splitext(path)
        datadict[ext] += 1

    data = list(datadict.items())
    data.sort(key=lambda item: item[1], reverse=True)

    for ext, count in data:
        print('{0:<5} - {1}'.format(ext, count))
Exemple #6
0
def func(args):
	dataset = defaultdict(set)

	for srcpath in fs.walkdir(args.src, args.filter):
		ff = ilff.fromfile(srcpath)

		for c in ff.chunks():
			dataset[c.fourcc].add(c.dtsize)


	for k, v in dataset.items():
		v.discard(0)
		print(k, gcd(v))
Exemple #7
0
def func(args):
	dataset = defaultdict(set)

	for srcpath in fs.walkdir(args.src, args.filter):
		ff = ilff.fromfile(srcpath)

		for c in ff.chunks():
			dataset[c.fourcc].add(c.dtsize)


	for k, v in dataset.items():
		v = v if len(v) < 10 else list(v)[:10]
		print(k, v)
Exemple #8
0
def func(args):
    for srcpath in fs.walkdir(args.src, '*.tlm'):
        tlmfile = TLM()
        tlmfile.load(srcpath)

        dstpath = srcpath.replace(args.src, args.dst, 1).replace('.tlm', '.tga')

        print(dstpath)

        if args.debug:
            continue

        os.makedirs(os.path.dirname(dstpath))
Exemple #9
0
def func_ctr(args):
    for srcpath in fs.walkdir(args.src, '*terrain.ctr'):
        dstpath = srcpath.replace(args.src, args.dst, 1)
        dstpath = dstpath.replace('.ctr', '.ctr.txt')

        f = CTR()
        f.load(srcpath)

        print(len(f.items))

        os.makedirs(os.path.dirname(dstpath), exist_ok=True)

        with open(dstpath, 'w') as fp:
            print(f.items, file=fp)
Exemple #10
0
def func(args):
    count = 0

    for srcpath in fs.walkdir(args.src, '*.qvm'):
        qvmfile = QVM()
        qvmfile.load(srcpath)
        qvmtree = ast.fromfile(qvmfile)
        qvmtext = qsc.fromtree(qvmtree)

        dstfile = srcpath.replace(args.src, args.dst,
                                  1).replace('.qvm', '.qsc')
        os.makedirs(os.path.dirname(dstfile), exist_ok=True)

        with open(dstfile, 'w') as o:
            o.write(qvmtext)

        count += 1

    print('Decompiled: {0}'.format(count))
Exemple #11
0
def func(args):
    count = 0

    for srcpath in fs.walkdir(args.src, '*.qvm'):
        qvmfile = QVM()
        qvmfile.load(srcpath)

        dstpath = srcpath.replace(args.src, args.dst, 1)

        print(dstpath)

        os.makedirs(os.path.dirname(dstpath), exist_ok=True)

        with open(dstpath, 'wb') as fp:
            qvmfile.save(fp, version=5)

        count += 1

    print('Converted: {0}'.format(count))
Exemple #12
0
def func(args):
    for srcpath in fs.walkdir(args.src, '*.hmp'):
        dstpath = srcpath.replace(args.src, args.dst, 1)

        hmp = HMP()
        hmp.load(srcpath)

        for i, square in enumerate(hmp.squares):
            if not square.side:
                continue

            data = bytearray(square.data)

            for i in range(len(data)):
                data[i] = 0

            square.data = data

        hmp.save(dstpath)
Exemple #13
0
def func(args):
    for srcpath in fs.walkdir(args.src, '*.lmp'):
        dstpath = srcpath.replace(args.src, args.dst, 1)
        fs.makedir(dstpath)

        lmpobj = LMP()
        lmpobj.load(srcpath)

        for i, square in enumerate(lmpobj.squares):
            if not square.side:
                continue

            data = bytearray(square.data)

            for i in range(len(data)):
                data[i] = 0

            square.data = data

        lmpobj.save(dstpath)
Exemple #14
0
def func(args):
    for srcpath in fs.walkdir(args.src, '*.bit'):
        dstpath = srcpath.replace(args.src, args.dst, 1)

        bit = BIT()
        bit.load(srcpath)

        for i, square in enumerate(bit.squares):
            if not square.side:
                continue

            dstname = os.path.basename(srcpath)
            dstfile = os.path.join(dstpath,
                                   '{0}.#{1:0>3}.png'.format(dstname[:-4], i))

            os.makedirs(os.path.dirname(dstfile), exist_ok=True)

            im = Image.frombytes('1', (square.side, square.side), square.data,
                                 'raw')
            im.save(dstfile)
Exemple #15
0
def func(args):
    count = 0

    dt = defaultdict(set)

    for srcpath in fs.walkdir(args.src, '*terrain.qvm'):
        print(srcpath)

        qvmfile = QVM()
        qvmfile.load(srcpath)
        qvmtree = ast.fromfile(qvmfile)

        for item in qvmtree:
            if not isinstance(item, ast.ExpressionCall):
                raise ValueError("Unexpected item type")

            arguments = [arg[0].value for arg in item.arguments]

            if item.callee.value == 'CreateTerrainMaterial':
                mt_id = arguments[0]
                mt_st = arguments[1]
                mt_dt = arguments[2:]

                for i in range(0, len(mt_dt), 7):
                    dt[0].add(mt_dt[i + 0])
                    dt[1].add(mt_dt[i + 1])
                    dt[2].add(mt_dt[i + 2])
                    dt[3].add(mt_dt[i + 3])
                    dt[4].add(mt_dt[i + 4])
                    dt[5].add(mt_dt[i + 5])
                    dt[6].add(mt_dt[i + 6])

            elif item.callee.value == 'CreateTerrainTileMap':
                tm_id = arguments[0]
                tm_dt = arguments[1:]

            else:
                raise ValueError("")

    for k, v in dt.items():
        print(k, v)
Exemple #16
0
def func(args):
	for srcpath in fs.walkdir(args.src, '*.hmp'):
		dstpath = srcpath.replace(args.src, args.dst, 1)

		hmpfile = HMP()
		hmpfile.load(srcpath)

		for i, square in enumerate(hmpfile.squares):
			if square.side:
				dstname = os.path.basename(srcpath)
				dstfile = os.path.join(dstpath, '{0}.#{1:0>3}.png'.format(dstname[:-4], i))

				print(dstfile)

				if args.debug:
					continue

				os.makedirs(os.path.dirname(dstfile), exist_ok=True)

				im = Image.frombytes('L', (square.side + 1, square.side + 1), square.data, 'raw')
				im.save(dstfile)
Exemple #17
0
def func(args):
    count = 0

    for srcpath in fs.walkdir(args.src, ('*.tex', '*.spr', '*.pic')):
        texfile = tex.fromfile(srcpath)

        dstpath = srcpath.replace(args.src, args.dst, 1)

        print(dstpath)

        os.makedirs(os.path.dirname(dstpath), exist_ok=True)

        for i in range(len(texfile.bitmaps)):
            fxt = srcpath[-4:]
            ext = '.tga'
            wid = texfile.width
            hei = texfile.height

            if texfile.version in (7, 9) and len(texfile.bitmaps) > 1:
                ext = '.#{0:0>2}.tga'.format(i)

            elif texfile.version == 11 and i > 0:
                ext = '.%{0:0>2}.tga'.format(i)
                wid = texfile.width // (1 << i)
                hei = texfile.height // (1 << i)

            tgafile = tga.TGA()
            tgafile.setImageType(2)
            tgafile.setTGALines(
                texfile.bitmaps[i],
                wid,
                hei,
                tex.DEPTH[texfile.mode] * 8)
            tgafile.setImageDescriptor(True, True, tex.ALPHA[texfile.mode])

            tga.tofile(tgafile, dstpath.replace(fxt, ext))

        count += 1

    print('Converted: {0}'.format(count))
Exemple #18
0
def func(args):
    count = 0

    jobtype = set()
    vartype = set()
    instype = set()

    for srcpath in fs.walkdir(args.src, '*objects.qvm'):
        print(srcpath)

        qvmfile = QVM()
        qvmfile.load(srcpath)
        qvmtree = ast.fromfile(qvmfile)
        xmltext = obj.fromtree(qvmtree)

        dstfile = srcpath.replace(args.src, args.dst,
                                  1).replace('.qvm', '.xml')
        os.makedirs(os.path.dirname(dstfile), exist_ok=True)

        with open(dstfile, 'wb') as o:
            o.write(xmltext)

    print('Objects: {0}'.format(count))
Exemple #19
0
def func(args):
    for srcpath in fs.walkdir(args.src, '*.ctr'):
        ctrfile = CTRFileFormat()
        ctrfile.load(srcpath)
Exemple #20
0
def func(args):
    for srcpath in fs.walkdir(args.src, args.filter):
        dstpath = srcpath.replace(args.src, args.dst, 1)

        os.makedirs(os.path.dirname(dstpath), exist_ok=True)
        shutil.copyfile(srcpath, dstpath)
Exemple #21
0
def func(args):
    for path in fs.walkdir(args.src, args.filter):
        print(path.replace(args.src, '', 1))
Exemple #22
0
def func_bit(args):
    for srcpath in fs.walkdir(args.src, '*terrain.bit'):
        f = BIT()
        f.load(srcpath)

        print(len(f.squares))
Exemple #23
0
def func_cmd(args):
    for srcpath in fs.walkdir(args.src, '*terrain.cmd'):
        f = CMD()
        f.load(srcpath)

        print(len(f.items))
Exemple #24
0
def func_lmp(args):
    for srcpath in fs.walkdir(args.src, '*terrain.lmp'):
        f = LMP()
        f.load(srcpath)

        print(len(f.squares))
Exemple #25
0
def func_qvm(args):
    for srcpath in fs.walkdir(args.src, '*terrain.qvm'):
        f = QVM()
        f.load(srcpath)
Exemple #26
0
def func_tex(args):
    for srcpath in fs.walkdir(args.src, '*terrain.tex'):
        f = tex_load(srcpath)

        print(len(f.bitmaps))
Exemple #27
0
def func(args):
    for srcpath in fs.walkdir(args.src, '*.fnt'):
        fnt.fromfile(srcpath)