def _start_action(self): #Check that all reuired resources are available if not self.possession.has_resources(self.inputs): print "Not enough resources to start " + self.name + "! Go home..." self.time_left = 0 return #create the output stuff right away also, so that resources are "reserved" #Don't give the results to the caller until duraton is passed for output_resource in self.outputs: created_output = ResourceFactory.create_resource(output_resource, self.possession) self.created_outputs.append(created_output)