Barotrauma Client
Loading...
Searching...
No Matches
Barotrauma.AIObjectiveLoadItems Class Reference
Inheritance diagram for Barotrauma.AIObjectiveLoadItems:
Barotrauma.AIObjectiveLoop< Item >

Public Types

enum  ItemCondition { Empty , Full }
 

Public Member Functions

 AIObjectiveLoadItems (Character character, AIObjectiveManager objectiveManager, Identifier option, ImmutableArray< Identifier > containerTags, Item targetContainer=null, float priorityModifier=1)
 
- Public Member Functions inherited from Barotrauma.AIObjectiveLoop< Item >
bool AddTarget (T target)
 
 AIObjectiveLoop (Character character, AIObjectiveManager objectiveManager, float priorityModifier, Identifier option=default)
 
override void Update (float deltaTime)
 
override void Reset ()
 

Static Public Member Functions

static bool IsValidTarget (Item item, Character character, ImmutableArray< Identifier >? targetContainerTags=null, ItemCondition? targetCondition=null)
 
static bool ItemMatchesTargetCondition (Item item, ItemCondition targetCondition)
 

Protected Member Functions

override bool IsValidTarget (Item target)
 
override IEnumerable< ItemGetList ()
 
override AIObjective ObjectiveConstructor (Item target)
 
override void OnObjectiveCompleted (AIObjective objective, Item target)
 
override float GetTargetPriority ()
 
- Protected Member Functions inherited from Barotrauma.AIObjectiveLoop< Item >
override void Act (float deltaTime)
 
override bool CheckObjectiveSpecific ()
 
override float GetPriority ()
 
void UpdateTargets ()
 
virtual void FindTargets ()
 
virtual void CreateObjectives ()
 
void OnObjectiveCompleted (AIObjective objective, T target)
 
IEnumerable< T > GetList ()
 List of all possible items of the specified type. Used for filtering the removed objectives.
 
float GetTargetPriority ()
 Returns a priority value based on the current targets (e.g. high prio when there's lots of severe fires or leaks). The priority of this objective is based on the target priority.
 
AIObjective ObjectiveConstructor (T target)
 
bool IsValidTarget (T target)
 

Properties

override Identifier Identifier = "load items".ToIdentifier() [get, set]
 
override float IgnoreListClearInterval [get]
 
override bool ResetWhenClearingIgnoreList [get]
 
- Properties inherited from Barotrauma.AIObjectiveLoop< Item >
HashSet< T > Targets [get]
 
Dictionary< T, AIObjectiveObjectives [get]
 
virtual float TargetUpdateTimeMultiplier [get]
 
virtual float IgnoreListClearInterval [get]
 By default, doesn't clear the list automatically.
 
HashSet< T > ReportedTargets [get]
 Contains targets that anyone in the same crew has reported about. Used for automatic the target has to be reported before it can be can be targeted, so characters don't magically know where e.g. enemies are. Ignored on orders: a bot explicitly ordered to repair leaks or fight intruders can find targets that haven't been reported.
 
override bool CanBeCompleted [get]
 
override bool AbandonWhenCannotCompleteSubObjectives [get]
 
override bool AllowSubObjectiveSorting [get]
 
override bool AllowWhileHandcuffed [get]
 
override bool AbandonIfDisallowed [get]
 
virtual bool InverseTargetPriority [get]
 Makes the priority inversely proportional to the value returned by GetTargetPriority. In other words, gives this objective a high priority when priority of the targets is low.
 
virtual bool ResetWhenClearingIgnoreList [get]
 
virtual bool ForceOrderPriority [get]
 
virtual int MaxTargets [get]
 

Additional Inherited Members

- Protected Attributes inherited from Barotrauma.AIObjectiveLoop< Item >
HashSet< T > ignoreList
 
float targetUpdateTimer
 

Member Enumeration Documentation

◆ ItemCondition

Enumerator
Empty 
Full 

Constructor & Destructor Documentation

◆ AIObjectiveLoadItems()

Barotrauma.AIObjectiveLoadItems.AIObjectiveLoadItems ( Character character,
AIObjectiveManager objectiveManager,
Identifier option,
ImmutableArray< Identifier > containerTags,
Item targetContainer = null,
float priorityModifier = 1 )

Member Function Documentation

◆ GetList()

override IEnumerable< Item > Barotrauma.AIObjectiveLoadItems.GetList ( )
protected

◆ GetTargetPriority()

override float Barotrauma.AIObjectiveLoadItems.GetTargetPriority ( )
protected

◆ IsValidTarget() [1/2]

static bool Barotrauma.AIObjectiveLoadItems.IsValidTarget ( Item item,
Character character,
ImmutableArray< Identifier >? targetContainerTags = null,
ItemCondition? targetCondition = null )
static

◆ IsValidTarget() [2/2]

override bool Barotrauma.AIObjectiveLoadItems.IsValidTarget ( Item target)
protected

◆ ItemMatchesTargetCondition()

static bool Barotrauma.AIObjectiveLoadItems.ItemMatchesTargetCondition ( Item item,
ItemCondition targetCondition )
static

◆ ObjectiveConstructor()

override AIObjective Barotrauma.AIObjectiveLoadItems.ObjectiveConstructor ( Item target)
protected

◆ OnObjectiveCompleted()

override void Barotrauma.AIObjectiveLoadItems.OnObjectiveCompleted ( AIObjective objective,
Item target )
protected

Property Documentation

◆ Identifier

override Identifier Barotrauma.AIObjectiveLoadItems.Identifier = "load items".ToIdentifier()
getset

◆ IgnoreListClearInterval

override float Barotrauma.AIObjectiveLoadItems.IgnoreListClearInterval
getprotected

◆ ResetWhenClearingIgnoreList

override bool Barotrauma.AIObjectiveLoadItems.ResetWhenClearingIgnoreList
getprotected

The documentation for this class was generated from the following file: