def processRecipes(textIO, resourceFile): RecipeMap = mmFile.RecipeMap(resourceFile) out = io.StringIO() for line in textIO: energy_txt = "" prob_txt = "" mult_txt = "" formula = "" line_out = line.strip("\n") l = UP.unquote(line_out) txt = l.split('#',1)[0] category = SL.getCategory(txt) if category!="other": substanceName = txt[len(category):] else: substanceName = txt f = EF.RESOURCES[category] substanceDict = RecipeMap[substanceName] if substanceDict is not None: rarity = substanceDict['rarity'] if substanceDict.get('rarity') is not None else 70 energy_txt = ENERGY_FMT.format(energy=f(rarity)) mult = getMultiplier(category) mult_txt = "" if mult==1 else MULT_FMT.format(mult=mult) if category=='ore': prob = substanceDict['prob'] if substanceDict.get('prob') is not None else 1 prob_txt = "" if prob==1 else PROB_FMT.format(prob=prob) formula = substanceDict['formula'] if substanceDict.get('formula') is not None else "water" print(line_out," ".join([energy_txt, prob_txt, mult_txt, formula]), file=out) return out
def getFileDict(filenames): out = dict() for fn in filenames: fnl = fn.split('.') if len(fnl)==3: cat = SL.getCategory(fnl[1]) out[cat] = open(fn,'rt') return out