NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

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