skill_training.py (1827B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\characterskills\client\skill_training.py 2 import clonegrade 3 from omega.client.clone_grade_svc import get_clone_grade_svc 4 5 class ClientCharacterSkillInterface(object): 6 7 def __init__(self, skill_service): 8 self.skill_service = skill_service 9 10 def get_primary_attribute_id(self, skill_type_id): 11 return self.skill_service.GetPrimarySkillAttribute(skill_type_id) 12 13 def get_secondary_attribute_id(self, skill_type_id): 14 return self.skill_service.GetSecondarySkillAttribute(skill_type_id) 15 16 def get_skill_rank(self, skill_type_id): 17 return self.skill_service.GetSkillRank(skill_type_id) 18 19 def get_skill_level(self, skill_type_id): 20 skill = self.skill_service.GetSkillIncludingLapsed(skill_type_id) 21 if skill: 22 return skill.trainedSkillLevel 23 else: 24 return 0 25 26 def get_character_attribute_at_time(self, attribute_id, time_offset): 27 attribute = self.skill_service.GetCharacterAttribute(attribute_id) 28 skill_boosters = self.get_skill_accelerator_boosters() 29 if get_clone_grade_svc().is_omega_with_grace_period(): 30 attribute -= skill_boosters.get_attribute_bonus_expired_at_time_offset(attribute_id, time_offset) 31 else: 32 attribute -= skill_boosters.get_attribute_bonus_expired_at_time_offset(attribute_id, time_offset) * clonegrade.ALPHA_TRAINING_MULTIPLIER 33 return attribute 34 35 def get_skill_points(self, skill_type_id): 36 skill = self.skill_service.GetSkillIncludingLapsed(skill_type_id) 37 if skill: 38 return skill.trainedSkillPoints 39 else: 40 return 0 41 42 def get_skill_accelerator_boosters(self): 43 return self.skill_service.GetSkillAcceleratorBoosters()