roamingdriftertree.py (1489B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\behaviors\trees\incursions\roamingdriftertree.py 2 from behaviors import composites 3 from behaviors.actions import WaitAction 4 from behaviors.actions.combatnavigation import DEFAULT_COMBAT_ORBIT_RANGE, DEFAULT_COMBAT_ATTACK_RANGE 5 from behaviors.behaviortree import BehaviorTree 6 from behaviors.trees.combat import CreateTargetSwitchingBehavior, CreateEntityCombatBehavior 7 from behaviors.trees.drifters.superweapon import CreateSuperWeaponBehavior 8 from behaviors.trees.incursions.const import ROAMING_SITE_GROUP_IDS 9 from behaviors.trees.regroup import CreateReGroupBehavior 10 from behaviors.trees.explore import CreateExplorationBehavior 11 from brennivin.itertoolsext import Bundle 12 COMBAT_ORBIT_VELOCITY = 1500 13 14 def CreateRoamingDrifterBehaviorTree(): 15 root = composites.PrioritySelector(Bundle(name='Roaming Drifter Root')) 16 root.AddSubTask(CreateSuperWeaponBehavior()) 17 root.AddSubTask(CreateTargetSwitchingBehavior()) 18 root.AddSubTask(CreateEntityCombatBehavior(orbitVelocity=COMBAT_ORBIT_VELOCITY, orbitRange=DEFAULT_COMBAT_ORBIT_RANGE, attackRange=DEFAULT_COMBAT_ATTACK_RANGE)) 19 root.AddSubTask(CreateReGroupBehavior()) 20 root.AddSubTask(CreateExplorationBehavior(groupsOfInterest=ROAMING_SITE_GROUP_IDS, explorationIntervalSeconds=570)) 21 root.AddSubTask(WaitAction(Bundle(name='Do nothing'))) 22 behaviorTree = BehaviorTree() 23 behaviorTree.StartRootTask(root) 24 return behaviorTree