コード例 #1
0
    def __init__(self, base_type: BaseType, masteries = None):
        self.str_base = Attribute.attribute_or_none(base_type.attributes[CharAttributes.STREINGTH])
        self.end_base = Attribute.attribute_or_none(base_type.attributes[CharAttributes.ENDURANCE])
        self.prc_base = Attribute.attribute_or_none(base_type.attributes[CharAttributes.PERCEPTION])
        self.agi_base = Attribute.attribute_or_none(base_type.attributes[CharAttributes.AGILITY])
        self.int_base = Attribute.attribute_or_none(base_type.attributes[CharAttributes.INTELLIGENCE])
        self.cha_base = Attribute.attribute_or_none(base_type.attributes[CharAttributes.CHARISMA])
        self.readiness = 0
        self.disabled = False
        self.masteries = masteries or Masteries(base_type.xp)

        self.type_name = base_type.type_name
        self.actives = base_type.actives

        self.unarmed_damage_type = base_type.unarmed_damage_type
        self.unarmed_chances = base_type.unarmed_chances
        self.resists = Resistances(base_type.resists)
        self.natural_armor = Armor(base_type.armor_base, base_type.armor_dict)

        self.inventory = Inventory(base_type.inventory_capacity, self)
        self.equipment :Equipment = base_type.equipment_cls(self)
        self.abilities = []
        self.buffs = []

        self.alive = True
        self.is_obstacle = False
        self.last_damaged_by = None

        self.icon = base_type.icon

        for active in std_attacks:
            self.give_active(active)

        for active in std_movements:
            self.give_active(active)
コード例 #2
0
    def __init__(self, name, school, targeting_cls,
                 complexity, cost,
                 amount, duration, precision_factor, distance, radius,
                 resolve_callback, targeting_cond=None):

        super().__init__(name, ItemTypes.SPELL_CONCEPT)
        self.school = school
        self.targeting_cls = targeting_cls
        self.targeting_cond = targeting_cond
        self.complexity_base = Attribute.attribute_or_none(complexity)

        self.mana_cost_base = Attribute.attribute_or_none(cost.mana)
        self.stamina_cost_base = Attribute.attribute_or_none(cost.stamina)
        self.health_cost_base = Attribute.attribute_or_none(cost.health)
        self.readiness_cost_base = Attribute.attribute_or_none(cost.readiness)

        self.amount_base = Attribute.attribute_or_none(amount)
        self.duration_base = Attribute.attribute_or_none(duration)
        self.precision_factor_base = Attribute.attribute_or_none(precision_factor)
        self.distance_base = Attribute.attribute_or_none(distance)
        self.radius_base = Attribute.attribute_or_none(radius)

        self.resolve_callback = resolve_callback
        self.runes = None