Esempio n. 1
0
    def build(self):
        """
        Build character

        :returns: character
        :rtype: Character
        """
        character = Character(self.model)

        if self.player_character:
            self.model.player = character

        character.name = self.name

        character.hit_points = self.hit_points
        character.max_hp = self.max_hp
        character.spirit = self.spirit
        character.max_spirit = self.max_spirit

        character.mind = self.mind
        character.body = self.body
        character.finesse = self.finesse
        character.size = self.size
        character.attack = self.attack

        character.speed = self.speed
        character.tick = self.tick
        character.level = self.level
        character.location = self.location
        character.inventory.weapon = self.weapon

        for item in self.items:
            character.inventory.append(item)

        for handle in self.effect_handles:
            character.add_effect_handle(handle)

        for effect in self.effects:
            character.add_effect(effect)

        for listener in self.listeners:
            character.register_event_listener(listener)

        for listener in self.update_listeners:
            character.register_for_updates(listener)

        for domain, level in self.domains.items():
            character.add_domain_level(domain, level)

        for entry in self.spell_entries:
            character.add_spell_entry(entry)

        for skill, limit in self.cooldowns.items():
            cooldown(character, skill, limit)

        return character
Esempio n. 2
0
    def build(self):
        """
        Build character

        :returns: character
        :rtype: Character
        """
        character = Character(self.model)

        if self.player_character:
            self.model.player = character

        character.name = self.name

        character.hit_points = self.hit_points
        character.max_hp = self.max_hp
        character.spirit = self.spirit
        character.max_spirit = self.max_spirit

        character.mind = self.mind
        character.body = self.body
        character.finesse = self.finesse
        character.size = self.size
        character.attack = self.attack

        character.speed = self.speed
        character.tick = self.tick
        character.level = self.level
        character.location = self.location
        character.inventory.weapon = self.weapon

        for item in self.items:
            character.inventory.append(item)

        for handle in self.effect_handles:
            character.add_effect_handle(handle)

        for effect in self.effects:
            character.add_effect(effect)

        for listener in self.listeners:
            character.register_event_listener(listener)

        for listener in self.update_listeners:
            character.register_for_updates(listener)

        for domain, level in self.domains.items():
            character.add_domain_level(domain, level)

        for entry in self.spell_entries:
            character.add_spell_entry(entry)

        for skill, limit in self.cooldowns.items():
            cooldown(character, skill, limit)

        return character