dungeondriftertree.py (1263B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\behaviors\trees\incursions\dungeondriftertree.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.guardobject import CreateGuardObjectEntityBehavior 8 from behaviors.trees.drifters.superweapon import CreateSuperWeaponBehavior 9 from brennivin.itertoolsext import Bundle 10 COMBAT_ORBIT_VELOCITY = 1500 11 12 def CreateDungeonDrifterBehaviorTree(): 13 root = composites.PrioritySelector(Bundle(name='Dungeon Drifter Root')) 14 root.AddSubTask(CreateSuperWeaponBehavior()) 15 root.AddSubTask(CreateTargetSwitchingBehavior()) 16 root.AddSubTask(CreateEntityCombatBehavior(orbitVelocity=COMBAT_ORBIT_VELOCITY, orbitRange=DEFAULT_COMBAT_ORBIT_RANGE, attackRange=DEFAULT_COMBAT_ATTACK_RANGE)) 17 root.AddSubTask(CreateGuardObjectEntityBehavior()) 18 root.AddSubTask(WaitAction(Bundle(name='Do nothing'))) 19 behaviorTree = BehaviorTree() 20 behaviorTree.StartRootTask(root) 21 return behaviorTree