identifier.py (1168B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\character\client\identifier.py 2 from eve.common.script.sys import idCheckers 3 from eveProto.generated.eve_public.character.character_pb2 import Identifier as ProtoCharacterIdentifier 4 5 class CharacterIdentifier(object): 6 7 def __init__(self, identifier): 8 self._identifier = identifier 9 10 @property 11 def identifier(self): 12 return self._identifier 13 14 def is_npc_character(self): 15 return idCheckers.IsNPCCharacter(self.identifier) 16 17 def is_player_character(self): 18 return idCheckers.IsEvePlayerCharacter(self.identifier) 19 20 @classmethod 21 def from_proto(cls, payload): 22 return CharacterIdentifier(identifier=payload.sequential) 23 24 @classmethod 25 def to_proto(cls, instance): 26 return ProtoCharacterIdentifier(sequential=instance.identifier) 27 28 def __eq__(self, other): 29 return self.identifier == other.identifier 30 31 def __ne__(self, other): 32 return not self.__eq__(other) 33 34 def __hash__(self): 35 return hash(self._identifier) 36 37 def __str__(self): 38 return 'identifier: %s' % self.identifier