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

configuration.py (1731B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\achievement_system\client\model\definition\contribution_method\configuration.py
      2 from achievement_system.client.model.definition.contribution_method.identifier import ContributionMethodIdentifier
      3 from achievement_system.client.model.definition.contribution_method.parameter.configuration import ContributionMethodParameterConfiguration
      4 from achievement_system.client.model.flatbuffer.generated import ContributionConfig as FlatbufferContributionConfig
      5 if False:
      6     from typing import List
      7 
      8 class ContributionMethodConfiguration(object):
      9 
     10     def __init__(self, identifier, parameters):
     11         self._identifier = identifier
     12         self._parameters = parameters
     13 
     14     @property
     15     def identifier(self):
     16         return self._identifier
     17 
     18     @property
     19     def parameters(self):
     20         return self._parameters
     21 
     22     def get_parameter_config_by_identifier(self, identifier):
     23         for param in self._parameters:
     24             if param.identifier == identifier:
     25                 return param
     26 
     27     @classmethod
     28     def from_flatbuffer(cls, fb_data):
     29         return ContributionMethodConfiguration(identifier=ContributionMethodIdentifier.from_flatbuffer(fb_data.MethodId()), parameters=[ ContributionMethodParameterConfiguration.from_flatbuffer(fb_data.Parameters(i)) for i in range(fb_data.ParametersLength()) ])
     30 
     31     def __eq__(self, other):
     32         return self.identifier == other.identifier and self.parameters == other.parameters
     33 
     34     def __ne__(self, other):
     35         return not self.__eq__(other)
     36 
     37     def __str__(self):
     38         return 'identifier: %s\n' % self.identifier + 'parameters: %s' % '\n, '.join([ p.__str__() for p in self.parameters ])