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

occupancyCalculator.py (951B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\entosis\occupancyCalculator.py
      2 MIN_OCCUPANCY_BONUS = 1.0
      3 MAX_OCCUPANCY_BONUS = 6.0
      4 MILITARY_INDEX_TO_BONUS = {1: 0.6,
      5  2: 1.2,
      6  3: 1.7,
      7  4: 2.1,
      8  5: 2.5}
      9 INDUSTRIAL_INDEX_TO_BONUS = {1: 0.6,
     10  2: 1.2,
     11  3: 1.7,
     12  4: 2.1,
     13  5: 2.5}
     14 STRATEGIC_INDEX_TO_BONUS = {1: 0.4,
     15  2: 0.6,
     16  3: 0.8,
     17  4: 0.9,
     18  5: 1.0}
     19 CAPITAL_BONUS = 2.0
     20 BASE_BONUS = 1.0
     21 
     22 def GetOccupancyMultiplier(militaryIndex, industrialIndex, strategicIndex, isCapital):
     23     militaryBonus = MILITARY_INDEX_TO_BONUS.get(militaryIndex, 0.0)
     24     industrialBonus = INDUSTRIAL_INDEX_TO_BONUS.get(industrialIndex, 0.0)
     25     strategicBonus = STRATEGIC_INDEX_TO_BONUS.get(strategicIndex, 0.0)
     26     capitalBonus = CAPITAL_BONUS if isCapital else 0.0
     27     totalBonus = BASE_BONUS + militaryBonus + industrialBonus + strategicBonus + capitalBonus
     28     return 1.0 / max(MIN_OCCUPANCY_BONUS, min(MAX_OCCUPANCY_BONUS, totalBonus))