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

evergreenRewardPanel.py (1618B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\loginRewards\evergreenRewardPanel.py
      2 from carbon.client.script.environment.AudioUtil import PlaySound
      3 from eve.client.script.ui.shared.loginRewards.oneTrackRewardPanel import BaseOneTrackRewardPanel
      4 from eve.client.script.ui.shared.loginRewards.panelControllers import EvergreenLoginCampaignController
      5 from eve.client.script.ui.shared.loginRewards.rewardUiConst import EvergreenPanelConst
      6 import eve.client.script.ui.shared.loginRewards.rewardUiConst as rewardUiConst
      7 import mathext
      8 from omega.client.clone_grade_svc import get_clone_grade_svc
      9 
     10 class EvergreenRewardPanel(BaseOneTrackRewardPanel):
     11     default_name = 'evergreenRewardPanel'
     12     __notifyevents__ = ['OnDailyCampaignAwardClaimed']
     13 
     14     def GetPanelController(self):
     15         return EvergreenLoginCampaignController(sm.GetService('loginCampaignService'), EvergreenPanelConst, get_clone_grade_svc().is_omega_with_grace_period())
     16 
     17     def OnDailyCampaignAwardClaimed(self, itemReward, updatedItemProgress, receivedBucketTypeID, updatedBucketInfo):
     18         if updatedItemProgress or updatedBucketInfo:
     19             PlaySound('daily_login_rewards_play')
     20             posInTrack = self.panelController.GetPositionInGridTrack(True)
     21             self.SetDayAsCurrent(posInTrack, True)
     22             daysScrolling = abs(self.currentFirstVisibleDay - 1 - updatedItemProgress.num_claimed_rewards)
     23             scrollTime = mathext.clamp(daysScrolling * rewardUiConst.SCROLL_ANIMATION_AUTO_STEP, 0.5, 1.5)
     24             self.GoToDay(posInTrack, animationTime=scrollTime)