def generate(self, room_num, depth): objects = [] n = int(normalvariate(room_num, room_num / 5.)) for i in range(n): # pick class of object klass = self.pick_from_weights(self.klass_weights) # pick the object from the class item = self.pick_from_weights(self.object_weights[klass]) equipment = EquipmentStack.from_item(item.clone()) objects.append(equipment) return objects