def create_item_by(self, being, name): first = name.strip().split(" ")[0] klass = Equipment.klass_by_name(first) third = name.strip().split(" of ")[1] stack = EquipmentStack.from_cls(klass, third) tile = self.tile_for(being) tile.inventory.append(stack) return stack
def _create_player(self): player = Being(self.controller, Species("player"), is_player=True) # get everything! for klass in equipment_classes: for item in AttrReader.items_from_klass(klass): item = EquipmentStack.from_cls(klass, item.name) player.inventory.append(item) player.wizard = self.settings["model", "wizard"] return player
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