def createResourceStruct(resources, formatAsTree=False, updateOnlyExistingSprites=False): skippatt = re.compile(r'\.(meta|py)$', re.I) result = {} if formatAsTree: result = ExtMap() # Filter unwanted files for res in resources: if skippatt.search(res.path): continue result[res.id] = res # Update simple images for combImg in (x for x in result.values() if isinstance(x, CombinedImage)): for embImg in combImg.embeds: if embImg.id in result: result[embImg.id].attachCombinedImage(combImg) elif not updateOnlyExistingSprites: embImg.attachCombinedImage(combImg) result[embImg.id] = embImg # Flatten out the resource representation for resid, res in result.items(): result[resid] = res.toResinfo() # ExtMap returns nested maps if formatAsTree: result = result.getData() return result
def createResourceStruct(resources, formatAsTree=False, updateOnlyExistingSprites=False): skippatt = re.compile(r'\.(meta|py)$', re.I) result = {} if formatAsTree: result = ExtMap() # Filter unwanted files for res in resources: if skippatt.search(res.path): continue result[res.id] = res # Update simple images for combImg in (x for x in result.values() if isinstance(x, CombinedImage)): for embImg in combImg.embeds: if embImg.id in result: result[embImg.id].attachCombinedImage(combImg) elif not updateOnlyExistingSprites: embImg.attachCombinedImage(combImg) result[embImg.id] = embImg # Flatten out the resource representation for resid, res in result.items(): result[resid] = res.toResinfo() # Unify font map aliases if isinstance(res, FontMap): for glyphname, code in res.mapping.iteritems(): fdsc = "@%s/%s" % (res.alias, glyphname) if not fdsc in result: try: result[fdsc] = [ result[resid][1], round(result[resid][2] / code[1]), code[0] ] except: pass del result[resid][4] # ExtMap returns nested maps if formatAsTree: result = result.getData() return result
def createResourceStruct(resources, formatAsTree=False, updateOnlyExistingSprites=False): skippatt = re.compile(r'\.(meta|py)$', re.I) result = {} if formatAsTree: result = ExtMap() # Filter unwanted files for res in resources: if skippatt.search(res.path): continue result[res.id] = res # Update simple images for combImg in (x for x in result.values() if isinstance(x, CombinedImage)): for embImg in combImg.embeds: if embImg.id in result: result[embImg.id].attachCombinedImage(combImg) elif not updateOnlyExistingSprites: embImg.attachCombinedImage(combImg) result[embImg.id] = embImg # Flatten out the resource representation for resid, res in result.items(): result[resid] = res.toResinfo() # Unify font map aliases if isinstance(res, FontMap): for glyphname, code in res.mapping.iteritems(): fdsc = "@%s/%s" % (res.alias, glyphname) if not fdsc in result: result[fdsc] = [result[resid][1], round(result[resid][2] / code[1]), code[0]] del result[resid][4] # ExtMap returns nested maps if formatAsTree: result = result.getData() return result