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

fittingWarningConst.py (9364B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\shipfitting\fittingWarningConst.py
      2 import dogma.const as dogmaConst
      3 import evetypes
      4 from inventorycommon import const as inventoryconst
      5 import eve.common.lib.appConst as appConst
      6 WARNING_PATH = 'res:/UI/Texture/classes/agency/iconExclamation.png'
      7 WARNING_LEVEL_LOW = 1
      8 WARNING_LEVEL_MEDIUM = 2
      9 WARNING_LEVEL_HIGH = 3
     10 WARNING_LEVEL_SKILL = 4
     11 WARNING_ORDER = [WARNING_LEVEL_HIGH,
     12  WARNING_LEVEL_SKILL,
     13  WARNING_LEVEL_MEDIUM,
     14  WARNING_LEVEL_LOW]
     15 YELLOW = (1.0, 0.78, 0.0, 1.0)
     16 RED = (0.8, 0, 0, 1)
     17 WHITE = (0.9, 0.9, 0.9, 1)
     18 ORANGE = (1.0, 0.5, 0.0, 1)
     19 DEFAULT_BADGE_COLOR = (0.5, 0.5, 0.5)
     20 colorByWarningLevel = {WARNING_LEVEL_LOW: WHITE,
     21  WARNING_LEVEL_MEDIUM: YELLOW,
     22  WARNING_LEVEL_HIGH: RED,
     23  WARNING_LEVEL_SKILL: ORANGE}
     24 headerByWarningLevel = {WARNING_LEVEL_LOW: 'UI/Fitting/FittingWindow/Warnings/HeaderLow',
     25  WARNING_LEVEL_MEDIUM: 'UI/Fitting/FittingWindow/Warnings/HeaderMedium',
     26  WARNING_LEVEL_HIGH: 'UI/Fitting/FittingWindow/Warnings/HeaderHigh',
     27  WARNING_LEVEL_SKILL: 'UI/Fitting/FittingWindow/Warnings/HeaderSkills'}
     28 WARNING_MISSING_SUBSYSTEMS = 1
     29 WARNING_MODULES_IN_INVALID_FLAGS = 2
     30 WARNING_ARMOR_TANKED_SHIELD_SHIP = 3
     31 WARNING_SHIELD_TANKED_ARMOR_SHIP = 4
     32 WARNING_WRONG_TANKING = 5
     33 WARNING_NOT_PROVIDING_BONUS = 6
     34 WARNING_MIXING_TURRET_GROUPS = 7
     35 WARNING_MIXING_LAUNCHER_GROUPS = 8
     36 WARNING_MIXING_TURRET_SIZES = 9
     37 WARNING_POLARIZED_WEAPONS = 10
     38 WARNING_DUAL_TANKED = 11
     39 WARNING_MULTI_TANKED = 12
     40 WARNING_OVER_CPU_POWER = 13
     41 WARNING_OVER_CPU = 14
     42 WARNING_OVER_POWERGRID = 15
     43 WARNING_OVERLOADED_CARGO = 16
     44 WARNING_OFFLINE_MODULES = 17
     45 WARNING_OVER_CALIBRATION = 18
     46 WARNING_MISSING_REQ_CHARGES = 19
     47 WARNING_MISSING_OPTIONAL_CHARGES = 20
     48 WARNING_STACKING_PENALTY_MED = 21
     49 WARNING_STACKING_PENALTY_LOW = 22
     50 WARNING_STACKING_PENALTY_TARGETED_LOW = 23
     51 WARNING_UNDERSIZED_PROP_MOD = 24
     52 WARNING_DISABLED_BUBBLE_IMMUNITY = 25
     53 WARNING_INEFFICIENT_PROP_MOD = 26
     54 warningsByWarningID = {WARNING_MISSING_SUBSYSTEMS: (WARNING_LEVEL_HIGH, 'UI/Fitting/FittingWindow/Warnings/SubsystemShort', 'UI/Fitting/FittingWindow/Warnings/SubsystemHint'),
     55  WARNING_OVER_CPU: (WARNING_LEVEL_HIGH, 'UI/Fitting/FittingWindow/Warnings/CpuOverloadedShort', 'UI/Fitting/FittingWindow/Warnings/CpuOverloadedHint'),
     56  WARNING_OVER_POWERGRID: (WARNING_LEVEL_HIGH, 'UI/Fitting/FittingWindow/Warnings/PowergridOverloadedShort', 'UI/Fitting/FittingWindow/Warnings/PowergridOverloadedHint'),
     57  WARNING_OVER_CPU_POWER: (WARNING_LEVEL_HIGH, 'UI/Fitting/FittingWindow/Warnings/CpuPowergridOverloadedShort', 'UI/Fitting/FittingWindow/Warnings/CpuPowergridOverloadedHint'),
     58  WARNING_OVER_CALIBRATION: (WARNING_LEVEL_HIGH, 'UI/Fitting/FittingWindow/Warnings/CalibrationOverloadedShort', 'UI/Fitting/FittingWindow/Warnings/CalibrationOverloadedHint'),
     59  WARNING_OVERLOADED_CARGO: (WARNING_LEVEL_HIGH, 'UI/Fitting/FittingWindow/Warnings/CargoOverloadedShort', 'UI/Fitting/FittingWindow/Warnings/CargoOverloadedHint'),
     60  WARNING_MODULES_IN_INVALID_FLAGS: (WARNING_LEVEL_HIGH, 'UI/Fitting/FittingWindow/Warnings/ModulesInInvalidSlotsShort', 'UI/Fitting/FittingWindow/Warnings/ModulesInInvalidSlotsHint'),
     61  WARNING_WRONG_TANKING: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/IncorrectTankingShort', 'UI/Fitting/FittingWindow/Warnings/IncorrectTankingHint'),
     62  WARNING_NOT_PROVIDING_BONUS: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/NotProvidingBonusShort', 'UI/Fitting/FittingWindow/Warnings/NotProvidingBonusHint'),
     63  WARNING_MIXING_TURRET_GROUPS: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/MixingTurretGroupsShort', 'UI/Fitting/FittingWindow/Warnings/MixingTurretGroupsHint'),
     64  WARNING_MIXING_LAUNCHER_GROUPS: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/MixingLauncherGroupsShort', 'UI/Fitting/FittingWindow/Warnings/MixingLauncherGroupsHint'),
     65  WARNING_MIXING_TURRET_SIZES: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/MixingTurretSizesShort', 'UI/Fitting/FittingWindow/Warnings/MixingTurretSizesHint'),
     66  WARNING_DUAL_TANKED: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/ShipIsDualTankedShort', 'UI/Fitting/FittingWindow/Warnings/ShipIsDualTankedHint'),
     67  WARNING_MULTI_TANKED: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/ShipIsMultiTankedShort', 'UI/Fitting/FittingWindow/Warnings/ShipIsMultiTankedHint'),
     68  WARNING_OFFLINE_MODULES: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/OfflineModulesShort', 'UI/Fitting/FittingWindow/Warnings/OfflineModulesHint'),
     69  WARNING_STACKING_PENALTY_MED: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/StackingPenaltyMedShort', 'UI/Fitting/FittingWindow/Warnings/StackingPenaltyMedHint'),
     70  WARNING_UNDERSIZED_PROP_MOD: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/UndersizedPropModShort', 'UI/Fitting/FittingWindow/Warnings/UndersizedPropModHint'),
     71  WARNING_DISABLED_BUBBLE_IMMUNITY: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/BubbleImmunityDisabledShort', 'UI/Fitting/FittingWindow/Warnings/BubbleImmunityDisabledHint'),
     72  WARNING_INEFFICIENT_PROP_MOD: (WARNING_LEVEL_MEDIUM, 'UI/Fitting/FittingWindow/Warnings/InefficientPropModShort', 'UI/Fitting/FittingWindow/Warnings/InefficientPropModHint'),
     73  WARNING_POLARIZED_WEAPONS: (WARNING_LEVEL_LOW, 'UI/Fitting/FittingWindow/Warnings/PolarizedWeaponsFittedShort', 'UI/Fitting/FittingWindow/Warnings/PolarizedWeaponsFittedHint'),
     74  WARNING_ARMOR_TANKED_SHIELD_SHIP: (WARNING_LEVEL_LOW, 'UI/Fitting/FittingWindow/Warnings/ArmorTankingShieldShipShort', 'UI/Fitting/FittingWindow/Warnings/ArmorTankingShieldShipHint'),
     75  WARNING_SHIELD_TANKED_ARMOR_SHIP: (WARNING_LEVEL_LOW, 'UI/Fitting/FittingWindow/Warnings/ShieldTankingArmorShipShort', 'UI/Fitting/FittingWindow/Warnings/ShieldTankingArmorShipHint'),
     76  WARNING_MISSING_REQ_CHARGES: (WARNING_LEVEL_LOW, 'UI/Fitting/FittingWindow/Warnings/MissingChargesForRequiredShort', 'UI/Fitting/FittingWindow/Warnings/MissingChargesForRequiredHint'),
     77  WARNING_MISSING_OPTIONAL_CHARGES: (WARNING_LEVEL_LOW, 'UI/Fitting/FittingWindow/Warnings/MissingChargesForOptionalShort', 'UI/Fitting/FittingWindow/Warnings/MissingChargesForOptionalHint'),
     78  WARNING_STACKING_PENALTY_LOW: (WARNING_LEVEL_LOW, 'UI/Fitting/FittingWindow/Warnings/StackingPenaltyLowShort', 'UI/Fitting/FittingWindow/Warnings/StackingPenaltyLowHint'),
     79  WARNING_STACKING_PENALTY_TARGETED_LOW: (WARNING_LEVEL_LOW, 'UI/Fitting/FittingWindow/Warnings/StackingPenaltyTargetedLowShort', 'UI/Fitting/FittingWindow/Warnings/StackingPenaltyTargetedLowHint')}
     80 iconPathsByTurretGroup = {inventoryconst.groupProjectileWeapon: 'res:/UI/Texture/Icons/12_64_9.png',
     81  inventoryconst.groupHybridWeapon: 'res:/UI/Texture/Icons/13_64_1.png',
     82  inventoryconst.groupEnergyWeapon: 'res:/UI/Texture/Icons/13_64_9.png',
     83  inventoryconst.groupPrecursorTurret: 'res:/UI/Texture/Icons/Modules/disintegratorCannonS.png'}
     84 iconPathForSizes = {1: 'res:/UI/Texture/classes/Fitting/Small.png',
     85  2: 'res:/UI/Texture/classes/Fitting/Medium.png',
     86  3: 'res:/UI/Texture/classes/Fitting/Large.png',
     87  4: 'res:/UI/Texture/classes/Fitting/XLarge.png'}
     88 INFO_BUBBLE_SHIELD = 20
     89 INFO_BUBBLE_ARMOR = 7
     90 INFO_BUBBLE_SHIELD_OR_ARMOR = 2046
     91 TANKED_FOR_SHILED = 1
     92 TANKED_FOR_ARMOR = 2
     93 DRONE_AND_FIGHTER_BAYS = [appConst.flagDroneBay, appConst.flagFighterBay] + appConst.fighterTubeFlags
     94 GROUPS_AFFECTING_MODULE_GROUPS = {inventoryconst.groupGyrostabilizer: (inventoryconst.groupProjectileWeapon,),
     95  inventoryconst.groupMagneticFieldStabilizer: (inventoryconst.groupHybridWeapon,),
     96  inventoryconst.groupHeatSink: (inventoryconst.groupEnergyWeapon,),
     97  inventoryconst.groupDroneDamageAmplifier: (inventoryconst.groupCombatDrone,
     98                                             inventoryconst.groupHybridDrone,
     99                                             inventoryconst.groupHeavyFighter,
    100                                             inventoryconst.groupLightFighter,
    101                                             inventoryconst.groupStructureLightFighter,
    102                                             inventoryconst.groupStructureHeavyFighter),
    103  inventoryconst.groupEntropicRadiationSink: (inventoryconst.groupPrecursorTurret,),
    104  inventoryconst.groupDroneLinkAugmentor: evetypes.GetGroupIDsByCategory(inventoryconst.categoryDrone),
    105  inventoryconst.groupDroneNavigationComputer: evetypes.GetGroupIDsByCategories((inventoryconst.categoryDrone, inventoryconst.categoryFighter))}
    106 TURRET_GROUPS = [inventoryconst.groupProjectileWeapon,
    107  inventoryconst.groupHybridWeapon,
    108  inventoryconst.groupEnergyWeapon,
    109  inventoryconst.groupPrecursorTurret]
    110 SUBSYSTEM_INFO_BY_SLOT = {appConst.flagSubSystemSlot0: (inventoryconst.groupEngineeringSubSystems, 'res:/UI/Texture/Icons/81_64_11.png'),
    111  appConst.flagSubSystemSlot1: (inventoryconst.groupDefensiveSubSystems, 'res:/UI/Texture/Icons/81_64_10.png'),
    112  appConst.flagSubSystemSlot2: (inventoryconst.groupOffensiveSubSystems, 'res:/UI/Texture/Icons/81_64_12.png'),
    113  appConst.flagSubSystemSlot3: (inventoryconst.groupPropulsionSubSystems, 'res:/UI/Texture/Icons/81_64_13.png')}
    114 HARD_CODED_GROUPIDS = {inventoryconst.typeCivilianGatlingAutocannon: inventoryconst.groupProjectileWeapon,
    115  inventoryconst.typeCivilianGatlingRailgun: inventoryconst.groupHybridWeapon,
    116  inventoryconst.typeCivilianLightElectronBlaster: inventoryconst.groupHybridWeapon,
    117  inventoryconst.typeCivilianGatlingPulseLaser: inventoryconst.groupEnergyWeapon}