insurgencySideSelector.py (2997B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\factionalWarfare\enlistmentFlow\insurgencySideSelector.py 2 from carbonui.uianimations import animations 3 from carbonui.primitives.transform import Transform 4 from carbonui.primitives.container import Container 5 from carbonui.primitives.sprite import Sprite 6 from eve.client.script.ui import eveColor 7 from eve.client.script.ui.shared.factionalWarfare.enlistmentFlow.enlistmentConst import BANNER_TEXTURE_BY_SIDE, ICON_TEXTURE_BY_SIDE, LABEL_PATH_BY_SIDE 8 from carbonui import const as uiconst 9 from carbonui.text.custom import TextCustom 10 from localization import GetByLabel 11 from carbonui.util.color import Color 12 IDLE_BRIGHTNESS = 0.5 13 14 class InsurgencySideSelector(Container): 15 default_align = uiconst.TOPLEFT 16 default_width = 166 17 default_height = 346 18 default_state = uiconst.UI_NORMAL 19 20 def ApplyAttributes(self, attributes): 21 super(InsurgencySideSelector, self).ApplyAttributes(attributes) 22 self.enlistmentController = attributes.enlistmentController 23 self.insurgencySideID = attributes.insurgencySideID 24 bgTexturePath = BANNER_TEXTURE_BY_SIDE.get(self.insurgencySideID, '') 25 iconTexturePath = ICON_TEXTURE_BY_SIDE.get(self.insurgencySideID, '') 26 labelPath = LABEL_PATH_BY_SIDE.get(self.insurgencySideID, '') 27 contentCont = Container(parent=self) 28 self.scalingCont = Transform(parent=self, align=uiconst.CENTERTOP, pos=(0, 0, 166, 346), scalingCenter=(0.5, 0.5)) 29 icon = Sprite(name='icon', parent=self.scalingCont, pos=(0, 40, 120, 120), align=uiconst.CENTERTOP, texturePath=iconTexturePath, state=uiconst.UI_DISABLED) 30 self.bgSprite = Sprite(name='bannerBg', parent=self.scalingCont, pos=(0, 0, 166, 346), align=uiconst.CENTERTOP, texturePath=bgTexturePath, state=uiconst.UI_DISABLED, color=Color(eveColor.WHITE).SetBrightness(IDLE_BRIGHTNESS).GetRGBA()) 31 self.insurgencySideLabel = TextCustom(name='insurgencySideLabel', parent=contentCont, align=uiconst.CENTERTOP, text=GetByLabel(labelPath), fontsize=18, top=icon.top + icon.height + 16) 32 33 def OnMouseEnter(self, *args): 34 if self.enlistmentController.isMovingCircle: 35 return 36 animations.MorphVector2(self.scalingCont, 'scale', self.scalingCont.scale, endVal=(1.1, 1.1), duration=0.2) 37 self.enlistmentController.on_insurgency_side_mouse_enter(self.insurgencySideID) 38 self.bgSprite.SetRGBA(*eveColor.WHITE) 39 40 def OnMouseExit(self, *args): 41 animations.MorphVector2(self.scalingCont, 'scale', self.scalingCont.scale, endVal=(1.0, 1.0), duration=0.2) 42 self.enlistmentController.on_insurgency_side_mouse_exit(self.insurgencySideID) 43 self.bgSprite.SetRGBA(*Color(eveColor.WHITE).SetBrightness(IDLE_BRIGHTNESS).GetRGBA()) 44 45 def OnClick(self, *args): 46 self.enlistmentController.SelectInsurgencySide(self.insurgencySideID) 47 self.enlistmentController.on_empire_pirates_clicked()