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

targetIconCont.py (2232B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\inflight\bracketsAndTargets\targetIconCont.py
      2 from __future__ import print_function
      3 from carbonui import uiconst
      4 from carbonui.primitives.container import Container
      5 from carbonui.primitives.frame import Frame
      6 from carbonui.primitives.sprite import Sprite
      7 from carbonui.uicore import uicore
      8 
      9 class TargetIconCont(Container):
     10     default_align = uiconst.CENTERLEFT
     11     default_width = 18
     12     default_height = 18
     13     default_iconSize = 18
     14     default_name = 'targetIconCont'
     15 
     16     def ApplyAttributes(self, attributes):
     17         Container.ApplyAttributes(self, attributes)
     18         self.iconSize = attributes.get('iconSize', self.default_iconSize)
     19         self.targetSprite = None
     20         self.targetingSprite = None
     21 
     22     def HandleTargetedChanges(self, newState):
     23         if newState == 0 and self.targetSprite:
     24             self.targetSprite.Close()
     25         elif newState == 1:
     26             self.SetTargetedIcon()
     27 
     28     def HandleTargetingChanges(self, newState):
     29         print('newState = ', newState)
     30         if newState == 0 and self.targetingSprite:
     31             self.targetingSprite.Close()
     32         elif newState == 1:
     33             self.StartTargeting()
     34 
     35     def SetTargetedIcon(self):
     36         if self.targetSprite is None or self.targetSprite.destroyed:
     37             self.targetSprite = Sprite(parent=self, name='targetSprite', pos=(0,
     38              0,
     39              self.iconSize,
     40              self.iconSize), align=uiconst.CENTERLEFT, texturePath='res:/UI/Texture/classes/Bracket/activeTarget.png')
     41         self.targetSprite.Show()
     42 
     43     def StartTargeting(self):
     44         if self.targetSprite:
     45             self.targetSprite.Hide()
     46         if self.targetingSprite is None or self.targetingSprite.destroyed:
     47             self.targetingSprite = Container(name='targeting', align=uiconst.CENTER, pos=(0, 0, 22, 22), parent=self)
     48             Frame(parent=self.targetingSprite, texturePath='res:/UI/Texture/classes/Bracket/targetFrame.png', opacity=0.75)
     49             for attrName in ('width', 'height'):
     50                 uicore.animations.MorphScalar(self.targetingSprite, attrName, startVal=22, endVal=12, duration=0.4, loops=uiconst.ANIM_REPEAT)