threat.py (1073B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\behaviors\utility\threat.py 2 import gametime 3 4 def get_damage_tracker(task): 5 return task.context.damageTracker 6 7 8 def get_damage_and_healing(task, target_id, sample_interval_seconds): 9 damage_tracker = get_damage_tracker(task) 10 return get_damage_and_healing_with_tracker(damage_tracker, target_id, sample_interval_seconds) 11 12 13 def get_damage_and_healing_with_tracker(damage_tracker, target_id, sample_interval_seconds = 10.0): 14 time_stamp = gametime.GetSimTimeAfterSeconds(-sample_interval_seconds) 15 damage = damage_tracker.GetDamageForShipSince(target_id, time_stamp, toNpcOnly=True) 16 healing = damage_tracker.GetHealingDoneByShipSince(target_id, time_stamp) 17 return damage + healing 18 19 20 def evaluate_target(damage_tacker, dogma_lm, target_id, sample_interval_seconds): 21 threat_value = get_damage_and_healing_with_tracker(damage_tacker, target_id, sample_interval_seconds) 22 if dogma_lm.IsShipAbandoned(target_id): 23 threat_value *= 0.1 24 return threat_value