Example #1
0
    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
Example #2
0
    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
Example #3
0
    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