Exemplo n.º 1
0
    def read_bonus(self):
        if not self.read_boolean():
            return None

        return Bonus(self.read_long(), self.read_double(), self.read_double(),
                     self.read_double(), self.read_double(),
                     self.read_double(), self.read_enum(Faction),
                     self.read_double(), self.read_enum(BonusType))
    def read_bonuses(self):
        bonus_count = self.read_int()
        if bonus_count < 0:
            return None

        bonuses = []

        for bonus_index in range(bonus_count):
            if self.read_boolean():
                bonus = Bonus(self.read_long(), self.read_double(),
                              self.read_double(), self.read_double(),
                              self.read_double(), self.read_enum(BonusType))
                bonuses.append(bonus)
            else:
                bonuses.append(None)

        return bonuses