conditions.py (12189B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\behaviors\registry\conditions.py 2 from behaviors.registry.registrator import register_condition 3 from fsd import attributes 4 register_condition('behaviors.conditions.awareness.AreClusterTargetsUsable', dict(clusterTargetSetAddress=attributes.BlackboardAddressAttribute(index=0), guardObjectIdAddress=attributes.BlackboardAddressAttribute(index=1))) 5 register_condition('behaviors.conditions.ballparks.IsCoordinateInSameBubbleCondition', dict(coordinateAddress=attributes.BlackboardAddressAttribute())) 6 register_condition('behaviors.conditions.ballparks.IsCoordinateWithinDistance', dict(coordinateAddress=attributes.BlackboardAddressAttribute(), maxDistance=attributes.FloatAttribute())) 7 register_condition('behaviors.conditions.ballparks.IsCoordinateWithinDistanceByAddress', dict(coordinateAddress=attributes.BlackboardAddressAttribute(), maxDistanceAddress=attributes.BlackboardAddressAttribute(), fudgeDistanceAddress=attributes.BlackboardAddressAttribute(is_optional=True))) 8 register_condition('behaviors.conditions.ballparks.IsBallPresentInMyBubbleCondition', dict(ballIdAddress=attributes.BlackboardAddressAttribute())) 9 register_condition('behaviors.conditions.ballparks.IsBallPresentInBubbleByAddress', dict(ballIdAddress=attributes.BlackboardAddressAttribute(), bubbleIdAddress=attributes.BlackboardAddressAttribute())) 10 register_condition('behaviors.conditions.ballparks.IsBallWithInDistanceCondition', dict(ballIdAddress=attributes.BlackboardAddressAttribute(), maxDistance=attributes.FloatAttribute())) 11 register_condition('behaviors.conditions.ballparks.IsBallWithinDistanceOfBallCondition', dict(ballIdAddress=attributes.BlackboardAddressAttribute(), sourceBallIdAddress=attributes.BlackboardAddressAttribute(), maxDistance=attributes.FloatAttribute())) 12 register_condition('behaviors.conditions.ballparks.IsOrbitingTargetCondition', dict(targetAddress=attributes.BlackboardAddressAttribute())) 13 register_condition('behaviors.conditions.ballparks.IsBallCloakedCondition', dict(ballIdAddress=attributes.BlackboardAddressAttribute())) 14 register_condition('behaviors.conditions.ballparks.IsBallInWarpCondition', dict(ballIdAddress=attributes.BlackboardAddressAttribute())) 15 register_condition('behaviors.conditions.ballparks.IsLocationWithinWarpDistance', dict(coordinateAddress=attributes.BlackboardAddressAttribute())) 16 register_condition('behaviors.conditions.ballparks.IsBallWithinWarpDistance', dict(ballIdAddress=attributes.BlackboardAddressAttribute())) 17 register_condition('behaviors.conditions.ballparks.HasValidBallTarget', dict(ballIdAddress=attributes.BlackboardAddressAttribute())) 18 register_condition('behaviors.conditions.ballparks.AreItemsWithInDistanceCondition', dict(itemIdAddress=attributes.BlackboardAddressAttribute(), otherItemIdAddress=attributes.BlackboardAddressAttribute(is_optional=True), maxDistanceAddress=attributes.BlackboardAddressAttribute(), maxDistanceMultiplier=attributes.FloatAttribute(is_optional=True))) 19 register_condition('behaviors.conditions.ballparks.IsPathToCoordinatesClearOfBubbles', dict(coordinateAddress=attributes.BlackboardAddressAttribute())) 20 register_condition('behaviors.conditions.battlefield.IsFleetTypeEqualTo', dict(fleetType=attributes.FleetTypeAttribute(index=0), fleetTypeToCounterAddress=attributes.BlackboardAddressAttribute(index=1))) 21 register_condition('behaviors.conditions.battlefield.IsAnyFleetMemberMemberAggressed', dict(spawnPoolIdAddress=attributes.BlackboardAddressAttribute(index=0))) 22 register_condition('behaviors.conditions.battlefield.IsPlayerFleetRelativeStrengthToHigh', dict(playerItemIdsAddress=attributes.BlackboardAddressAttribute(index=0), relativeStrengthThreshold=attributes.FloatAttribute(default=1.0, index=1))) 23 register_condition('behaviors.conditions.blackboards.IsBlackboardValueNone', dict(valueAddress=attributes.BlackboardAddressAttribute())) 24 register_condition('behaviors.conditions.blackboards.IsBlackboardValueNotNone', dict(valueAddress=attributes.BlackboardAddressAttribute())) 25 register_condition('behaviors.conditions.blackboards.IsBlackboardValueTrue', dict(valueAddress=attributes.BlackboardAddressAttribute())) 26 register_condition('behaviors.conditions.blackboards.IsBlackboardStringEqualToValue', attributes=dict(valueAddress=attributes.BlackboardAddressAttribute(index=0), expectedValue=attributes.StringAttribute(index=1)), short_description='Succeed if a blackboard value equals expected string', detailed_description='Compares a value from blackboard identified by valueAddress to the string in expectedValue. Condition succeeds if they are the same or fails otherwise.') 27 register_condition('behaviors.conditions.blackboards.IsBlackboardValueFalse', dict(valueAddress=attributes.BlackboardAddressAttribute())) 28 register_condition('behaviors.conditions.blackboards.BlackboardMessagesEqualCondition', dict(firstMessageAddress=attributes.BlackboardAddressAttribute(), secondMessageAddress=attributes.BlackboardAddressAttribute())) 29 register_condition('behaviors.conditions.blackboards.IsBlackboardCollectionEmpty', dict(collectionAddress=attributes.BlackboardAddressAttribute())) 30 register_condition('behaviors.conditions.blackboards.BlackboardValueUpdatedRecentlyCondition', dict(address=attributes.BlackboardAddressAttribute(), timeInSeconds=attributes.IntegerAttribute())) 31 register_condition('behaviors.conditions.blackboards.IsBlackboardValueInCollectionCondition', dict(valueAddress=attributes.BlackboardAddressAttribute(), collectionAddress=attributes.BlackboardAddressAttribute())) 32 register_condition('behaviors.conditions.blackboards.BlackboardMessageAndMyItemIdEqualCondition', dict(messageAddress=attributes.BlackboardAddressAttribute(), isInverted=attributes.BooleanAttribute(is_optional=True))) 33 register_condition('behaviors.conditions.blackboards.BlackboardMessageAndMyEntityGroupIdEqualCondition', dict(messageAddress=attributes.BlackboardAddressAttribute(), isInverted=attributes.BooleanAttribute(is_optional=True))) 34 register_condition('behaviors.conditions.blackboards.IsBlackboardValue3dVector', dict(valueAddress=attributes.BlackboardAddressAttribute())) 35 register_condition('behaviors.conditions.blackboards.IsBlackboardIntegerEqualToValue', dict(valueAddress=attributes.BlackboardAddressAttribute(), value=attributes.IntegerAttribute())) 36 register_condition('behaviors.conditions.blackboards.IsBlackboardValueRatioLessThan', dict(firstValueAddress=attributes.BlackboardAddressAttribute(), secondValueAddress=attributes.BlackboardAddressAttribute(), ratioAddress=attributes.BlackboardAddressAttribute())) 37 register_condition('behaviors.conditions.blackboards.BlackboardValueEqualsBlackboardValueInDictionaryCondition', dict(valueAddress=attributes.BlackboardAddressAttribute(), keyAddress=attributes.BlackboardAddressAttribute(), dictionaryAddress=attributes.BlackboardAddressAttribute())) 38 register_condition('behaviors.conditions.blackboards.IsBlackboardValueLessThenBlackboardValue', dict(valueToCheckAddress=attributes.BlackboardAddressAttribute(index=0), valueToCompareAddress=attributes.BlackboardAddressAttribute(index=1))) 39 register_condition('behaviors.conditions.blackboards.IsBlackboardDeleted', dict(scopeType=attributes.BlackboardScopeTypeAttribute(index=0, description='The blackboard scope type to query')), short_description='Check if the blackboard has been deleted', detailed_description="This will check if the blackboard matching the scope type and the behavior context has been deleted. This is relevant for instance if an entity can out live the scope. For example if an NPC can survive the deletion of a dungeon it's part of.") 40 register_condition('behaviors.conditions.combat.HasValidTarget', dict(selectedTargetAddress=attributes.BlackboardAddressAttribute())) 41 register_condition('behaviors.conditions.combat.HasAvailableTargetCapacity') 42 register_condition('behaviors.conditions.combat.HasItemsFromCollectionWithinRange', dict(itemIdCollectionAddress=attributes.BlackboardAddressAttribute(), detectionRangeAddress=attributes.BlackboardAddressAttribute(), includeCloakedItems=attributes.BooleanAttribute())) 43 register_condition('behaviors.conditions.combatmodules.IsModuleActive', dict(moduleAddress=attributes.BlackboardAddressAttribute())) 44 register_condition('behaviors.conditions.combattargets.HasPendingTarget', dict(targetAddress=attributes.BlackboardAddressAttribute())) 45 register_condition('behaviors.conditions.combattargets.AmIWithinMyEffectiveCombatRangeOfMyTarget', dict(targetAddress=attributes.BlackboardAddressAttribute(index=0), orbitTargetAddress=attributes.BlackboardAddressAttribute(index=1), maxEffectiveCombatRangeAddress=attributes.BlackboardAddressAttribute(index=2), commanderAddress=attributes.BlackboardAddressAttribute(index=3))) 46 register_condition('behaviors.conditions.combattargets.IsCoordinateWithinMyEffectiveCombatRange', dict(coordinateAddress=attributes.BlackboardAddressAttribute(index=0), maxEffectiveCombatRangeAddress=attributes.BlackboardAddressAttribute(index=1))) 47 register_condition('behaviors.conditions.combattargets.IsTargeting', dict(targetAddress=attributes.BlackboardAddressAttribute())) 48 register_condition('behaviors.conditions.drones.CanControlDrones') 49 register_condition('behaviors.conditions.drones.HasDroneBandwidth', dict(droneGroupIdAddress=attributes.BlackboardAddressAttribute(index=1), maxDroneActiveCountAddress=attributes.BlackboardAddressAttribute(index=2))) 50 register_condition('behaviors.conditions.dungeons.DungeonIsMyDungeonSpawnAlive') 51 register_condition('behaviors.conditions.effects.IsEffectActive', dict(effectId=attributes.DogmaEffectIdAttribute())) 52 register_condition('behaviors.conditions.effects.IsEffectByAddressActive', dict(effectIDAddress=attributes.BlackboardAddressAttribute())) 53 register_condition('behaviors.conditions.effects.IsAnyEffectActive', dict(effectIds=attributes.DogmaEffectIdSetAttribute())) 54 register_condition('behaviors.conditions.effects.HasAnyEffectCondition', dict(effectIds=attributes.DogmaEffectIdSetAttribute())) 55 register_condition('behaviors.conditions.entities.HasAnyOfTypesInEntityAdditionalLoot', dict(typeIds=attributes.InventoryTypeSetAttribute())) 56 register_condition('behaviors.conditions.entities.HasEnoughCargoForType', dict(typeIdAddress=attributes.BlackboardAddressAttribute())) 57 register_condition('behaviors.conditions.entities.IsCargoAboveCapacityThreshold', dict(cargoCapacityThreshold=attributes.FloatAttribute())) 58 register_condition('behaviors.conditions.entities.OwnerIsNpcCondition', dict(ownerIdAddress=attributes.BlackboardAddressAttribute())) 59 register_condition('behaviors.conditions.entities.AmITheCommander') 60 register_condition('behaviors.conditions.entities.IsMyCargoFull') 61 register_condition('behaviors.conditions.entities.IsMyCargoEmpty') 62 register_condition('behaviors.conditions.entityspawning.HasSpawnPointsGreaterThan', dict(spawnPoolIdAddress=attributes.BlackboardAddressAttribute(index=0), minSpawnPointAmount=attributes.IntegerAttribute(index=1))) 63 register_condition('behaviors.conditions.group.IsMemberInEntityGroup', dict(memberIdAddress=attributes.BlackboardAddressAttribute())) 64 register_condition('behaviors.conditions.group.IsMemberTypeIdPartOfGroup', dict(typeId=attributes.InventoryTypeAttribute())) 65 register_condition('behaviors.conditions.group.IsOtherEntityGroupBlackboardValueTrue', dict(memberIdAddress=attributes.BlackboardAddressAttribute(), messageName=attributes.StringAttribute())) 66 register_condition('behaviors.conditions.group.IsAnyGroupMemberAggressed') 67 register_condition('behaviors.conditions.group.IsGroupInitialSpawningComplete') 68 register_condition('behaviors.conditions.randomized.RandomChanceCondition', dict(chance=attributes.FloatAttribute())) 69 register_condition('behaviors.conditions.randomized.CachedRandomChanceCondition', dict(chance=attributes.FloatAttribute(), randomValueAddress=attributes.BlackboardAddressAttribute(), cacheTimeInSeconds=attributes.IntegerAttribute())) 70 register_condition('behaviors.conditions.reinforcements.AreAnyReinforcementMembersAlive') 71 register_condition('behaviors.conditions.structures.IsStructureVulnerable', dict(structureIdAddress=attributes.BlackboardAddressAttribute()))