diff --git a/discord/flags.py b/discord/flags.py index 1316ffb7..8ae6a613 100644 --- a/discord/flags.py +++ b/discord/flags.py @@ -408,11 +408,14 @@ class Intents(BaseFlags): if item not in cls.VALID_FLAGS.keys(): intents_list.remove(item) - self = cls.all() - for item in cls.VALID_FLAGS.keys(): - if item not in intents_list: - setattr(self, item, False) + items = {} + for item in intents_list: + items[item] = cls.VALID_FLAGS[item] + bits = max(items.values()).bit_length() + value = (1 << bits) - 1 + self = cls.__new__(cls) + self.value = value return self @classmethod