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)
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)
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])))
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)
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))
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))
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)
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))
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)
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))
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))
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)
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)
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)
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)
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)
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))
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))
def func(args): for srcpath in fs.walkdir(args.src, '*.ctr'): ctrfile = CTRFileFormat() ctrfile.load(srcpath)
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)
def func(args): for path in fs.walkdir(args.src, args.filter): print(path.replace(args.src, '', 1))
def func_bit(args): for srcpath in fs.walkdir(args.src, '*terrain.bit'): f = BIT() f.load(srcpath) print(len(f.squares))
def func_cmd(args): for srcpath in fs.walkdir(args.src, '*terrain.cmd'): f = CMD() f.load(srcpath) print(len(f.items))
def func_lmp(args): for srcpath in fs.walkdir(args.src, '*terrain.lmp'): f = LMP() f.load(srcpath) print(len(f.squares))
def func_qvm(args): for srcpath in fs.walkdir(args.src, '*terrain.qvm'): f = QVM() f.load(srcpath)
def func_tex(args): for srcpath in fs.walkdir(args.src, '*terrain.tex'): f = tex_load(srcpath) print(len(f.bitmaps))
def func(args): for srcpath in fs.walkdir(args.src, '*.fnt'): fnt.fromfile(srcpath)