def __init__(self, charID): """Constructor""" self.charID = charID self.blueprints = Blueprints(self.charID) self.materials = DataRequest.getAssets(self.charID).materials() self.modMatCost = ModifiedManufacturingCost(self.charID) self.result = {} for blueprintID in self.blueprints.blueprints: blueprint = self.blueprints.blueprints[blueprintID] if not blueprint.T2.inventable: continue for idx in range(len(blueprint.T2.inventedIDs)): if blueprint.t2Priority[idx][0] == "manufacture": matsBreakdown = self.modMatCost.requiredBaseMaterials( blueprint.T2.inventedIDs[idx]) totalMats = matsBreakdown.totalMats() self.result = StaticData.materialAddition( self.result, totalMats) print "TOTAL REQUIRED:\n" StaticData.printDict(self.result) print "\n\nNOT OWNED:\n" StaticData.printDict( StaticData.materialSubtraction(self.result, self.materials)[0])
a = DataRequest.getAssets(1004487144) produceableItems = LPClasses.ProduceableItems(1004487144) agg = produceableItems.T2Produceables() agg.printTotMats() z = LPClasses.InventableItems(1004487144).T2Inventables() z.printTotMats() h = IndustryJobs() #a = Blueprints(charID=1004487144) LPClasses.TotalMatRequirements(1004487144) # represent blueprint data in the Blueprint class, market data are used to calculate priorities StaticData.printDict(LPClasses.DatacoresReq(1004487144).notInAssets()) #n = joltanAssets.materials() #x = LPClasses.datacoresReq(bp) #h = LPClasses.ModifiedManufacturingCost(1004487144) #a = h.requiredBaseMaterials(StaticData.idName("Scimitar Blueprint")) #a.printBreakDown() #a.printTotalMats() produceableItems = LPClasses.ProduceableItems(1004487144) agg = produceableItems.T2Produceables() agg.printTotMats() #a = LPClasses.ModifiedManufacturingCost(bp) #g = a.requiredComponents(StaticData.idName("Deflection Shield Emitter Blueprint")) #StaticData.printDict(g)
def printTotalMats(self): """nicely print the total mats irrespective of their origin""" totalMats = self.totalMats() print "Total Material Breakdown for {}:".format(self.name) StaticData.printDict(totalMats)